5.11.2. 管理インターフェースに対する LDAP を使用した認証
- LDAP サーバーへアウトバウンド接続を作成します。
- LDAP 対応のセキュリティーレルムを作成します。
- 管理インターフェースの新規セキュリティードメインを参照します。
LDAP サーバーへの送信接続の作成
LDAP 送信接続には、以下の属性を使用することができます。
| 属性 | 必須 | 説明 |
|---|---|---|
url | はい |
ディレクトリーサーバーの URL アドレス。
|
search-dn | いいえ |
検索の実行が許可されているユーザーの完全識別名 (DN)。
|
search-credentials | いいえ |
検索を実行する権限のあるユーザーのパスワード。
|
initial-context-factory | いいえ |
接続を確立するときに使用する初期コンテキストファクトリー。デフォルトは
com.sun.jndi.ldap.LdapCtxFactory です。
|
security-realm | いいえ |
接続の確立時に使用する設定済みの
SSLContext を取得するために参照するセキュリティーレルム。
|
例5.10 LDAP 送信接続の追加
- Search DN:
cn=search,dc=acme,dc=com - 認証情報の検索:
myPass - URL:
ldap://127.0.0.1:389
/host=master/core-service=management/security-realm=ldap_security_realm:add
/host=master/core-service=management/ldap-connection=ldap_connection/:add(search-credential=myPass,url=ldap://127.0.0.1:389,search-dn="cn=search,dc=acme,dc=com")
LDAP 対応セキュリティーレルムの作成
管理インターフェースは、デフォルトで設定されたプロパティーファイルベースのセキュリティーレルムの代わりに LDAP サーバーに対して認証できます。LDAP オーセンティケーターは、最初にリモートディレクトリーサーバーへ接続を確立します。その後、ユーザーが認証システムに渡すユーザー名を使用して検索を実行し、LDAP レコードの完全修飾識別名 (DN) を探します。ユーザーの DN を認証情報として使用し、ユーザーが指定したパスワードと、新しい接続が確立されます。LDAP サーバーへの認証に成功すると、DN が有効であることが検証されます。
- connection
- LDAP ディレクトリーへの接続に使用する
outbound-connectionsで定義された接続の名前。 - advanced-filter
- 提供されたユーザー ID に基づいてユーザーを検索するために使用される、完全に定義されたフィルター。フィルターには、
{0}形式の変数が含まれている必要があります。これは、ユーザーが指定したユーザー名で後ほど置き換えられます。 - base-dn
- ユーザー検索を開始するためのコンテキストの識別名
- 再帰
- 検索が LDAP ディレクトリーツリー全体で再帰的であるか、指定したコンテキストのみを検索するか。デフォルトは
falseです。 - user-dn
- 識別名を保持するユーザーの属性。この後、ユーザー完了時の認証テストに使用されます。デフォルトは
5です。 - username-attribute
- ユーザーを検索する属性の名前。このフィルターは、ユーザーが入力したユーザー名が指定した属性と一致する単純な検索を実行します。
- allow-empty-passwords
- この属性は、空のパスワードを許可するかどうかを決定します。この属性のデフォルト値は
falseです。 username-filterまたはadvanced-filterのいずれかを指定する必要があります。advanced-filter属性には、標準の LDAP 構文にフィルタークエリーが含まれます。以下に例を示します。(&(sAMAccountName={0})(memberOf=cn=admin,cn=users,dc=acme,dc=com))
例5.11 LDAP 対応のセキュリティーレルムを示す XML
- connection -
ldap_connection - base-dn -
cn=users,dc=acme,dc=com. - username-filter -
attribute="sambaAccountName"
<security-realm name="ldap_security_realm">
<authentication>
<ldap connection="ldap_connection" base-dn="cn=users,dc=acme,dc=com">
<username-filter attribute="sambaAccountName" />
</ldap>
</authentication>
</security-realm>
例5.12 LDAP セキュリティーレルムの追加
/host=master/core-service=management/security-realm=ldap_security_realm/authentication=ldap:add(base-dn="DC=mycompany,DC=org", recursive=true, username-attribute="MyAccountName", connection="ldap_connection")
管理インターフェースへの新規セキュリティーレルムの適用
セキュリティーレルムの作成後、管理インターフェースの設定でそのレルムを参照する必要があります。管理インターフェースは HTTP ダイジェスト認証にセキュリティーレルムを使用します。
例5.13 HTTP インターフェースへのセキュリティーレルムの適用
/host=master/core-service=management/management-interface=http-interface/:write-attribute(name=security-realm,value=ldap_security_realm)
例5.14 セキュリティーレルムのネイティブインターフェースへの適用
/host=master/core-service=management/management-interface=native-interface/:write-attribute(name=security-realm,value=ldap_security_realm)