阿里云支持基于SAML 2.0的SSO(Single Sign On,单点登录),也称为身份联合登录。本文以Microsoft Active Directory (AD) 为例为您介绍企业如何使用自有的身份系统实现与阿里云的SSO并在容器服务ACK集群中进行身份验证。
本文主要介绍 AD FS的安装部署 , 用户SSO 配置和登录, 如需了解 角色SSO 配置和登录 请参考在AlibabaCloud上,如何使用AD FS进行 【角色SSO】 并完成在容器服务ACK集群中的身份验证
一. 安装部署Microsoft AD
- 打开 "Server Manager",单击 “Add roles and features”
- 单击 “Next”
- 选择 “Active Director Domain Service” "Add Featrues"
- 安装完成后点击 “Promote this server to a domain controller”
- "Add a new forest"
本示例中我们使用“testdomain.com”
安装完成后,服务器会重启:
- Start Menu -> Active Directory Users and Computers
- new Org and new Users
二. 安装CA
- 选择“Add roles and features” 安装CA
- 点击下一步直到选择"Active Directory Certificate Services"
- 访问http://localhost/certsrv 确保 CA安装成功
三. 安装ADFS
- 添加服务账号
- 安装ADFS
四. 配置AD到阿里云的单点登录
- 在RAM控制台配置ADFS
首先访问https://adserver.testdomain.com/FederationMetadata/2007-06/FederationMetadata.xml下载 FederationMetadata.xml文件
访问阿里云RAM控制台Settings -> Advanced -> SSO Settings:
更改"SSO Status" 为 "Enabled" 并且 "Upload" FederationMetadata.xml文件:
点击“OK”:
- 在ADFS中配置阿里云RAM为可信SAML SP
AD FS -> Tools -> AD FS Management:
Trust Relationships -> Replying Party Trusts -> Add Replying Trust:
the URL can be found in ram console:
Add rules:
选择"Transform an Incoming Claim":
现在我们在AD上有以下组和用户:
Group001:
testuser01 testuser02
Group002:
testuser03 testuser04
我们在RAM控制台也创建相应的组和用户:
使用子账号testuser01 testuser02 testuser03 testuser04测试登录操作:
使用testuser01@testdomain.com登录:
五. 为子账户授权ACK集群操作权限
此时子账户没有任何集群操作权限:
我们可以创建一个自定义策略允许group01下的用户对命名空间ci有读写权限:
授权完成后访问集群资源:
参考子账号RBAC权限配置指导为子账户授权。
参考文档:
https://help.aliyun.com/document_detail/93685.html
https://help.aliyun.com/document_detail/87656.html