更新时间:2024-04-23 GMT+08:00

基于SAML协议的虚拟用户SSO配置概述

华为云与企业进行联邦认证登录时,华为云是服务提供商(SP),企业自有的身份管理系统是身份提供商(IdP)。本节为您介绍企业IdP与华为云,基于SAML协议进行虚拟用户SSO联邦认证的内部实现流程和配置步骤,以及常用的企业IdP与华为云对接示例。

请确保您使用的企业IdP支持SAML 2.0协议。

联邦身份认证的配置步骤

建立企业管理系统与华为云的联邦身份认证关系,配置流程如下。

图1 基于SAML的虚拟SSO配置流程
  1. 创建身份提供商并建立互信关系:华为云与企业IdP建立联邦认证,需要华为云平台创建一个与企业IdP对应的身份提供商程序。然后,建立联邦认证的双方需首先建立互信关系,双方交换元数据文件,在企业IdP中上传华为云元数据文件,在华为云上传企业IdP的元数据文件。
    图2 交换Metadata文件模型
  2. 配置企业IdP参数,规定在交互过程中,企业IdP向华为云发送哪些信息。
  3. 在华为云配置身份转换规则:通过配置身份转换规则,明确企业IdP用户登录华为云后的身份和权限,例如登录华为云后的用户名、加入的用户组和拥有的访问权限。
    图3 用户转换模型
  4. 登录验证:发起单点登录,测试是否能成功从企业IdP跳转登录华为云。
  5. (可选)配置企业管理系统登录入口:将华为云的访问入口配置到企业管理系统中,用户可通过登录企业管理系统直接访问华为云,如图4所示。
    图4 配置单点登录模型

企业管理系统与华为云联邦身份认证交互流程

图5为用户在发起单点登录请求后,企业管理系统与华为云间的交互流程。

图5 联邦身份认证交互流程

为方便您查看交互的请求及断言消息,建议您使用Chrome浏览器并安装插件“SAML Message Decoder”

图5中可知,联邦身份认证的步骤为:

  1. 用户在浏览器中打开创建身份提供商后生成的登录链接,浏览器向华为云发起单点登录请求。
  2. 华为云根据登录链接中携带的信息,查找IAM身份提供商中对应的Metadata文件,构建SAML Request,发送给浏览器。
  3. 浏览器收到请求后,转发SAML Request给企业IdP。
  4. 用户在企业IdP推送的登录页面中输入用户名和密码,企业IdP对用户提供的身份信息进行验证,并构建携带用户信息的SAML断言,向浏览器发送SAML Response。
  5. 浏览器响应后转发SAML Response给华为云。
  6. 华为云从SAML Response中取出断言,并根据已配置的身份转换规则映射到具体的IAM用户组,颁发Token。
  7. 用户完成单点登录,访问华为云。

    断言中要携带签名,否则会导致登录失败。