Red Hat Training

A Red Hat training course is available for RHEL 8

66.7. 如果将 AD 配置为将用户帐户映射到用户帐户,则配置证书映射

这个用户故事描述了如果 IdM 部署在与活动目录(AD)的信任中,在 IdM 中启用证书映射所需的步骤,用户存储在 AD 中,AD 中的用户条目包含证书映射数据。

先决条件

  • 用户在 IdM 中没有帐户。
  • 用户在 AD 中有一个帐户,其中包含 altSecurityIdentities 属性,即 IdM certmapdata 属性的 AD 等效。
  • IdM 管理员有权访问 IdM 证书映射规则可以基于的数据。

66.7.1. 在 IdM Web UI 中添加证书映射规则

  1. 以管理员身份登录 IdM Web UI。
  2. 导航到 AuthenticationCertificate Identity Mapping RulesCertificate Identity Mapping Rules
  3. Add

    图 66.7. 在 IdM Web UI 中添加一个新的证书映射规则

    IdM Web UI 的截图,从身份验证选项卡中显示"证书身份映射规则"子选项卡。突出显示页面右侧的"添加"按钮。
  4. 输入规则名称。
  5. 输入映射规则。例如,要使 AD DC 搜索所呈现的任何证书中的 IssuerSubject 条目,并决定根据所出示证书的两个条目中提供的信息进行验证:

    (altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<S>{subject_dn!ad_x500})
  6. 输入匹配的规则。例如,只允许 AD.EXAMPLE.COM 域的 AD-ROOT-CA 发布的证书来将用户认证到 IdM:

    <ISSUER>CN=AD-ROOT-CA,DC=ad,DC=example,DC=com
  7. 输入域:

    ad.example.com

    图 66.8. 如果配置了 AD 进行映射,则证书映射规则

    "添加证书身份映射规则"弹出窗口的截图并填写以下字段:规则名称(必需)- 映射规则 - 匹配规则。"Priority"字段为空,"Domain name"标签旁边还有一个"添加"按钮。
  8. Add
  9. 系统安全服务守护进程(SSSD)定期重新读取证书映射规则。要强制立即加载新创建的规则,请在 CLI 中重启 SSSD:

    # systemctl restart sssd

66.7.2. 在 IdM CLI 中添加证书映射规则

  1. 获取管理员凭证:

    # kinit admin
  2. 输入映射规则以及映射规则所基于的匹配规则。例如,要让 AD 搜索所出示的任何证书中的 IssuerSubject 条目,并且只允许 AD.EXAMPLE.COM 域的 AD-ROOT-CA 发布的证书:

    # ipa certmaprule-add ad_configured_for_mapping_rule --matchrule '<ISSUER>CN=AD-ROOT-CA,DC=ad,DC=example,DC=com' --maprule '(altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<S>{subject_dn!ad_x500})' --domain=ad.example.com
    -------------------------------------------------------
    Added Certificate Identity Mapping Rule "ad_configured_for_mapping_rule"
    -------------------------------------------------------
      Rule name: ad_configured_for_mapping_rule
      Mapping rule: (altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<S>{subject_dn!ad_x500})
      Matching rule: <ISSUER>CN=AD-ROOT-CA,DC=ad,DC=example,DC=com
      Domain name: ad.example.com
      Enabled: TRUE
  3. 系统安全服务守护进程(SSSD)定期重新读取证书映射规则。要强制立即载入新创建的规则,重启 SSSD:

    # systemctl restart sssd

66.7.3. 检查 AD 端的证书映射数据

altSecurityIdentities 属性是与 IdM 中的 certmapdata 用户属性等效的 Active Directory(AD)。当将可信 AD 域配置为将用户帐户映射到用户帐户时,IdM 系统管理员需要检查 AD 中的用户条目是否正确设置了 altSecurityIdentities 属性

先决条件

  • 用户帐户必须具有用户管理访问权限。

流程

  • 要检查 AD 是否包含 AD 中存储的用户的正确信息,请使用 ldapsearch 命令。例如,输入以下命令检查 adserver.ad.example.com 服务器是否适用以下条件:

    • altSecurityIdentities 属性在 ad_user 的用户条目中设置。
    • matchrule 满足以下条件:

      • ad_user 用于向 AD 进行身份验证的证书由 ad.example.com 域的 AD-ROOT-CA 签发。
      • 主题为 <S>DC=com,DC=example,DC=ad,CN=Users,CN=ad_user
    $ ldapsearch -o ldif-wrap=no -LLL -h adserver.ad.example.com \
    -p 389 -D cn=Administrator,cn=users,dc=ad,dc=example,dc=com \
    -W -b cn=users,dc=ad,dc=example,dc=com "(cn=ad_user)" \
    altSecurityIdentities
    Enter LDAP Password:
    dn: CN=ad_user,CN=Users,DC=ad,DC=example,DC=com
    altSecurityIdentities: X509:<I>DC=com,DC=example,DC=ad,CN=AD-ROOT-CA<S>DC=com,DC=example,DC=ad,CN=Users,CN=ad_user