本文提供一个以AD FS与阿里云进行用户SSO的示例,帮助您理解企业IdP与阿里云进行SSO的端到端配置流程。
前提条件
用户对Microsoft Active Directory(AD)需进行合理正确的配置,在Windows Server 2012 R2上配置以下服务器角色:
- DNS服务器:将身份认证请求解析到正确的Federation Service上。
- Active Directory域服务(AD DS):提供对域用户和域设备等对象的创建、查询和修改等功能。
- Active Directory Federation Service(AD FS):提供配置SSO信赖方的功能,并对配置好的信赖方提供SSO认证。
注意事项
本文以Windows Server 2012 R2为例,介绍如何配置AD FS与阿里云,从而实现用户SSO。
注意 本文中涉及到Microsoft Active Directory配置的部分属于建议,仅用于帮助理解阿里云SSO的端到端配置,阿里云不提供Microsoft Active
Directory配置官方咨询服务。
示例配置
示例中用到的相关配置如下:
- 云账号的默认域名为:
secloud.onaliyun.com
。 - 云账号下包含RAM用户:
alice
,其完整的 UPN(User Principal Name)为:alice@secloud.onaliyun.com
。 - 创建的Microsoft AD中的AD FS服务名称为:
adfs.secloud.club
。 - 创建的Microsoft AD的域名为:
secloud.club
,NETBIOS名为:secloud
。 - RAM用户
alice
在AD中的UPN为:alice@secloud.club
,域内登录也可以使用:secloud\alice
。
在RAM中将AD FS配置为可信SAML IdP
在AD FS中将阿里云配置为可信SAML SP
在AD FS中,SAML SP被称作信赖方。
完成配置信赖方之后,阿里云和AD FS就产生了互信,阿里云会将默认域名为secloud.onaliyun.com
的云账号下所有RAM用户的认证请求转发到AD FS:adfs.secloud.club
,AD FS也会接受来自于阿里云的认证请求并向阿里云转发认证响应。
为阿里云SP配置SAML断言属性
为了让阿里云能使用SAML响应定位到正确的RAM用户,SAML断言中的NameID
字段取值应为RAM用户的UPN。
我们需要配置AD中的UPN为SAML断言中的NameID
。