本文提供一个以Okta与阿里云进行用户SSO的示例,帮助您理解企业IdP与阿里云进行SSO的端到端配置流程。
步骤一:在阿里云获取SAML服务提供商元数据
- 使用阿里云账号登录RAM控制台。
- 在左侧导航栏,选择 。
- 在SSO管理页面,单击用户SSO页签。
- 在SSO登录设置区域,复制SAML服务提供商元数据URL。
- 在新的浏览器窗口中打开复制的链接,将元数据XML文件另存到本地。说明 元数据XML文件保存了阿里云作为一个SAML服务提供商的访问信息。您需要记录XML文件中
EntityDescriptor
元素的entityID
属性值和AssertionConsumerService
元素的Location
属性值,以便后续在Okta的配置中使用。
步骤二:在Okta创建支持SAML SSO的应用
- 登录Okta门户。
- 单击页面右上方的账号图标,然后单击Your Org。
- 在左侧导航栏,选择 。
- 在Applications页面,单击Create App Integration。
- 在Create a new app integration对话框,单击SAML 2.0,然后单击Next。
- 配置应用名称为AliyunSSODemo,单击Next。
- 配置SAML,然后单击Next。
- Single sign on URL为步骤一:在阿里云获取SAML服务提供商元数据中记录的
Location
。 - Audience URI为步骤一:在阿里云获取SAML服务提供商元数据中记录的
entityID
。 - Default RelayState用来配置用户SSO登录成功后跳转到的阿里云页面。 说明 出于安全原因,您只能填写阿里巴巴旗下的域名URL作为Default RelayState的值,例如:*.aliyun.com、*.hichina.com、*.yunos.com、*.taobao.com、*.tmall.com、*.alibabacloud.com、*.alipay.com,否则配置无效。若不配置,默认跳转到阿里云控制台首页。
- Name ID format选择Persistent。
- Application username选择Email。
- Single sign on URL为步骤一:在阿里云获取SAML服务提供商元数据中记录的
- 在Feedback页面,根据需要选择合适的应用类型,然后单击Finish。
步骤三:在Okta获取SAML IdP元数据
- 在应用程序AliyunSSODemo详情页,单击Sign On。
- 在Settings区域,单击Identity Provider metadata,将IdP元数据另存到本地。
步骤四:在阿里云开启用户SSO
- 在RAM控制台的左侧导航栏,选择 。
- 在SSO管理页面,单击用户SSO页签。
- 在SSO登录设置区域,单击编辑。
- 在编辑SSO登录设置面板的SSO功能状态区域,单击开启。说明 用户SSO是一个全局功能,开启后,所有RAM用户都需要使用SSO登录。 如果您是通过RAM用户配置的,请先保留为关闭状态,您需要先完成RAM用户的创建,以免配置错误导致自己无法登录。您也可以通过阿里云账号(主账号)进行配置来规避此问题。
- 在元数据文档区域,单击上传文件,上传从步骤三:在Okta获取SAML IdP元数据中获取的IdP元数据。
- 在辅助域名区域,单击开启,并配置辅助域名为Okta中的用户名Email后缀。说明 如果您的Okta中存在多种Email后缀的用户,则只有以此处配置的后缀结尾的Email地址可以登录到阿里云。
- 单击确定。
步骤五:在Okta创建用户并分配应用
- 在Okta左侧导航栏,选择 。
- 单击Add Person。
- 在Add Person页面,填写基本信息并将Primary email配置为u2@example.com,然后单击Save。
- 在用户列表中,单击用户u2@example.comStatus列的Activate,然后根据页面提示激活u2@example.com。
- 在左侧导航栏,选择 。
- 单击目标应用名称(AliyunSSODemo)后,在Assignments页签,选择 。
- 单击目标用户(u2@example.com)后的Assign。
- 单击Save and Go Back。
- 单击Done。
步骤六:在阿里云创建RAM用户
- 在RAM控制台的左侧导航栏,选择 。
- 在用户页面,单击创建用户。
- 在创建用户页面,输入登录名称和显示名称。说明 请确保RAM用户的登录名称前缀与Okta中的用户名前缀保持一致,本示例中为u2。
- 在访问方式区域,选择控制台访问,并设置登录密码等参数。
- 单击确定。
验证结果
完成上述配置后,您可以从阿里云或Okta发起SSO登录。
- 从阿里云侧发起登录
- 在RAM控制台的概览页,复制RAM用户的登录地址。
- 将鼠标悬停在右上角头像的位置,单击退出登录或使用新的浏览器打开复制的RAM用户登录地址。
- 单击使用企业账号登录,系统会自动跳转到Okta的登录页面。
- 在Okta的登录界面,输入用户名(u2@example.com)和密码,单击登录。
系统将自动SSO登录并重定向到您指定的DefaultRelayState页面。如果未指定DefaultRelayState或超出允许范围,则系统会访问如下阿里云控制台首页。如果出现以下页面,表示配置成功。
- 从Okta侧发起登录
使用Okta用户登录Okta门户,在Okta的主页,找到并单击AliyunSSODemo应用。
系统将自动SSO登录并重定向到您指定的DefaultRelayState页面。如果未指定DefaultRelayState或超出允许范围,则系统会访问以下阿里云控制台首页。如果出现以下页面,表示配置成功。