全部产品
Search
文档中心

云SSO:Azure AD与云SSO进行单点登录的示例

更新时间:Dec 06, 2023

本文为您提供Azure AD(Azure Active Directory)与云SSO进行单点登录(SSO登录)的示例。

背景信息

假设企业在本地IdP Azure AD中有大量用户,且已在阿里云资源目录(RD)中搭建了多账号体系结构。企业希望经过配置,使Azure AD的用户通过SSO登录的方式直接访问资源目录指定成员账号中的指定资源。

Azure AD中的所有配置操作需要拥有全局管理员权限的管理员用户执行。关于如何在Azure AD中创建用户及授权为管理员的操作,请参见Azure AD文档

准备工作

配置SSO登录前,您需要完成以下工作:

  1. 从Azure AD同步用户到云SSO,或者在云SSO创建同名用户。

    • 从Azure AD同步用户到云SSO(推荐):适用于Azure AD中拥有大量用户的情况。具体操作,请参见通过SCIM同步Azure AD用户或用户组的示例

    • 在云SSO创建同名用户:适用于Azure AD中仅有少量用户的情况。具体操作,请参见创建用户

      说明

      用户名会用于用户登录。当您进行SSO单点登录时,云SSO的用户名应该与Azure AD中用于单点登录的字段保持一致。更多信息,请参见步骤三:在Azure AD中配置SAML

  2. 在云SSO创建访问配置,定义权限策略。

    具体操作,请参见创建访问配置

  3. 为用户在RD账号上授权。

    具体操作,请参见在RD账号上授权

步骤一:在云SSO获取服务提供商元数据

  1. 登录云SSO控制台

  2. 在左侧导航栏,单击设置

  3. SSO登录区域,下载服务提供商(SP)元数据文档。

(可选)步骤二:在Azure AD中创建应用程序

说明

如果您已完成了SCIM同步配置,则请跳过该步,直接使用SCIM同步时使用的应用程序。

  1. 管理员用户登录Azure门户

  2. 在主页左上角,单击SSO_AAD_icon图标。

  3. 在左侧导航栏,选择Azure Active Directory > 企业应用程序 > 所有应用程序

  4. 单击新建应用程序

  5. 浏览Azure AD库页面,单击创建你自己的应用程序

  6. 创建你自己的应用程序页面,输入应用程序名称(例如:CloudSSODemo),并选择集成未在库中找到的任何其他应用程序(非库),然后单击创建

步骤三:在Azure AD中配置SAML

  1. CloudSSODemo页面,单击左侧导航栏的单一登录

  2. 选择单一登录方法页面,单击SAML

  3. 设置SAML单一登录页面进行以下配置。

    1. 在页面左上角,单击上载元数据文件,然后选择从步骤一获取的SP元数据文档,最后单击添加

    2. 基本SAML配置页面,配置以下信息,然后单击保存

      • 标识符(实体 ID):必填项,SP元数据文档导入后,该值会自动读取。

        说明

        如无法自动读取,请从云SSO的SSO登录配置页面复制Entity ID的取值。

      • 回复 URL(断言使用者服务 URL):必填项,SP元数据文档导入后,该值会自动读取。

        说明

        如无法自动读取,请从云SSO的SSO登录配置页面复制ACS URL的取值。

      • 中继状态:可选项,用来配置SSO登录成功后跳转到的阿里云页面。如果不配置,默认跳转到云SSO用户门户。

        说明

        出于安全原因,您只能输入*.alibabacloudsso.com域名的URL,否则配置无效。

    3. 用户属性和声明区域,单击编辑,将唯一用户标识符(名称 ID)的值设置为user.userprincipalname或其他能够唯一标识用户的字段。

      说明
      • 您可以设置任意能够唯一标识用户的字段作为SAML断言中NameID的值,常见的有user.userprincipalnameuser.mail等。由于云SSO需要传入的NameID值要与云SSO的用户名一致,因此您应该在云SSO中根据该字段值创建用户,以确保SSO登录能够成功。

      • 如果您同时配置了SCIM同步,您需要使用同一个字段(例如:user.userprincipalname)配置SCIM的userName属性。

    4. SAML签名证书区域,单击下载,获取联合元数据XML

(可选)步骤四:在Azure AD分配用户

说明

如果您已完成了SCIM同步配置,则请跳过该步。

  1. 在Azure AD主页左上角,单击SSO_AAD_icon图标。

  2. 在左侧导航栏,选择Azure Active Directory > 企业应用程序 > 所有应用程序

  3. 名称列,单击CloudSSODemo

  4. 在左侧导航栏,单击用户和组

  5. 单击左上角的添加用户/组

  6. 选择用户。

  7. 单击分配

步骤五:在云SSO启用SSO登录

  1. 在云SSO的左侧导航栏,单击设置

  2. SSO登录区域,单击配置身份提供商信息

  3. 配置身份提供商信息对话框,选择上传元数据文档

  4. 单击上传文件,上传从步骤三获取的IdP元数据文档。

  5. 打开SSO登录开关,启用SSO登录。

    说明

    启用SSO登录后,用户名和密码登录将自动禁用,即云SSO用户将不能通过用户名和密码登录。而且,SSO登录是一个全局功能,启用后,所有用户都需要SSO登录。

验证结果

完成SSO登录配置后,您可以从阿里云或Azure AD发起SSO登录。

  • 从阿里云发起SSO登录

    1. 云SSO控制台概览页,复制用户登录地址。

    2. 使用新的浏览器打开复制的用户登录地址。

    3. 单击跳转,系统会自动跳转到Azure AD的登录页面。云SSO登录跳转

    4. 使用Azure AD用户名和密码登录。

      系统将自动SSO登录并重定向到您指定的中继状态页面。如果未指定中继状态或超出允许范围,则系统会访问下图所示的云SSO用户门户。

    5. 以RAM角色登录页签,单击目标RD账号权限列的显示详情

      RD账号列表

    6. 在权限面板,单击目标权限操作列的登录

    7. 访问RD账号中有权限的资源。

  • 从Azure AD发起SSO登录

    1. 获取用户访问URL

      1. 管理员用户登录Azure门户

      2. 单击主页的SSO_AAD_icon图标。

      3. 在左侧导航栏,选择Azure Active Directory > 企业应用程序 > 所有应用程序

      4. 单击应用程序CloudSSODemo

      5. 在左侧导航栏,单击属性,获取用户访问URL

        用户访问URL是用户直接从其浏览器访问此应用程序的链接。

    2. 用户从管理员处获取上述用户访问URL,然后在浏览器中输入该URL,使用自己的用户名和密码登录。

      系统将自动SSO登录并重定向到您指定的中继状态页面。如果未指定中继状态或超出允许范围,则系统会访问云SSO用户门户。

    3. 以RAM角色登录页签,单击目标RD账号权限列的显示详情

      RD账号列表

    4. 在权限面板,单击目标权限操作列的登录

    5. 访问RD账号中有权限的资源。

相关文档