Java接入Microsoft Azure AD实现SSO登录

概述

应用程序通过单点登录解决账号创建问题

什么是SSO

SSO(SingleSign-On,单点登录)通过在IDP(身份验证提供商)登录成功后,就可以访问IDP关联的应用程序以及相关权限

为了解决以下问题:

  1. 用户使用多个应用程序时,需要创建多个账号

    1. 如果用户在所有平台创建的账号密码一致,可能会导致账号密码泄露,非法用户会窃取用户的财产

  2. 提高用户的体验感,降低创建账号的繁琐程序

什么是Azure AD

Azure Active Directory(Azure AD)是微软提供的一项云身份和访问管理服务,也就是IDP(身份验证提供商)

如何接入Azure AD

分为两部:

  1. 应用接入

  2. 代码接入

应用接入

注册应用

Java接入Microsoft Azure AD实现SSO登录_第1张图片

添加密钥

Java接入Microsoft Azure AD实现SSO登录_第2张图片

添加重定向的URL

Java接入Microsoft Azure AD实现SSO登录_第3张图片

注:

  1. 微软只会重定向配置好了的URL,防止黑客通过链接形式窃取用户信息

  2. 此处添加的回调地址必须为https的地址

添加可以暴露的用户信息

Java接入Microsoft Azure AD实现SSO登录_第4张图片


业务流程设计图


Java接入Microsoft Azure AD实现SSO登录_第5张图片

业务代码


相关文档

以下是接入 Azure AD 的官方文档:

  1. [Azure Active Directory 文档中心](https://docs.microsoft.com/zh-cn/azure/active-directory/)

  2. [使用 Azure 门户管理 Azure AD](https://docs.microsoft.com/zh-cn/azure/active-directory/fundamentals/active-directory-manage-portal)

  3. [使用 Azure AD 连接器将本地目录同步到 Azure AD](https://docs.microsoft.com/zh-cn/azure/active-directory/hybrid/whatis-connect)

  4. [如何配置应用程序以使用 Azure AD 进行身份验证](https://docs.microsoft.com/zh-cn/azure/active-directory/develop/tutorial-v2-vs-code-webapp)

  5. [使用 OAuth 2.0 和 OpenID Connect 登录到应用程序](https://docs.microsoft.com/zh-cn/azure/active-directory/develop/v2-overview)

  6. [Azure AD 应用程序模型概述](https://docs.microsoft.com/zh-cn/azure/active-directory/develop/app-objects-and-service-principals-overview)

  7. [Azure AD 条件访问概述](https://docs.microsoft.com/zh-cn/azure/active-directory/conditional-access/overview)

以上文档提供了详细的接入 Azure AD 的指导,包括如何创建和管理 Azure AD、如何将本地目录同步到 Azure AD、如何配置应用程序以使用 Azure AD 进行身份验证、如何使用 OAuth 2.0 和 OpenID Connect 登录应用程序等。同时,还介绍了 Azure AD 应用程序模型和条件访问等相关概念,并提供了详细的代码示例和演示视频。


其他说明

主战文章:https://wulang.vip/archives/javajie-ru-microsoft-azure-adshi-xian-ssodeng-lu

你可能感兴趣的:(java)