第15章 複数のアイデンティティーマッピングルールを 1 つに結合
複数の 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
$ 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 ユーザーアカウントのipacertmapdata属性の値にリンクするフィルターです。 -
altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<S>{subject_dn!ad_x500}は、スマートカード証明書のサブジェクトと発行者を 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
$ 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}は、証明書全体を含むユーザーエントリーを返すフィルターです。 -
ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500}は、スマートカード証明書のサブジェクトと発行者を、IdM ユーザーアカウントのipacertmapdata属性の値にリンクするフィルターです。 -
altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<S>{subject_dn!ad_x500}は、スマートカード証明書のサブジェクトと発行者を AD ユーザーアカウントのaltSecurityIdentities属性の値にリンクするフィルターです。
--maprule オプションのフィルター定義では、論理演算子 | (or) を使用できるため、複数の条件を指定できます。この場合、ルールは、1 つ以上の基準を満たすユーザーアカウントをすべてマップします。