本文为您提供Azure AD(Azure Active Directory)与云SSO进行单点登录(SSO登录)的示例。
背景信息
假设企业在本地IdP Azure AD中有大量用户,且已在阿里云资源目录(RD)中搭建了多账号体系结构。企业希望经过配置,使Azure AD的用户通过SSO登录的方式直接访问资源目录指定成员账号中的指定资源。
Azure AD中的所有配置操作需要拥有全局管理员权限的管理员用户执行。关于如何在Azure AD中创建用户及授权为管理员的操作,请参见Azure AD文档。
准备工作
配置SSO登录前,您需要完成以下工作:
从Azure AD同步用户到云SSO,或者在云SSO创建同名用户。
从Azure AD同步用户到云SSO(推荐):适用于Azure AD中拥有大量用户的情况。具体操作,请参见通过SCIM同步Azure AD用户或用户组的示例。
在云SSO创建同名用户:适用于Azure AD中仅有少量用户的情况。具体操作,请参见创建用户。
说明用户名会用于用户登录。当您进行SSO单点登录时,云SSO的用户名应该与Azure AD中用于单点登录的字段保持一致。更多信息,请参见步骤三:在Azure AD中配置SAML。
在云SSO创建访问配置,定义权限策略。
具体操作,请参见创建访问配置。
为用户在RD账号上授权。
具体操作,请参见在RD账号上授权。
步骤一:在云SSO获取服务提供商元数据
登录云SSO控制台。
在左侧导航栏,单击设置。
在SSO登录区域,下载服务提供商(SP)元数据文档。
(可选)步骤二:在Azure AD中创建应用程序
如果您已完成了SCIM同步配置,则请跳过该步,直接使用SCIM同步时使用的应用程序。
管理员用户登录Azure门户。
在主页左上角,单击图标。
在左侧导航栏,选择 。
单击新建应用程序。
在浏览Azure AD库页面,单击创建你自己的应用程序。
在创建你自己的应用程序页面,输入应用程序名称(例如:CloudSSODemo),并选择集成未在库中找到的任何其他应用程序(非库),然后单击创建。
步骤三:在Azure AD中配置SAML
在CloudSSODemo页面,单击左侧导航栏的单一登录。
在选择单一登录方法页面,单击SAML。
在设置SAML单一登录页面进行以下配置。
在页面左上角,单击上载元数据文件,然后选择从步骤一获取的SP元数据文档,最后单击添加。
在基本SAML配置页面,配置以下信息,然后单击保存。
标识符(实体 ID):必填项,SP元数据文档导入后,该值会自动读取。
说明如无法自动读取,请从云SSO的SSO登录配置页面复制Entity ID的取值。
回复 URL(断言使用者服务 URL):必填项,SP元数据文档导入后,该值会自动读取。
说明如无法自动读取,请从云SSO的SSO登录配置页面复制ACS URL的取值。
中继状态:可选项,用来配置SSO登录成功后跳转到的阿里云页面。如果不配置,默认跳转到云SSO用户门户。
说明出于安全原因,您只能输入*.alibabacloudsso.com域名的URL,否则配置无效。
在用户属性和声明区域,单击编辑,将唯一用户标识符(名称 ID)的值设置为user.userprincipalname或其他能够唯一标识用户的字段。
说明您可以设置任意能够唯一标识用户的字段作为SAML断言中
NameID
的值,常见的有user.userprincipalname或user.mail等。由于云SSO需要传入的NameID
值要与云SSO的用户名一致,因此您应该在云SSO中根据该字段值创建用户,以确保SSO登录能够成功。如果您同时配置了SCIM同步,您需要使用同一个字段(例如:user.userprincipalname)配置SCIM的userName属性。
在SAML签名证书区域,单击下载,获取联合元数据XML。
(可选)步骤四:在Azure AD分配用户
如果您已完成了SCIM同步配置,则请跳过该步。
在Azure AD主页左上角,单击图标。
在左侧导航栏,选择 。
在名称列,单击CloudSSODemo。
在左侧导航栏,单击用户和组。
单击左上角的添加用户/组。
选择用户。
单击分配。
步骤五:在云SSO启用SSO登录
在云SSO的左侧导航栏,单击设置。
在SSO登录区域,单击配置身份提供商信息。
在配置身份提供商信息对话框,选择上传元数据文档。
单击上传文件,上传从步骤三获取的IdP元数据文档。
打开SSO登录开关,启用SSO登录。
说明启用SSO登录后,用户名和密码登录将自动禁用,即云SSO用户将不能通过用户名和密码登录。而且,SSO登录是一个全局功能,启用后,所有用户都需要SSO登录。
验证结果
完成SSO登录配置后,您可以从阿里云或Azure AD发起SSO登录。
从阿里云发起SSO登录
在云SSO控制台的概览页,复制用户登录地址。
使用新的浏览器打开复制的用户登录地址。
单击跳转,系统会自动跳转到Azure AD的登录页面。
使用Azure AD用户名和密码登录。
系统将自动SSO登录并重定向到您指定的中继状态页面。如果未指定中继状态或超出允许范围,则系统会访问下图所示的云SSO用户门户。
在以RAM角色登录页签,单击目标RD账号权限列的显示详情。
在权限面板,单击目标权限操作列的登录。
访问RD账号中有权限的资源。
从Azure AD发起SSO登录
获取用户访问URL
管理员用户登录Azure门户。
单击主页的图标。
在左侧导航栏,选择
。单击应用程序CloudSSODemo。
在左侧导航栏,单击属性,获取用户访问URL。
用户访问URL是用户直接从其浏览器访问此应用程序的链接。
用户从管理员处获取上述用户访问URL,然后在浏览器中输入该URL,使用自己的用户名和密码登录。
系统将自动SSO登录并重定向到您指定的中继状态页面。如果未指定中继状态或超出允许范围,则系统会访问云SSO用户门户。
在以RAM角色登录页签,单击目标RD账号权限列的显示详情。
在权限面板,单击目标权限操作列的登录。
访问RD账号中有权限的资源。