7.4. LDAP ディレクトリーへの公開の設定
公開を設定する一般的なプロセスには、証明書または CRL を特定の場所に公開するように発行者を設定することが含まれます。使用する場所の数に応じて、単一のパブリッシャーまたは複数のパブリッシャーが存在する可能性があります。場所は、証明書と CRL、または証明書の種類などのより細かい定義によって分割できます。ルールは、発行者に関連付けられることにより、発行するタイプと場所を決定します。
LDAP 公開の設定は、ディレクトリーを設定するための追加のステップを除き、他の公開手順と似ています。
- 公開される証明書の Directory Server を設定します。特定の属性をエントリーに追加し、ID をバインドし、認証方法を設定する必要があります。
- 公開された各オブジェクトのパブリッシャーを設定します (CA 証明書、クロスペア証明書、CRL、およびユーザー証明書)。パブリッシャーは、オブジェクトを格納する属性を宣言します。デフォルトで設定される属性は、各オブジェクトタイプを保存する X.500 標準属性です。この属性はパブリッシャーで変更できますが、通常は LDAP パブリッシャーを変更する必要はありません。
証明書のサブジェクト名からエントリーの DN を導出できるようにマッパーを設定します。通常、CA 証明書、CRL、およびユーザー証明書に設定する必要はありません。証明書タイプに複数のマッパーを設定できます。これは、たとえば、ディレクトリーツリーの異なる部分にある会社の異なる部門の 2 組のユーザーの証明書を公開する場合に役立ちます。グループごとにマッパーが作成され、ツリーの異なるブランチを指定します。
マッパーの設定に関する詳細は、「マッパーの作成」 を参照してください。
- 「ルールの作成」 で説明されているように、パブリッシャーをマッパーに接続するルールを作成します。
- 「公開の有効化」 の説明に従って、公開を有効にします。
CA から LDAP、LDAP から OCSP への CRL 公開は、Common-Criteria で評価済みの CRL 公開方法です。設定例については、計画、インストール、デプロイメントのガイド (Common Criteria Edition) の 7.4.7「CRL 公開の設定」を参照してください。
7.4.1. LDAP ディレクトリーの設定
証明書および CRL を公開する前に、Directory Server がパブリッシュシステムと連携するように設定する必要があります。つまり、ユーザーエントリーには証明書情報を受信できる属性が必要で、CRL を表すためにエントリーを作成する必要があります。
CA のエントリーを設定します。Certificate Manager が CA 証明書および CRL を公開するには、ディレクトリーには CA のエントリーが含まれている必要があります。
ヒントLDAP 公開が設定されている場合、Certificate Manager はディレクトリー内の CA のエントリーを自動的に作成または変換します。このオプションは CA マッパーインスタンスおよび CRL マッパーインスタンスの両方で設定され、デフォルトで有効になっています。ディレクトリーが Certificate Manager がディレクトリーでエントリーを作成しないようにする場合は、これらのマッパーインスタンスでこのオプションを無効にし、CA を手動でディレクトリーに追加します。
CA のエントリーをディレクトリーに追加する場合は、CA の DN に基づいてエントリータイプを選択します。
-
CA の DN が
cn
コンポーネントで始まる場合は、CA の新規person
エントリーを作成します。別のタイプのエントリーを選択すると、cn
コンポーネントが指定されない場合があります。 CA の DN が
ou
コンポーネントで始まる場合は、CA の新規organizationalunit
エントリーを作成します。このエントリーは、
pkiCA
またはcertificationAuthority
オブジェクトクラス内にある必要はありません。Certificate Manager は、このエントリーを CA の署名証明書を公開して、pkiCA
またはcertificationAuthority
オブジェクトクラスに自動的に変換します。注記pkiCA
オブジェクトクラスは RFC 4523 に定義され、certificationAuthority
オブジェクトクラスは (obsolete) RFC 2256 に定義されています。どちらのオブジェクトクラスも、Directory Server が使用するスキーマ定義に応じて受け入れることができます。場合によっては、両方のオブジェクトクラスを同じ CA エントリーに使用できます。
ディレクトリーエントリーの作成に関する詳細は、Red Hat Directory Server のドキュメントを参照してください。
-
CA の DN が
CA およびユーザーディレクトリーエントリーに正しいスキーマ要素を追加します。
Certificate Manager が証明書と CRL をディレクトリーに公開できるようにするには、特定の属性およびオブジェクトクラスで設定する必要があります。
Object Type スキーマ 理由 エンドエンティティー証明書
userCertificate;binary (属性)
これは、証明書マネージャーが証明書をパブリッシュする属性です。
これは多値の属性で、各値は DER でエンコードされたバイナリー X.509 証明書です。
inetOrgPerson
という名前の LDAP オブジェクトクラスでは、この属性が許可されます。strongAuthenticationUser
オブジェクトクラスはこの属性を許可し、他のオブジェクトクラスと組み合わせて、他のオブジェクトクラスを持つディレクトリーエントリーに証明書を公開できるようにすることができます。Certificate Manager は、このオブジェクトクラスを対応する Directory Server のスキーマテーブルに自動的に追加しません。見つかったディレクトリーオブジェクトが
userCertificate;binary
属性を許可しないと、証明書の追加または削除に失敗します。CA 証明書
caCertificate;binary (属性)
これは、証明書マネージャーが証明書をパブリッシュする属性です。
Certificate Manager は、サーバーの起動時に独自の CA ディレクトリーエントリーに独自の CA 証明書を公開します。エントリーは、Certificate Manager の発行者名に対応します。
これは、
pkiCA
またはcertificationAuthority
オブジェクトクラスの必須の属性です。Certificate Manager は、CA のディレクトリーエントリーを見つけると、このオブジェクトクラスを CA のディレクトリーエントリーに追加します。CRL
certificateRevocationList;binary (属性)
これは、Certificate Manager が CRL を公開する属性です。
Certificate Manager は、CRL を独自の LDAP ディレクトリーエントリーに公開します。エントリーは、Certificate Manager の発行者名に対応します。
これは、
pkiCA
またはcertificationAuthority
オブジェクトクラスの属性です。属性の値は DER でエンコードされたバイナリー X.509 CRL です。CRL をエントリーに公開するには、CA のエントリーにpkiCA
またはcertificateAuthority
オブジェクトクラスがすでに含まれている必要があります。デルタ CRL
deltaRevocationList;binary (属性)
これは、Certificate Manager が証明書を公開する属性です。Certificate Manager は、フル CRL とは別に、デルタ CRL を独自の LDAP ディレクトリーエントリーに公開します。デルタ CRL エントリーは、Certificate Manager の発行者名に対応します。
この属性は、
deltaCRL
またはcertificationAuthority-V2
オブジェクトクラスに属します。属性の値は DER でエンコードされたバイナリー X.509 delta CRL です。Directory Server にアクセスするために使用する Certificate Manager のバインド DN を設定します。
Certificate Manager は、証明書と CRL をディレクトリーに公開するために、ディレクトリーへの読み取り/書き込み権限を持っている必要があります。これにより、Certificate Manager は、証明書関連情報を含むユーザーエントリーと、CA の証明書および CRL 関連情報を含む CA エントリーを変更できます。
バインド DN エントリーは、以下のいずれかになります。
- Directory Manager などの書き込みアクセスを持つ既存の DN。
書き込みアクセスが付与された新規ユーザー。エントリーは、Certificate Manager の DN で識別することができます (例:
cn=testCA, ou=Research Dept, o=Example Corporation, st=California, c=US
)。注記このユーザーに付与される特権を慎重に検討してください。このユーザーは、アカウントの ACL を作成して、そのディレクトリーに書き込みできます。Certificate Manager のエントリーへの書き込みアクセス権限を付与する方法については、Directory Server のドキュメントを参照してください。
Certificate Manager が Directory Server に対して認証を行うためのディレクトリー認証方法を設定します。Basic 認証 (簡易ユーザー名およびパスワード)、クライアント認証なしの SSL、およびクライアント認証を使用する SSL (証明書ベース) の 3 つのオプションがあります。
サーバーとの通信方法の設定は、Red Hat Directory Server のドキュメントを参照してください。
7.4.2. LDAP パブリッシャーの設定
Certificate Manager は、LDAP 公開に関連するパブリッシャーのセットを作成、設定、および有効にします。デフォルトのパブリッシャー (CA 証明書、ユーザー証明書、CRL、およびクロスのペア証明書用) は、証明書および CRL を保存するための X.500 標準属性に準拠しており、変更する必要はありません。
パブリッシャー | 説明 |
---|---|
LdapCaCertPublisher | CA 証明書を LDAP ディレクトリーに公開します。 |
LdapCrlPublisher | CRL を LDAP ディレクトリーに公開します。 |
LdapDeltaCrlPublisher | デルタ CRL を LDAP ディレクトリーに公開します。 |
LdapUserCertPublisher | すべての種類のエンドエンティティー証明書を LDAP ディレクトリーに公開します。 |
LdapCrossCertPairPublisher | 相互署名付き証明書を LDAP ディレクトリーに公開します。 |
7.4.3. マッパーの作成
マッパーは LDAP 公開のみで使用されます。マッパーは、証明書のサブジェクト名と、証明書が公開されるディレクトリーエントリーの DN 間の関係を定義します。Certificate Manager は、使用するエントリーを判断できるように、証明書または証明書要求からエントリーの DN を取得する必要があります。マッパーは、ユーザーエントリーの DN と証明書のサブジェクト名またはその他の入力情報との関係を定義して、エントリーの正確な DN を特定し、ディレクトリーで見つけることができるようにします。
設定すると、Certificate Manager は、最も一般的な関係を定義するマッパーのセットを自動的に作成します。デフォルトのマッパーは、表7.2「デフォルトのマッパー」 にリスト表示されています。
マッパー | 説明 |
---|---|
LdapUserCertMap | ユーザー証明書を公開するために、ディレクトリーでユーザーエントリーの正しい属性を見つけます。 |
LdapCrlMap | CRL を公開するために、ディレクトリーで CA のエントリーの正しい属性を見つけます。 |
LdapCaCertMap | CA 証明書を公開するために、ディレクトリーで CA のエントリーの正しい属性を見つけます。 |
デフォルトのマッパーを使用するには、DN パターンを指定し、ディレクトリーに CA エントリーを作成するかどうかを指定して、各マクロを設定します。他のマッパーを使用するには、マッパーのインスタンスを作成および設定します。詳細は、「マッパープラグインモジュール」 を参照してください。
Certificate Manager コンソールにログインします。
# pkiconsole -d nssdb -n 'optional client cert nickname' https://server.example.com:8443/ca
注記pkiconsole
は非推奨となり、今後のメジャーリリースで新しいブラウザーベースの UI に置き換えられます。pkiconsole
は代替 UI がリリースされるまで引き続き使用できますが、今後新しいブラウザーベースの UI が使用可能になった場合でも pki CLI のサポートおよび改良は継続されるため、現時点ではpkiconsole
に相当するコマンドラインの使用が推奨されます。Configuration タブで、左側のナビゲーションツリーから Certificate Manager を選択します。Publishing を選択し、Mappers を選択します。
設定されたマッパーをリスト表示する Mappers Management タブが右側で開きます。
新しいマッパーインスタンスを作成するには、Select Mapper Plugin Implementation ウィンドウが開き、登録されたマッパーモジュールがリスト表示されます。モジュールを選択し、そのモジュールを編集します。これらのモジュールに関する詳細は、「マッパープラグインモジュール」 を参照してください。
をクリックします。マッパーインスタンスを編集し、
をクリックします。
各マッパーに関する詳細は、「マッパープラグインモジュール」 を参照してください。
7.4.4. 設定の完了: ルールおよび有効化
LDAP 公開のマッパーを設定したら、「ルールの作成」 の説明に従って、公開証明書および CRL のルールを設定します。
設定が完了したら、「公開の有効化」 の説明に従って公開を有効にします。