9.7. ユーザー証明書をユーザーアカウントにマッピングするように AD が設定されている場合に、証明書マッピングの設定
このユーザーストーリーでは、IdM デプロイメントが Active Directory (AD) を信頼し、そのユーザーが AD に保存され、AD のユーザーエントリーに証明書マッピングデータが含まれる場合に、IdM で証明書マッピングを有効にするのに必要な手順を説明します。
前提条件
- IdM にユーザーアカウントがない。
-
このユーザーに、
altSecurityIdentities
属性を含む AD にアカウントがある。AD は、IdM のcertmapdata
属性に相当します。 - IdM 管理者が、IdM 証明書マッピングルールが基になっているデータにアクセスできる。
9.7.1. IdM Web UI で証明書マッピングルールの追加
- 管理者として IdM Web UI にログインします。
-
Authentication
Certificate Identity Mapping Rules
Certificate Identity Mapping Rules
の順に移動します。 Add
をクリックします。図9.7 IdM Web UI で新しい証明書マッピングルールの追加
- ルール名を入力します。
マッピングルールを入力します。たとえば、提示された証明書で
Issuer
エントリーおよびSubject
エントリーを AD DC で検索し、提示された証明書に含まれるこの 2 つのエントリーで見つかった情報に基づいて認証するかどうかを決定するには、次のコマンドを実行します。(altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<S>{subject_dn!ad_x500})
マッチングルールを入力します。たとえば、
AD.EXAMPLE.COM
ドメインのAD-ROOT-CA
が発行する証明書のみを許可し、IdM に対してユーザーを認証するには、次のコマンドを実行します。<ISSUER>CN=AD-ROOT-CA,DC=ad,DC=example,DC=com
ドメインを入力します。
ad.example.com
図9.8 AD がマッピング用に設定されている場合の証明書マッピングルール
-
Add
をクリックします。 System Security Services Daemon (SSSD) は、証明書マッピングルールを定期的に再読み込みします。新たに作成したルールがすぐに読み込まれるようにするには、CLI で SSSD を再起動します。
# systemctl restart sssd
9.7.2. IdM CLI での証明書マッピングルールの追加
管理者の認証情報を取得します。
# kinit admin
マッピングルールを入力し、マッピングルールの基となっているマッチングルールを入力します。たとえば、提示する証明書の
Issuer
エントリーおよびSubject
エントリーを AD で検索し、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
System Security Services Daemon (SSSD) は、証明書マッピングルールを定期的に再読み込みします。新たに作成したルールがすぐに読み込まれるようにする場合は、次のコマンドを実行して SSSD を再起動します。
# systemctl restart sssd
9.7.3. AD で証明書マッピングデータの確認
altSecurityIdentities
属性は、IdM の certmapdata
ユーザー属性と同等の Active Directory (AD) です。信頼されている AD ドメインが、ユーザーアカウントにユーザー証明書をマッピングするように設定されている時に IdM で証明書マッピングを設定する場合は、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
-