# 使用 SAML2 登录阿里云控制台
Authing SAML Identity Provider 为企业提供了单点登录能力。在阿里云通过设置SSO来实现从企业本地账号系统登录到阿里云,从而实现员工身份在云上和云下的统一管理。阿里云采用了基于SAML 2.0的身份联盟标准来实现身份系统的互通。
阿里云支持「用户 SSO」和「角色 SSO」,下面分这两种模式进行说明。
# 用户 SSO
# 在 Authing 配置 IdP
如果你还没有创建应用,你需要先在 Authing 创建一个应用。
先进入阿里云访问控制 (opens new window) > 左侧菜单 > 人员管理 > 设置,点击「高级设置」选项卡,记录默认域名。
进入控制台 > 应用 > 应用列表,找到你的应用,点击「配置」。
在应用详情页面,点击「配置 SAML2 身份提供商」选项卡,打开「启用 SAML2 Provider」开关,默认 ACS 地址填写 https://signin.aliyun.com/saml/SSO
。
设置内容按如下方式填写:
emailDomainSubstitution
字段填写刚刚在阿里云控制台记录的默认域名。
{
"audience": null,
"recipient": "https://signin.aliyun.com/saml/SSO",
"destination": "https://signin.aliyun.com/saml/SSO",
"mappings": null,
"digestAlgorithm": "http://www.w3.org/2000/09/xmldsig#sha1",
"signatureAlgorithm": "http://www.w3.org/2000/09/xmldsig#rsa-sha1",
"authnContextClassRef": "urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified",
"lifetimeInSeconds": 3600,
"signResponse": true,
"nameIdentifierFormat": "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified",
"samlRequestSigningCert": "",
"emailDomainSubstitution": "authing.onaliyun.com" // 换成你的阿里云域名称
}
重要提示⚠️⚠️⚠️:emailDomainSubstitution
填写后,Authing 在发送身份断言之前,会将用户池中的用户邮箱域名替换为这个字段的内容,请务必关闭用户池注册(控制台 > 设置 > 安全信息,打开禁止注册开关),否则存在账号冒用风险,例如:test@authing.cn 和 test@123.com 账户都会被阿里云认为是同一个用户。
点击「保存」。然后下载 SAML2 Identity Provider 的元数据文档:
https://core.authing.cn/api/v2/saml-idp/<应用 ID>/metadata
# 在阿里云进行配置
使用你的阿里云账号登录 (opens new window)阿里云的控制台。
在你的用户头像上悬停鼠标,出现下拉菜单,点击「访问控制 (opens new window)」。
进入左侧菜单 > 人员管理 > 用户 (opens new window),点击「创建用户」。
输入用户名称、显示名称,勾选控制台密码登录并点击「确认」。本教程中输入的登录名称是 authing,显示名称也是 authing。访问方式勾选控制台访问、编程访问。最后点击「保存」。
点击左侧菜单 > 人员管理 > 用户 (opens new window),在右侧页面的列表中可以看到刚刚添加的用户,记录下用户登录名称(本例为 authing@authing.onaliyun.com),随后会用到。点击对应用户条目右侧的「添加权限」。
在权限列表中选择需要赋予该账户的权限,本教程选择「AdministratorAccess」最高权限。点击「确定」。
进入左侧菜单 > SSO 管理 (opens new window),右侧页面点击「用户 SSO」选项卡,在下方 SSO 登录设置处点击「编辑」。
SSO 功能状态选择「开启」。点击「上传文件」,上传刚刚在 Authing 下载的 SAML IdP Metadata。点击「确认」。
# 在 Authing 配置用户
在创建用户时,用户邮箱「@」符号之前的部分需要和阿里云中的用户登录名称保持一致。
进入Authing 控制台 > 用户管理 > 用户列表,点击右上角的「新建」按钮,填入相关信息,注意邮箱「@」符号之前要填入阿里云中的用户登录名称。点击「保存」。
# 使用 Authing IdP 登录阿里云
访问阿里云 RAM 账户登录页 (opens new window),输入刚才在阿里云新建的用户的登录名称,形如:authing@xxx.onaliyun.com。
点击「下一步」,会跳转到 Authing IdP 登录认证页面。
可以选择任意方式进行登录,但是该用户的邮箱名称部分必须和阿里云中用户名称一样。
登录成功后跳转到阿里云的控制台。
# 角色 SSO
暂未支持