如何在Java Web应用上集成Azure AD

  1. 前后端分离项目的AAD 认证流程如下:

流程图

  1. 准备Azure AD服务的账号及密码

2.1 在Azure(https://portal.azure.com/)上注册应用,从Azure portal上获取client-id和tenant-id

2.2 配置回调地址

注意:本地的回调地址(即localhost)可以为http,其它的必须为https

2.3 设置API权限,让Azure返回登陆用户的email 地址


2.4 创建client-secret


  1. 实现步骤

3.1 前端页面增加登录按钮,点击按钮跳转到以下地址:

https://login.microsoftonline.com/${tenant-id}/oauth2/v2.0/authorize?response_type=code&client_id=${client-id}&redirect_uri=${redirect-uri}&scope=user.read


3.2 Azure跳转到3.1中配置的回调地址${redirect-uri},并带上一个返回值code

${redirect_uri}?code=0.xxxxyyyyyyyzzzz...

3.3 前端获取上一步返回的code,以POST方式调用本应用的API - http://localhost/login/oauth2/code

3.4 后端收到请求后,以POST方式调用Azure的API - https://login.microsoftonline.com/${tenant-id}/oauth2/v2.0/token以获取access_token

3.5 后端收到access_token后,以GET方式调用API - https://graph.microsoft.com/v1.0/me 获取用户信息

3.6 得到email地址后,根据email地址查询数据库,获取用户信息,根据逻辑生成token,返回给前端

3.7 登录成功


完。

展开阅读全文

页面更新:2024-05-21

标签:流程图   用户信息   账号   按钮   逻辑   步骤   流程   权限   地址   方式

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top