使用Azure AD进行用户SSO的示例

本文提供一个以Azure AD(Azure Active Directory)与阿里云进行用户SSO的示例,帮助您理解企业IdP与阿里云进行SSO的端到端配置流程。

背景信息

在本示例中,企业拥有一个阿里云账号和一个Azure AD租户。在Azure AD租户中,您有一个管理员用户(已授予全局管理员权限)和一个企业员工用户(u2)。您希望经过配置,使企业员工用户(u2)在登录Azure AD后,通过用户SSO访问阿里云。

您需要通过管理员用户(已授予全局管理员权限)执行本示例Azure AD中的操作。关于如何在Azure AD中创建用户和为用户授权,请参见Azure AD文档

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

  1. 使用阿里云账号登录RAM控制台

  2. 在左侧导航栏,选择集成管理 > SSO管理

  3. SSO管理页面,单击用户SSO页签。

  4. SSO登录设置区域,复制SAML服务提供商元数据URL

  5. 在新的浏览器窗口中打开复制的链接,将元数据XML文件另存到本地。

    说明

    元数据XML文件保存了阿里云作为一个SAML服务提供商的访问信息。您需要记录该文件中的entityIDLocation的值,以便后续在Azure AD的配置中使用。

步骤二:在Azure AD中创建应用

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

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

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

  4. 单击新建应用程序

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

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

步骤三:在Azure AD中配置SAML

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

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

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

    1. 在页面左上角,单击上载元数据文件,选择文件后,单击添加

      说明

      此处上传步骤一:在阿里云获取SAML服务提供商元数据中获取的XML文件。

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

      • 标识符(实体 ID):从上一步的元数据文件中自动读取entityID的值。

      • 回复 URL(断言使用者服务 URL):从上一步的元数据文件中自动读取Location的值。

      • 中继状态:用来配置用户SSO登录成功后跳转到的阿里云页面。

        说明

        出于安全原因,您只能填写阿里巴巴旗下的域名URL作为中继状态的值,例如:*.aliyun.com、*.hichina.com、*.yunos.com、*.taobao.com、*.tmall.com、*.alibabacloud.com、*.alipay.com,否则配置无效。若不配置,默认跳转到阿里云控制台首页。

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

步骤四:在Azure AD分配用户

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

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

  3. 名称列,单击AliyunSSODemo

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

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

  6. 单击用户,从用户列表中选择用户(u2),然后单击选择

  7. 单击分配

步骤五:在阿里云创建RAM用户

  1. 在RAM控制台的左侧导航栏,选择身份管理 > 用户

  2. 用户页面,单击创建用户

  3. 创建用户页面的用户账号信息区域,输入登录名称显示名称

    请确保RAM用户登录名称前缀与Azure AD中的用户名前缀保持一致。本示例中为u2。

  4. 访问方式区域,选择访问方式。

  5. 单击确定

步骤六:在阿里云开启用户SSO

  1. 在RAM控制台的左侧导航栏,选择集成管理 > SSO管理

  2. SSO管理页面,单击用户SSO页签。

  3. SSO登录设置区域,单击编辑

  4. 编辑SSO登录设置面板的SSO功能状态区域,单击开启

    说明

    用户SSO是一个全局功能,开启后,所有通过控制台登录的RAM用户都需要使用SSO登录。如果您是通过RAM用户配置的,请先保留为关闭状态,您需要先完成RAM用户的创建,以免配置错误导致自己无法登录。您也可以通过阿里云账号进行配置来规避此问题。

  5. 元数据文档区域,单击上传文件,上传从步骤三:在Azure AD中配置SAML中获取的XML文件。

  6. 辅助域名区域,单击开启,并配置辅助域名为Azure AD中的用户名Email后缀。

    例如:本示例中Azure AD用户(u2)的完整用户名为u2@test.onmicrosoft.com,则此处填写test.onmicrosoft.com。

  7. 单击确定

验证结果

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

  • 从阿里云侧发起登录

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

    2. 将鼠标悬停在右上角头像的位置,单击退出登录或使用新的浏览器打开复制的RAM用户登录地址。

    3. 单击使用企业账号登录,系统会自动跳转到Azure AD的登录页面。企业账户登录

    4. 使用用户(u2)的用户名和密码登录。

      系统将自动SSO登录并重定向到您指定的中继状态页面。如果未指定中继状态或超出允许范围,则系统会访问以下阿里云控制台首页。

      用户SSO配置验证
  • 从Azure AD侧发起登录

    1. 获取用户访问URL

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

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

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

      4. 单击应用程序AliyunSSODemo

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

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

        用户访问URL
    2. 用户(u2)从管理员用户处获取上述用户访问URL在浏览器中输入该URL,使用自己的账号登录。

      系统将自动SSO登录并重定向到您指定的中继状态页面。如果未指定中继状态或超出允许范围,则系统会访问以下阿里云控制台首页。

      用户SSO配置验证