10.5. 使用 Active Directory 域信任的证书映射规则

如果 IdM 部署与活动目录(AD)域有信任关系,则可能会有不同的证书映射用例。

根据 AD 配置,可能会出现以下情况:

  • 如果证书是由 AD 证书系统发布的,但用户和证书存储在 IdM 中,则身份验证请求的映射和整个处理发生在 IdM 端。有关配置此情境的详情,请参阅为存储在 IdM 中的用户配置证书映射
  • 如果用户存储在 AD 中,则身份验证请求的处理发生在 AD 中。有三个不同的子案例:

    • AD 用户条目包含整个证书。有关在这种情况下配置 IdM 的详情,请参考为 AD 用户条目包含整个证书的用户配置证书映射
    • AD 配置为将用户证书映射到用户帐户。在这种情况下,AD 用户条目不包含整个证书,而是包含名为 altSecurityIdentities 的属性。有关如何在这种场景中配置 IdM 的详情,请参阅在将 AD 配置为将用户证书映射到用户帐户时配置证书 映射。
    • AD 用户条目既不包含整个证书也不包括映射数据。在这种情况下,有两个选项:

      • 如果用户证书是由 AD 证书系统发布的,则证书会包含用户主体名称作为 Subject Alternative Name (SAN),或者如果最新的更新被应用到 AD,则证书在证书的 SID 扩展中包含用户的 SID。它们都可用于将证书映射到用户。
      • 如果用户证书位于智能卡上,要使用智能卡启用 SSH,SSSD 必须从证书派生公共 SSH 密钥,因此需要完整证书。唯一的解决方案是使用 ipa idoverrideuser-add 命令将整个证书添加到 IdM 中 AD 用户的 ID 覆盖中。详情请参阅在 AD 用户条目不包含证书或映射数据时配置证书映射

AD 域管理员可以使用 altSecurityIdentities 属性手动将证书映射到 AD 中的用户。此属性支持六个值,但三个映射被视为不安全。作为 2022 年 5 月 10 日安全更新 的一部分,在安装之后,所有设备都处于兼容模式,如果证书被弱地映射到用户,则身份验证如预期一样。但是,会记录任何标识任何与全强制模式不兼容的证书的警告消息。从 2023 年 11 月 14 日起,所有设备都将更新为全强制模式,如果证书对强映射标准失败,则身份验证将被拒绝。

例如,当 AD 用户使用证书(PKINIT)请求 IdM Kerberos 票据时,AD 需要在内部将证书映射到用户,并对此使用新的映射规则。但是,在 IdM 中,如果 IdM 用于将证书映射到 IdM 客户端 上的用户,则以前的规则将继续工作。

IdM 支持新的映射模板,使 AD 管理员更易于使用新规则,而不用维护这两个模板。IdM 现在支持添加到活动目录的新映射模板,以包括:

  • 序列号:LDAPU1: (altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<SR>{serial_number!hex_ur})
  • 主题键 Id: LDAPU1: (altSecurityIdentities=X509:<SKI>{subject_key_id!hex_u})
  • 用户 SID:LDAPU1: (objectsid={sid})

如果您不想使用新的 SID 扩展重新发布证书,您可以通过将适当的映射字符串添加到 AD 中的 altSecurityIdentities 属性来创建手动映射。