第8章 設定ファイルのリファレンス
設定するほとんどのディレクトリーサーバー機能は、ディレクトリーの cn=config
エントリーにあります。ただし、特定の機能については、Directory Server は設定ファイルから設定を読み取ります。本章では、これらのファイルとその設定について説明します。
8.1. certmap.conf
証明書ベースの認証を設定する場合は、/etc/dirsrv/slapd-instance_name/certmap.conf
ファイルが Directory Server が証明書をユーザーエントリーに動的にマッピングする方法を管理します。
/etc/dirsrv/slapd-instance_name/certmap.conf
ファイルは以下のフォーマットを使用します。
certmap alias_name certificate_issuer_DN alias_name:parameter_name value
それぞれの証明書発行者識別名 (DN) に個別の設定を指定できます。別の設定を持たない発行者 DN の場合、default
エントリーの設定が使用されます。以下は、default
エントリーに必要な最小設定です。
certmap default default
また、default
エントリーに利用可能なすべてのパラメーターを設定することができます。Directory Server は、パラメーターが発行者 DN の個別設定で指定されていない場合、それらを使用します。
例8.1 default
エントリーおよび特定の発行者 DN の設定
以下の設定では、o=Example Inc.,c=US
発行者 DN が設定された証明書の個別設定を設定します。他の証明書は、default
エントリーの設定を使用します。
certmap default default default:DNComps dc default:FilterComps mail, cn default:VerifyCert on certmap example o=Example Inc.,c=US example:DNComps
以下のパラメーターを設定できます。
- DNComps
DNComps
パラメーターは、Directory Server がディレクトリー内のユーザーを検索するために使用されるベース DN を生成する方法を決定します。証明書の
subject
フィールドの属性がベース DN と一致する場合は、DNComps
パラメーターをこれらの属性に設定します。複数の属性はコンマで区切ります。ただし、DNComps
パラメーターの属性の順序は、証明書のサブジェクトの順番と一致している必要があります。たとえば、証明書の発行先が
e=user_name@example.com,cn=user_name,o=Example Inc.,c=US
で、ユーザーを検索する際のベース DN として Directory Server がcn=user_name,o=Example Inc.,c=US
を使用する場合は、DNComps
パラメーターをcn, o, c
に設定します。重要DNComps
パラメーターに設定された属性の値は、データベース内で一意でなければなりません。証明書の
subject
フィールドからベース DN を生成できない場合は、パラメーターを空の値に設定します。この場合、Directory Server はFilterComps
パラメーターの設定から生成されたフィルターを使用してディレクトリー全体でユーザーを検索します。たとえば、証明書の発行先が
e=user_name@example.com,cn=user_name,o=Example Inc.,c=US
だが、Directory Server はデータをdc=example,dc=com
エントリーに保存する場合、必要なコンポーネントが発行先の一部ではないため、Directory Server は証明書の発行先から有効なベース DN を生成することができません。この場合は、DNComps
を空の文字列に設定し、ディレクトリー全体でユーザーを検索します。証明書の
subject
フィールドのいずれかが Directory Server のユーザーの DN に完全に一致する場合や、CmapLdapAttr
パラメーターの設定を使用する場合は、このパラメーターをコメントアウトするか、設定しないでください。または、ハードコードされたベース DN を使用するように、
cn=config
エントリーでnsslapd-certmap-basedn
パラメーターを設定します。
- FilterComps
このパラメーターは、Directory Server が使用する証明書の
subject
フィールドからの属性を設定し、ユーザーの検索に使用する検索フィルターを生成します。このパラメーターを、証明書のサブジェクトで使用される属性のコンマ区切りリストに設定しますDirectory Server はこれらの属性をフィルター内の
AND
操作で使用します。注記証明書サブジェクトは、メールアドレスにデフォルトの Directory Server スキーマには存在しない
e
属性を使用します。このため、Directory Server は自動的にこの属性をmail
属性にマッピングします。つまり、FilterComps
パラメーターでmail
属性を使用すると、Directory Server は証明書のサブジェクトからe
属性の値を読み取ります。たとえば、証明書の発行先が
e=user_name@example.com,cn=user_name,dc=example,dc=com,o=Example Inc.,c=US
で、(&(mail=username@domain)(cn=user_name))
フィルターを動的に生成する場合は、FilterComps
パラメーターをmail,cn
に設定します。-
パラメーターがコメントアウトまたは空の値に設定されていると、
(objectclass=*)
フィルターが使用されます。
- verifycert
Directory Server は、証明書が信頼できる認証局 (CA) によって発行されたかどうかを常に検証します。ただし、追加で
verifycert
パラメーターをon
に設定すると、Directory Server は、証明書が、ユーザーのuserCertificate
バイナリー属性に保存されている DER (Distinguished Encoding Rules) 形式の証明書と一致することを確認します。このパラメーターを設定しないと、
verifycert
は無効になります。- CmapLdapAttr
-
ユーザーエントリーに、ユーザー証明書の発行先 DN を保存する属性が含まれている場合は、
CmapLdapAttr
をこの属性名に設定しますDirectory Server はこの属性およびサブジェクト DN を使用してユーザーを検索します。この場合、FilterComps
パラメーターの属性に基づいてフィルターが生成されません。 - library
- 共有ライブラリーまたは動的リンクライブラリー (DLL) ファイルへのパス名を設定します。この設定は、証明書 API を使用して独自のプロパティーを作成する場合にのみ使用します。このパラメーターは非推奨となっており、今後のリリースで削除されます。
- InitFn
-
カスタムライブラリーを使用する場合、
init
関数の名前を設定します。この設定は、証明書 API を使用して独自のプロパティーを作成する場合にのみ使用します。このパラメーターは非推奨となっており、今後のリリースで削除されます。
Directory Server がマッチするユーザーを検索する場合、その検索はエントリーを 1 つだけ返す必要があります。検索が複数のエントリーを返すと、Directory Server は multiple matches
エラーをログに記録し、認証に失敗します。
詳細は、Directory Server 管理ガイドの該当するセクションを参照してください。