23.2. Identity Management での証明書マッピングルールの設定
23.2.1. スマートカードで認証を設定するための証明書マッピングルール
Subject
および Issuer
の値に基づいており、新しい証明書に古いものと同じ発行先および発行者がある場合は、マッピングが引き続き適用されます。一方、完全な証明書を使用する場合は、管理者が新しい証明書をユーザーエントリーにアップロードして古い証明書を置き換える必要があります。
- 管理者は、証明書マッピングデータ (通常は発行者と発行先)、または完全な証明書をユーザーアカウントに読み込む必要があります。
- 管理者は、以下のようなユーザーの IdM への正常なログインを許可する証明書マッピングルールを作成する必要があります。
- アカウントに、証明書マッピングデータエントリーが含まれる
- 証明書マッピングデータエントリーが、証明書の情報と一致する
マッピングルールを構成する個々のコンポーネントの詳細と、そのコンポーネントの取得方法および使用方法は、「IdM のアイデンティティーマッピングルールのコンポーネント」および「照合ルールで使用する証明書の発行者の取得」を参照してください。
23.2.1.1. Active Directory ドメインとの信頼に対する証明書マッピングルール
- 証明書が AD によって発行され、ユーザーと証明書が IdM に保存されている場合は、認証リクエストのマッピングと全体処理が IdM 側で行われます。このシナリオの構成の詳細は、「IdM に保存されているユーザーの証明書マッピングの設定」を参照してください。
- ユーザーが AD に保存されている場合、認証要求の処理は AD で行われます。サブケースは 3 つあります。
- AD ユーザーエントリーには、証明書全体が含まれます。このシナリオで IdM を設定する方法は、「AD ユーザーエントリーに完全な証明書が含まれるユーザー向け証明書マッピングの設定」を参照してください。
- AD は、ユーザー証明書をユーザーアカウントにマッピングするように設定されています。この場合、AD ユーザーエントリーには証明書全体が含まれませんが、代わりに
altSecurityIdentities
という属性が含まれます。このシナリオで IdM を設定する方法の詳細は、「ユーザー証明書をユーザーアカウントにマッピングするように AD が設定されている場合の証明書マッピングの設定」を参照してください。 - AD ユーザーエントリーには、証明書全体もマッピングデータも含まれていません。この場合の唯一の解決策は、
ipa idoverrideuser-add
コマンドを使用して、IdM で AD ユーザーの ID オーバーライドに証明書全体を追加することです。詳細は、「AD ユーザーエントリーに証明書やマッピングデータを含まれていない場合の証明書マッピングの設定」を参照してください。
23.2.1.2. IdM のアイデンティティーマッピングルールのコンポーネント
ipa certmaprule-add
コマンドを使用して ID マッピングルールが作成されます。
- マッピングルール
- マッピングルールコンポーネントは、証明書を 1 つ以上のユーザーアカウントに関連付けます (またはマッピングします)。このルールで、対象のユーザーアカウントと証明書を関連付ける LDAP 検索フィルターを定義します。発行した証明局 (CA) が違う証明書には、異なるプロパティーが設定されており、異なるドメインで使用される可能性があります。そのため、IdM は条件なしでマッピングルールを適用せず、適切な証明書にのみ適用します。照合ルールを使用して、適切な証明書を定義します。マッピングルールのオプションを空のままにすると、証明書は、
userCertificate
属性で、DER でエンコードされたバイナリーファイルとして検索されることに注意してください。--maprule
オプションを使用して、コマンドラインでマッピングルールを定義します。 - 照合ルール
- ドメイン一覧は、ID マッピングルールを処理するときに IdM がユーザーを検索する ID ドメインを指定します。オプションを指定しないと、IdM は IdM クライアントが属するローカルドメイン内のユーザーのみを検索します。
--domain
オプションを使用して、コマンドラインでドメインを定義します。 - Priority
- 複数のルールが証明書に適用可能な場合には、最も優先順位の高いルールが先に適用され、他のルールはすべて無視されます。
- 数値が低いほど、アイデンティティーマッピングの優先度が高くなります。たとえば、優先度が 1 のルールは、2 のルールより優先順位が高くなります。
- ルールに優先順位の値が定義されていない場合には、優先順位が最も低くなります。
--priority
オプションを使用して、コマンドラインでマッピングルールの優先度を定義します。
例23.1 証明書マッピングルールの例
Subject
は、IdM のユーザーアカウントの certmapdata
エントリーと一致する場合に限り、コマンドラインを使用して、EXAMPLE.ORG
組織の Smart Card CA により発行された証明書の認証を許可する simple_rule
と呼ばれる証明書マッピングルールを定義するには、次のコマンドを実行します。
# ipa certmaprule-add simple_rule --matchrule '<ISSUER>CN=Smart Card CA,O=EXAMPLE.ORG' --maprule '(ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500})'
23.2.1.3. 照合ルールで使用する証明書の発行者の取得
openssl x509
コマンドを使用します。
前提条件
.pem
形式または.crt
形式のユーザー証明書があります。
手順
- 証明書からユーザー情報を取得します。以下を使用して、
openssl
証明書表示および署名ユーティリティーを使用します。- 要求のエンコードされたバージョンの出力を防ぐ
-noout
オプション - 発行者名を出力する
-issuer
オプション - 証明書を読み込む入力ファイル名を指定する
-in
オプション - 最も具体的な相対識別名 (RDN) で出力を最初に表示する
RFC2253
値と共に使用する-nameopt
オプション
入力ファイルに Identity Management 証明書が含まれる場合、コマンドの出力には、Organisation
情報を使用して発行者が定義されていることが示されてます。# openssl x509 -noout -issuer -in idm_user.crt -nameopt RFC2253 issuer=CN=Certificate Authority,O=REALM.EXAMPLE.COM
入力ファイルに Active Directory 証明書が含まれる場合は、コマンドの出力に、Domain Component
情報を使用して発行者が定義されていることが示されます。# # openssl x509 -noout -issuer -in ad_user.crt -nameopt RFC2253 issuer=CN=AD-WIN2012R2-CA,DC=AD,DC=EXAMPLE,DC=COM
- 必要に応じて、証明書の発行者が、
ad.example.com
ドメインのAD-WIN2012R2-CA
展開したで、証明書の発行先が IdM のユーザーアカウントのcertmapdata
エントリーに一致していなければならないことを指定する照合ルールに基づいて、コマンドラインで新しいマッピングルールを作成するには、次のコマンドを実行します。# ipa certmaprule-add simple_rule --matchrule '<ISSUER>CN=AD-WIN2012R2-CA,DC=AD,DC=EXAMPLE,DC=COM' --maprule '(ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500})'
その他の情報
certmap
コマンドの詳細は、照合ルールおよびマッピングルールで対応している形式に関する情報、ならびに優先度およびドメインフィールドの説明が含まれます。man ページの sss-certmap(5) を参照してください。
23.2.2. IdM に保存されているユーザーの証明書マッピングの設定
前提条件
- IdM にユーザーがアカウントがあります。
- 管理者が、ユーザーエントリーに追加する証明書全体または証明書マッピングデータのいずれかを所有しています。
23.2.2.1. IdM での証明書マッピングルールの追加
23.2.2.1.1. IdM Web UI での証明書マッピングルールの追加
- 管理者として IdM Web UI にログインします。
図23.1 IdM Web UI での新規証明書マッピングルールの追加
- ルール名を入力します。
- マッピングルールを入力します。たとえば、IdM に提示された任意の証明書の
Issuer
エントリーおよびSubject
エントリーを検索し、この提示された証明書の 2 つのエントリーで見つかった情報に基づいて認証するかどうかを確認するには、以下を入力します。(ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500})
- 照合ルールを入力します。たとえば、
EXAMPLE.ORG
組織のSmart Card CA
が発行する証明書のみを許可するには、次のコマンドを実行します。<ISSUER>CN=Smart Card CA,O=EXAMPLE.ORG
図23.2 IdM Web UI での証明書マッピングルールの詳細の入力
- ダイアログボックスの下部にあるをクリックしてルールを追加し、ダイアログボックスを閉じます。
- SSSD (System Security Services Daemon) は、証明書マッピングルールを定期的に再読み込みします。新たに作成したルールが強制的にすぐに読み込まれるようにするには、SSSD を再起動します。
# systemctl restart sssd
23.2.2.1.2. コマンドラインを使用した証明書マッピングルールの追加
- 管理者の認証情報を取得します。
# kinit admin
- マッピングルールと、そのマッピングルールがベースとなっているマッチングルールを入力します。たとえば、提示した証明書の
Issuer
エントリーおよびSubject
エントリーを IdM で検索し、この提示された証明書の 2 つのエントリーで見つかった情報に基づいて、EXAMPLE.ORG
組織のSmart Card CA
で発行された証明書のみを確認します。# ipa certmaprule-add rule_name --matchrule '<ISSUER>CN=Smart Card CA,O=EXAMPLE.ORG' --maprule '(ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500})' ------------------------------------------------------- Added Certificate Identity Mapping Rule "rule_name" ------------------------------------------------------- Rule name: rule_name Mapping rule: (ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500}) Matching rule: <ISSUER>CN=Smart Card CA,O=EXAMPLE.ORG Enabled: TRUE
- SSSD (System Security Services Daemon) は、証明書マッピングルールを定期的に再読み込みします。新たに作成したルールが強制的にすぐに読み込まれるようにするには、SSSD を再起動します。
# systemctl restart sssd
23.2.2.2. IdM のユーザーエントリーへの証明書マッピングデータの追加
23.2.2.2.1. IdM Web UI のユーザーエントリーへの証明書マッピングデータの追加
- 管理者として IdM Web UI にログインします。
- ユーザーの証明書を自由に使用できる場合は、以下を行います。
- コマンドラインインターフェースで、
cat
ユーティリティーまたはテキストエディターを使用して証明書を表示します。# [root@server ~]# cat idm_user_certificate.pem -----BEGIN CERTIFICATE----- MIIFFTCCA/2gAwIBAgIBEjANBgkqhkiG9w0BAQsFADA6MRgwFgYDVQQKDA9JRE0u RVhBTVBMRS5DT00xHjAcBgNVBAMMFUNlcnRpZmljYXRlIEF1dGhvcml0eTAeFw0x ODA5MDIxODE1MzlaFw0yMDA5MDIxODE1MzlaMCwxGDAWBgNVBAoMD0lETS5FWEFN [...output truncated...]
- 証明書をコピーします。
- IdM Web UI で、Certificate の横にある をクリックして、開いたウィンドウに証明書を貼り付けます。
図23.3 ユーザーの証明書マッピングデータの追加: 証明書
または、ユーザーの証明書を自由に入手できないが、証明書の発行者
および発行先
が分かっている場合は、Issuer and subject のラジオボタンをオンにして、各ボックスに値を入力します。図23.4 ユーザーの証明書マッピングデータの追加: 発行者および件名
- 必要に応じて、
.pem
形式の証明書全体へのアクセスがある場合は、ユーザーと証明書がリンクされていることを確認します。sss_cache
ユーティリティーを使用して、SSSD キャッシュでユーザーの記録を無効にし、ユーザーの情報を強制的に再読み込みします。# sss_cache -u user_name
- IdM ユーザーの証明書が含まれるファイルの名前を使用して、
ipa certmap-match
コマンドを実行します。# ipa certmap-match idm_user_cert.pem -------------- 1 user matched -------------- Domain: IDM.EXAMPLE.COM User logins: idm_user ---------------------------- Number of entries returned 1 ----------------------------
この出力では、証明書マッピングデータがユーザーに追加され、「IdM での証明書マッピングルールの追加」で定義された対応するマッピングルールが存在することが確認されます。これは、定義された証明書マッピングデータと一致する任意の証明書を使用して、ユーザーとして認証できることを意味します。
23.2.2.2.2. コマンドラインでユーザーエントリーへの証明書マッピングデータの追加
- 管理者の認証情報を取得します。
# kinit admin
- ユーザーの証明書を自由に使用できる場合は、
ipa user-add-cert
コマンドを使用して、ユーザーアカウントに証明書を追加します。# CERT=`cat idm_user_cert.pem | tail -n +2 | head -n -1 | tr -d '\r\n'\` # ipa user-add-certmapdata idm_user --certificate $CERT
または、利用できるユーザーの証明書がなく、ユーザーの証明書のSubject
とSubject
が分かっている場合は、次のコマンドを実行します。# ipa user-add-certmapdata idm_user --subject "O=EXAMPLE.ORG,CN=test" --issuer "CN=Smart Card CA,O=EXAMPLE.ORG" -------------------------------------------- Added certificate mappings to user "idm_user" -------------------------------------------- User login: idm_user Certificate mapping data: X509:<I>O=EXAMPLE.ORG,CN=Smart Card CA<S>CN=test,O=EXAMPLE.ORG
- 必要に応じて、
.pem
形式の証明書全体へのアクセスがある場合は、ユーザーと証明書がリンクされていることを確認します。sss_cache
ユーティリティーを使用して、SSSD キャッシュでユーザーの記録を無効にし、ユーザーの情報を強制的に再読み込みします。# sss_cache -u user_name
- IdM ユーザーの証明書が含まれるファイルの名前を使用して、
ipa certmap-match
コマンドを実行します。# ipa certmap-match idm_user_cert.pem -------------- 1 user matched -------------- Domain: IDM.EXAMPLE.COM User logins: idm_user ---------------------------- Number of entries returned 1 ----------------------------
23.2.3. AD ユーザーエントリーに完全な証明書が含まれるユーザー向け証明書マッピングの設定
前提条件
- IdM にユーザーアカウントがありません。
- ユーザーに、証明書を含む AD のアカウントがあります。
- IdM 管理者が、IdM 証明書マッピングルールが基になっているデータにアクセスできます。
23.2.3.1. IdM Web UI を使用して、AD ユーザーエントリーに完全な証明書が含まれるユーザーに証明書マッピングルールの追加
- 管理者として IdM Web UI にログインします。
図23.5 IdM Web UI での新規証明書マッピングルールの追加
- ルール名を入力します。
- マッピングルールを入力します。認証のために IdM に提示される証明書全体を、AD で利用可能なものと比較するには、次を使用します。
(userCertificate;binary={cert!bin})
- マッチングルールを入力します。たとえば、
AD.EXAMPLE.COM
ドメインのAD-ROOT-CA
で発行された証明書のみが認証できるようにするには、次を使用します。<ISSUER>CN=AD-ROOT-CA,DC=ad,DC=example,DC=com
図23.6 AD に保存されている証明書を持つユーザーに対する証明書マッピングルール
- SSSD (System Security Services Daemon) は、証明書マッピングルールを定期的に再読み込みします。新たに作成したルールが強制的にすぐに読み込まれるようにするには、SSSD を再起動します。
# systemctl restart sssd
23.2.3.2. コマンドラインで AD ユーザーエントリーに完全な証明書が含まれるユーザーに証明書マッピングルールの追加
- 管理者の認証情報を取得します。
# kinit admin
- マッピングルールと、そのマッピングルールがベースとなる照合ルールを入力します。AD で利用可能なものと比較して認証用に提示される証明書全体を持ち、
AD.EXAMPLE.COM
ドメインのAD-ROOT-CA
が発行する証明書のみを認証できるようにするには、次のコマンドを実行します。# ipa certmaprule-add simpleADrule --matchrule '<ISSUER>CN=AD-ROOT-CA,DC=ad,DC=example,DC=com' --maprule '(userCertificate;binary={cert!bin})' --domain ad.example.com ------------------------------------------------------- Added Certificate Identity Mapping Rule "simpleADrule" ------------------------------------------------------- Rule name: simpleADrule Mapping rule: (userCertificate;binary={cert!bin}) Matching rule: <ISSUER>CN=AD-ROOT-CA,DC=ad,DC=example,DC=com Domain name: ad.example.com Enabled: TRUE
- SSSD (System Security Services Daemon) は、証明書マッピングルールを定期的に再読み込みします。新たに作成したルールが強制的にすぐに読み込まれるようにするには、SSSD を再起動します。
# systemctl restart sssd
23.2.4. ユーザー証明書をユーザーアカウントにマッピングするように AD が設定されている場合の証明書マッピングの設定
前提条件
- IdM にユーザーアカウントがありません。
- ユーザーが、AD に IdM の
certmapdata
属性に相当するaltSecurityIdentities
属性を含むアカウントを持っている。 - IdM 管理者が、IdM 証明書マッピングルールが基になっているデータにアクセスできます。
23.2.4.1. 信頼できる AD ドメインがユーザー証明書にマッピングするように設定されている場合に Web UI で証明書マッピングルールの追加
- 管理者として IdM Web UI にログインします。
図23.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
図23.8 AD がマッピング用に設定されている場合の証明書マッピングルール
- SSSD (System Security Services Daemon) は、証明書マッピングルールを定期的に再読み込みします。新たに作成したルールが強制的にすぐに読み込まれるようにするには、SSSD を再起動します。
# systemctl restart sssd
23.2.4.2. 信頼できる AD ドメインがユーザー証明書に設定されている場合にコマンドラインを使用した証明書マッピングルールの追加
- 管理者の認証情報を取得します。
# 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
- SSSD (System Security Services Daemon) は、証明書マッピングルールを定期的に再読み込みします。新たに作成したルールが強制的にすぐに読み込まれるようにするには、SSSD を再起動します。
# systemctl restart sssd
23.2.4.3. AD 側での証明書マッピングデータの確認
altSecurityIdentities
属性は、IdM の certmapdata
ユーザー属性に相当する Active Directory (AD) です。ユーザー証明書をユーザーアカウントにマッピングするように信頼できる AD ドメインが設定されている場合、IdM システム管理者は altSecurityIdentities
属性が AD のユーザーエントリーで正しく設定されていることを確認する必要があります。
ldapsearch
コマンドを使用します。
adserver.ad.example.com
サーバーで、ad_user
のユーザーエントリーに altSecurityIdentities
属性が設定されていること、および 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
23.2.5. AD ユーザーエントリーに証明書やマッピングデータを含まれていない場合の証明書マッピングの設定
前提条件
- IdM にユーザーアカウントがありません。
- ユーザーは AD にアカウントを持っていますが、AD には証明書全体も
altSecurityIdentities
属性も含まれていません。AD は IdMcertmapdata
属性に相当します。 - IdM 管理者が、IdM の AD ユーザーの
user ID override
に追加する AD ユーザー証明書全体を所有しています。
23.2.5.1. AD ユーザーエントリーに証明書やマッピングデータが含まれていない場合に、Web UI を使用した証明書マッピングルールの追加
- 管理者として IdM Web UI にログインします。
図23.9 IdM Web UI での新規証明書マッピングルールの追加
- ルール名を入力します。
- マッピングルールを入力します。認証のために IdM に提示された証明書全体を、IdM の AD ユーザーエントリーのユーザー ID オーバーライドエントリーに保存されている証明書と比較するには、次のコマンドを実行します。
(userCertificate;binary={cert!bin})
- マッチングルールを入力します。たとえば、
AD.EXAMPLE.COM
ドメインのAD-ROOT-CA
で発行された証明書のみが認証できるようにするには、次を使用します。<ISSUER>CN=AD-ROOT-CA,DC=ad,DC=example,DC=com
- ドメイン名を入力します。たとえば、
ad.example.com
ドメインでユーザーを検索するには、以下を行います。図23.10 AD に保存されている証明書やマッピングデータのないユーザーに対する証明書マッピングルール
- SSSD (System Security Services Daemon) は、証明書マッピングルールを定期的に再読み込みします。新たに作成したルールが強制的にすぐに読み込まれるようにするには、SSSD を再起動します。
# systemctl restart sssd
23.2.5.2. AD ユーザーエントリーに証明書やマッピングデータが含まれていない場合に、コマンドラインで証明書マッピングルールの追加
- 管理者の認証情報を取得します。
# kinit admin
- マッピングルールと、そのマッピングルールがベースになっている照合ルールを入力します。IdM の AD ユーザーエントリーのユーザー ID オーバーライドエントリーに保存されている証明書と比較して認証用に提示される証明書全体を持ち、
AD.EXAMPLE.COM
ドメインのAD-ROOT-CA
により発行された証明書のみを認証できるようにするには、以下を行います。# ipa certmaprule-add simpleADrule --matchrule '<ISSUER>CN=AD-ROOT-CA,DC=ad,DC=example,DC=com' --maprule '(userCertificate;binary={cert!bin})' --domain ad.example.com ------------------------------------------------------- Added Certificate Identity Mapping Rule "simpleADrule" ------------------------------------------------------- Rule name: simpleADrule Mapping rule: (userCertificate;binary={cert!bin}) Matching rule: <ISSUER>CN=AD-ROOT-CA,DC=ad,DC=example,DC=com Domain name: ad.example.com Enabled: TRUE
- SSSD (System Security Services Daemon) は、証明書マッピングルールを定期的に再読み込みします。新たに作成したルールが強制的にすぐに読み込まれるようにするには、SSSD を再起動します。
# systemctl restart sssd
23.2.5.3. Web UI から AD ユーザーの ID オーバーライドへの証明書の追加
- 管理者として IdM Web UI にログインします。
図23.11 IdM Web UI での新規ユーザー ID オーバーライドの追加
- User to override フィールドに、ユーザー名を
user_name@domain_name
の形式で入力します。 - ユーザーの証明書を Certificate フィールドにコピーします。
図23.12 AD ユーザー向けのユーザー ID オーバーライドの設定
- 必要に応じて、ユーザーと証明書がリンクされていることを確認します。
sss_cache
ユーティリティーを使用して、SSSD キャッシュでユーザーの記録を無効にし、ユーザーの情報を強制的に再読み込みします。# sss_cache -u ad_user@ad.example.com
- AD ユーザーの証明書を保存しているファイルの名前を追加して、
ipa certmap-match
コマンドを実行します。# ipa certmap-match ad_user_cert.pem -------------- 1 user matched -------------- Domain: AD.EXAMPLE.COM User logins: ad_user@ad.example.com ---------------------------- Number of entries returned 1 ----------------------------
この出力では、証明書マッピングデータがad_user@ad.example.com
に追加され、対応するマッピングルールが存在することを確認します。これは、定義された証明書マッピングデータと一致する任意の証明書を使用して、ad_user@ad.example.com
として認証できることを意味します。
23.2.5.4. コマンドラインで AD ユーザーの ID オーバーライドへの証明書の追加
- 管理者の認証情報を取得します。
# kinit admin
ipa idoverrideuser-add-cert
コマンドを使用して、ユーザーの証明書をユーザーアカウントに追加します。# CERT=`cat ad_user_cert.pem | tail -n +2 | head -n -1 | tr -d '\r\n'\` # ipa idoverrideuser-add-cert ad_user@ad.example.com --certificate $CERT
- 必要に応じて、ユーザーと証明書がリンクされていることを確認します。
sss_cache
ユーティリティーを使用して、SSSD キャッシュでユーザーの記録を無効にし、ユーザーの情報を強制的に再読み込みします。# sss_cache -u ad_user@ad.example.com
- AD ユーザーの証明書を保存しているファイルの名前を追加して、
ipa certmap-match
コマンドを実行します。# ipa certmap-match ad_user_cert.pem -------------- 1 user matched -------------- Domain: AD.EXAMPLE.COM User logins: ad_user@ad.example.com ---------------------------- Number of entries returned 1 ----------------------------
この出力では、証明書マッピングデータがad_user@ad.example.com
に追加され、対応するマッピングルールが存在することを確認します。これは、定義された証明書マッピングデータと一致する任意の証明書を使用して、ad_user@ad.example.com
として認証できることを意味します。
23.2.6. 複数の ID マッピングルールを 1 つに統合
|
(or) 文字を個々のマッピングルールの前に置き、()
括弧を使用してそのルールを区切ります。以下に例を示します。
$ ipa certmaprule-add ad_cert_for_ipa_and_ad_users \ --maprule='(|(ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500})(altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<S>{subject_dn!ad_x500}))' \ --matchrule='<ISSUER>CN=AD-ROOT-CA,DC=ad,DC=example,DC=com' \ --domain=ad.example.com
--maprule
オプションの絞り込み定義には以下の条件が含まれます。
ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500}
は、「IdM での証明書マッピングルールの追加」で説明されているように、スマートカード証明書の発行先および発行者を、IDM ユーザーアカウントの ipacertmapdata 属性値にリンクするフィルターです。altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<S>{subject_dn!ad_x500}
は、「ユーザー証明書をユーザーアカウントにマッピングするように AD が設定されている場合の証明書マッピングの設定」で説明されているように、スマートカード証明書の発行先および発行者を、AD ユーザーアカウントの altSecurityIdentities 属性値にリンクするフィルターです。--domain=ad.example.com
オプションを追加すると、指定された証明書にマッピングされたユーザーがローカルのidm.example.com
ドメインだけでなく、ad.example.com
ドメインでも検索されます。
--maprule
オプションのフィルター定義では、論理演算子 |
(or) が使用できるため、複数の条件を指定できます。ここでは、ルールが 1 つ以上の条件を満たす全ユーザーアカウントをマッピングします。
$ ipa certmaprule-add ipa_cert_for_ad_users \ --maprule='(|(userCertificate;binary={cert!bin})(ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500})(altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<S>{subject_dn!ad_x500}))' \ --matchrule='<ISSUER>CN=Certificate Authority,O=REALM.EXAMPLE.COM' \ --domain=idm.example.com --domain=ad.example.com
--maprule
オプションの絞り込み定義には以下の条件が含まれます。
userCertificate;binary={cert!bin}
は、証明書全体を含むユーザーエントリーを返すフィルターです。AD ユーザーの場合、このタイプのフィルターの作成については、「AD ユーザーエントリーに証明書やマッピングデータを含まれていない場合の証明書マッピングの設定」 で詳しく説明しています。ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500}
は、「IdM での証明書マッピングルールの追加」で説明されているように、スマートカード証明書の発行先および発行者を、IDM ユーザーアカウントのipacertmapdata
属性値にリンクするフィルターです。altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<S>{subject_dn!ad_x500}
は、「ユーザー証明書をユーザーアカウントにマッピングするように AD が設定されている場合の証明書マッピングの設定」で説明されているように、スマートカード証明書の発行先および発行者を、AD ユーザーアカウントのaltSecurityIdentities
属性値にリンクするフィルターです。
--maprule
オプションのフィルター定義では、論理演算子 | (or) が使用できるため、複数の条件を指定できます。ここでは、ルールが 1 つ以上の条件を満たす全ユーザーアカウントをマッピングします。
このページには機械翻訳が使用されている場合があります (詳細はこちら)。