更新时间:2025-11-28 GMT+08:00
分享
示例:配置第三方IdP建立SSO对接

示例:配置第三方IdP建立SSO对接

前提条件

IdP系统已配置用户信息。

操作步骤

  1. 获取SP的元数据文件。

    1. 以安全管理员登录运维面
    2. 控制台主菜单中选择系统 > 系统管理 > 认证管理
    3. 在左侧导航树中选择“SSO配置 > SAML SSO配置”。
    4. 在“身份提供商配置”页签,单击“导出元数据”,导出元数据文件。

      导出元数据之前,需要在证书管理上传SAML SSO的SP证书。

      1. 在admin主菜单中选择系统 > 系统管理 > 证书管理
      2. 在左侧导航树中选择“服务证书管理”。
      3. 在“服务列表”页面,选择“UniSSOWebsite”服务卡片。
      4. 选择页签,导入对应证书。
    5. 使用浏览器打开元数据文件,单击右键选择“目标另存为”,将元数据文件保存在IdP安装路径“IdP\metadata”文件夹下,并设置文件名称,例如“SP-metadata.xml”。

  2. 在IdP上配置SP的元数据文件,将元数据文件的路径配置到在IdP安装文件的metadata-providers.xml文件中。即在metadata-providers.xml文件中,添加以下内容:

    <MetadataProvider id="LocalMetadata1" xsi:type="FilesystemMetadataProvider" metadataFile="IdP安装目录\IdP\metadata\SP-metadata.xml"/>

    文件中若存在多个“MetadataProvider id”,要求id名不能重复,保持唯一。

  3. 在IdP安装文件的attribute-filter.xml文件中,配置运维面的身份标识(EntityID)。即在attribute-filter.xml文件中配置SP的相关信息。
  4. 重启IdP系统。

    “重启IdP”为危险操作,由于不同IdP系统的实现不同,是否需要立即“重启IdP”,请根据IdP系统的实际情况决定。

  5. 保存IdP的元数据文件,即保存idp-metadata.xml,用于配置SP系统的服务提供商。
  6. 配置IdP后,需要在运维面配置SAML SSO的服务提供商,建立运维面对IdP的信任关系,具体操作参见配置SAML SSO

操作示例

  • 下面以第三方身份提供商系统Shibboleth IdP V3为例,进行IdP配置。
  1. 获取SP的元数据文件。

    1. 以安全管理员登录运维面
    2. 控制台主菜单中选择系统 > 系统管理 > 认证管理
    3. 在左侧导航树中选择“SSO配置 > SAML SSO配置”。
    4. 在“身份提供商配置”页签,单击“导出元数据”,导出元数据文件。
    5. 使用浏览器打开元数据文件,单击右键选择“目标另存为”,将文件保存在“<Shibboleth IdP安装路径>\Shibboleth\IdP\metadata”,并设置文件名称,例如“SP-metadata.xml”。

      <Shibboleth IdP安装路径>需要替换成身份提供商系统的具体安装路径。

  2. 在IdP上配置元数据文件,将元数据文件的路径配置到“<Shibboleth IdP安装路径>\Shibboleth\IdP\conf\metadata-providers.xml”文件中。即在metadata-providers.xml文件中,添加以下内容:

    <MetadataProvider id="LocalMetadata1" xsi:type="FilesystemMetadataProvider" metadataFile="<Shibboleth IdP安装路径>\Shibboleth\IdP\metadata\SP-metadata.xml"/>

    文件中若存在多个“MetadataProvider id”,要求id名不能重复,保持唯一。

  3. 在“<Shibboleth IdP安装路径>\Shibboleth\IdP\conf\attribute-filter.xml”文件中配置运维面的身份标识(EntityID)。在attribute-filter.xml文件中,将value的值改为运维面的元数据文件中的EntityID值。

    <afp:AttributeFilterPolicy id="SP-metadata">
         <afp:PolicyRequirementRule xsi:type="basic:AttributeRequesterString" value="https://10.247.47.x:31943" />
         <afp:AttributeRule attributeID="eduPersonPrincipalName">
             <afp:PermitValueRule xsi:type="basic:ANY" />
         </afp:AttributeRule>
         <afp:AttributeRule attributeID="uid">
             <afp:PermitValueRule xsi:type="basic:ANY" />
         </afp:AttributeRule>
         <afp:AttributeRule attributeID="mail">
             <afp:PermitValueRule xsi:type="basic:ANY" />
         </afp:AttributeRule>
    </afp:AttributeFilterPolicy>

  4. 重启Shibboleth IdP系统。

    1. 进入路径“<Shibboleth IdP安装路径>\Shibboleth\ProcRun”,双击“shibd_idpw.exe”文件。
    2. 单击“Stop”停止IdP系统后,再单击“Start”启动IdP系统,完成重启操作后,单击“确认”。

      如果重启失败,请检查本机其他进程是否与Shibboleth IdP系统冲突。

  5. 保存IdP系统的元数据文件,即保存“<Shibboleth IdP安装路径>\Shibboleth\IdP\metadata\”路径下的idp-metadata.xml文件,用于配置SP系统的服务提供商。
  6. 配置Shibboleth后,还需在运维面配置SAML SSO的服务提供商,以建立运维面对Shibboleth的信任关系,具体操作参见配置SAML SSO
  • 验证SAML SSO与第三方Shibboleth IdP V3系统配置
  1. 控制台主菜单中选择系统 > 系统管理 > 认证管理
  2. 在左侧导航树中选择“SSO配置 > SAML SSO配置”。
  3. 在身份提供商列表中,单击目标身份提供商名称。
  4. 单击“登录链接”右侧的“复制”。
  5. 在浏览器地址栏输入“登录链接”,单击“Enter”。
  6. 进入IdP系统登录页面,使用IdP用户登录后,就可以直接跳转到运维面进行操作。
  7. 建议在Shibboleth IdP V3系统中将以下语句添加在页面文件中。

    <a href="<登录链接>"> 运维面入口 </a>

  8. 用户登录IdP后通过单击“运维面入口”可以直接访问运维面

相关文档