本文为您提供AD FS(Active Directory Federation Service)与云SSO进行单点登录(SSO登录)的示例。
背景信息
假设企业使用Active Directory(AD)进行本地用户管理,且已在阿里云资源目录(RD)中搭建了多账号体系结构。企业希望经过配置,使AD的用户通过SSO登录的方式直接访问资源目录(RD)指定成员账号中的指定资源。
本文以在Windows Server 2012 R2 ECS实例上搭建的AD FS为例,为您介绍如何配置AD FS与阿里云,从而实现SSO登录。其中,AD FS是身份提供商(IdP),阿里云云SSO是服务提供商(SP)。
准备工作
配置SSO登录前,您需要完成以下工作:
步骤一:在云SSO获取服务提供商元数据
- 登录云SSO控制台。
- 在左侧导航栏,单击设置。
- 在SSO登录区域,下载服务提供商(SP)元数据文件。
步骤二:在AD FS将阿里云配置为信赖方
- 登录部署了AD FS的ECS实例。
- 打开服务器管理器。
- 在左侧导航栏,单击AD FS。
- 在右上角的菜单栏,选择 。
- 在AD FS管理工具中,添加阿里云为信赖方。
步骤三:在AD FS配置SAML断言属性
在本示例中,为了使阿里云能使用SAML响应定位到正确的云SSO用户,SAML断言中的NameID
字段取值为AD用户的UPN(User Principal Name)。
步骤四:在AD FS获取身份提供商元数据
在部署了AD FS的ECS实例中,访问https://<ADFS-server>/federationmetadata/2007-06/federationmetadata.xml
,获取身份提供商(IdP)元数据文件。
说明 <ADFS-server>是AD FS服务器域名或IP地址。
步骤五:在云SSO启用SSO登录
验证结果
完成上述配置后,您可以从阿里云或AD FS发起SSO登录。
- 从阿里云发起SSO登录
- 在云SSO控制台的概览页,复制用户登录地址。
- 使用新的浏览器打开复制的用户登录地址。
- 单击跳转,系统会自动跳转到AD FS的登录页面。
- 使用AD用户的用户名和密码登录。
系统将自动SSO登录到下图所示的云SSO用户门户。
- 单击目标RD账号权限列的显示详情。
- 在权限面板,单击目标权限操作列的登录。
- 访问RD账号中有权限的资源。
- 从AD FS发起SSO登录
- 登录AD FS SSO登录门户。
SSO登录门户地址为
https://<ADFS-server>/adfs/ls/IdpInitiatedSignOn.aspx
。说明- <ADFS-server>是AD FS服务器域名或IP地址。
- 如果SSO登录门户页面不可用,您可以通过PowerShell的命令
Set-AdfsProperties –EnableIdpInitiatedSignonPage $True
开启该页面。
- 选择站点为步骤二:在AD FS将阿里云配置为信赖方创建的CloudSSODemo,然后单击登录。
- 输入AD用户的用户名和密码,然后单击登录。
系统将自动SSO登录到下图所示的云SSO用户门户。
- 单击目标RD账号权限列的显示详情。
- 在权限面板,单击目标权限操作列的登录。
- 访问RD账号中有权限的资源。
- 登录AD FS SSO登录门户。