![]() | |
Sun Java™ System Identity Manager 7.0 リソースリファレンス |
LDAPIdentity Manager は、Lightweight Directory Access Protocol (LDAP) v3 をサポートするために次のリソースアダプタを提供します。
GUI 名
クラス名
LDAP
com.waveset.adapter.LDAPResourceAdapter
LDAP Listener Active Sync
com.waveset.adapter.LDAPListenerActiveSyncAdapter
LDAP アダプタは、LDAP 用のプロビジョニングサービスを提供します。LDAP サーバーのレプリケーションの更新履歴ログを読み取り、それらの変更を Identity Manager ユーザーまたはカスタムワークフローに適用することもできます。
LDAP リスナー Active Sync アダプタは、サーバー上で行われた変更を LDAP リスナーによって検出し、それらをキューに入れ、スケジューリング間隔で処理します。このリスナーは、Identity Manager サーバーを常時接続する必要がある場合のデモを主な目的としています。アダプタが実行されていない間の変更は失われます。
注
LDAP ChangeLog Active Sync アダプタは非推奨になりました。このアダプタのすべての機能は、LDAP リソースアダプタに統合されました。非推奨のアダプタを使用するリソースの既存のインスタンスは引き続き機能しますが、LDAP ChangeLog Active Sync アダプタを使用するリソースを新しく作成することはできません。
リソースを設定する際の注意事項
LDAP アダプタで使用するための Sun JavaTM System Directory Server リソースを設定するには、サーバーを設定して更新履歴ログを有効にし、変更情報の追跡を有効にします。この操作は、ディレクトリサーバーの設定タブで行います。
- 「レプリケーション」フォルダをクリックし、更新履歴ログを有効にします。5.0 以降のサーバーでは、RetroChangelog スナップインも有効にします。設定タブで、プラグインオブジェクトに移動し、旧バージョン形式の更新履歴ログプラグインを選択して有効にします。
- 新規作成または変更されたエントリの特殊な属性を維持するようにサーバーが設定されていることを確認するには、Directory Server コンソールの「設定」タブをクリックし、左側の区画でナビゲーションツリーのルートエントリを選択します。
- 「設定」サブタブをクリックし、「エントリの変更時間を記録」ボックスにチェックマークが付いていることを確認します。
サーバーは、イベントが Identity Manager から起動されたかどうかを判断するために、新しく作成または変更したエントリに、次の属性を追加します。
自己署名付き証明書が実装されたディレクトリサーバーに SSL 経由で接続するには、次の手順を実行します。
- CA 証明書をディレクトリサーバーから一時ファイルにエクスポートします。たとえば、Sun JavaTM System Directory の場合は、次のコマンドを入力します。
certutil -L -d DB_Directory -P slapd-HostName- -n Nickname -a > ds-cert.txt
- この証明書をキーストアにインポートします。
cd $JAVA_HOME/jre/lib/security
keytool -import -file PathTo/ds-cert.txt -keystore ./cacerts
-storepass changeit -trustcacertsIdentity Manager 上で設定する際の注意事項
このリソースに必要な追加のインストール手順はありません。
使用上の注意
ここでは、LDAP リソースアダプタの使用に関する情報を示します。次のトピックで構成されています。
LDAP リソース上のパスワード同期の有効化については、「LDAP パスワードの同期」を参照してください。
全般的な注意事項
LDAP に接続するときは、管理者アカウント CN=Directory Manager を使用するのではなく、Identity Manager サービスアカウントを作成するようにしてください。LDAP Directory Server 管理ツールを使用して、各ベースコンテキストで ACI (アクセス制御命令) を介してアクセス権を設定します。
ACI でのアクセス権をソースに基づいて設定します。アダプタからアイデンティティー情報の源泉となるソースに接続する場合は、読み取り、検索、および (場合によっては) 比較のアクセス権のみを設定します。アダプタを書き戻し用に使用する場合は、書き込みと (場合によっては) 削除のアクセス権を設定します。
注
更新履歴ログの監視にアカウントを使用する場合は、cn=changelog で ACI も作成するようにしてください。更新履歴ログのエントリに対しては書き込みも削除もできないため、アクセス権は読み取りと検索のみに設定するとよいでしょう。
リスナーアダプタの場合は、「変更者フィルタ」リソースパラメータに指定したユーザーによる変更は無視されます。Identity Manager 側からリソース変更を行う際に、アダプタが使用するユーザー DN をここに追加します。これにより、Identity Manager 自身がリソースに対してある変更を行なった場合に、その変更内容を Identity Manager が検出し、リソースに適用する、というループ状態に陥るのを避けることができます。このフィールドを空白にすると、管理者による変更が処理され、不要な場合は Identity Manager のプロビジョニングエンジンによってフィルタされます
waveset.properties ファイル内の sources.ResourceName.hosts プロパティーを使用して、Active Sync を使用してリソースの同期を行うのにクラスタ内のどのホストを使用するかを制御できます。ResourceName は、リソースオブジェクトの名前に置き換えてください。
仮想リスト表示のサポート
注
ここでは、Identity Manager が RootDN 以外のユーザーとして LDAP リソースに接続することを前提としています。RootDN ユーザーとして接続する場合は、ここで説明する手順を適用できますが、ほかの LDAP 属性値でも可能な場合があります。詳細は、Directory Server のマニュアルを参照してください。
Directory Server では、検索できる LDAP エントリの数と取得できる LDAP エントリの数を、それぞれ nsLookThroughLimit 属性と nsslapd-sizelimit 属性によって定義します。nsLookThroughLimit のデフォルト値は 5,000 ですが、nsslapd-sizelimit のデフォルトは 2,000 です。どちらの属性も、-1 を設定することにより制限を無効にできます。これらの属性の値を変更した場合は、Directory Server を再起動してください。
必ずしもデフォルト値を変更した方がよいとは限りません。LDAP 検索のパフォーマンスを向上させるために、LDAP 仮想リスト表示 (VLV) コントロールを有効にできます。VLV は、一度にすべての検索結果を返さず、検索結果の一部を返します。
「ブロックを使用」リソース属性を使用すると、VLV コントロールの使用によって Identity Manager のクエリー結果を常にサイズ制限の範囲内に収めることができます。「ブロック数」リソース属性は、取得するユーザーの数を指定しますが、この値は nsslapd-sizelimit 属性に設定された値より小さいかまたは等しい値にする必要があります。
VLV インデックス (参照インデックスとも呼ばれる) を作成してください。作成しないと、nsslapd-sizelimit によるサイズ制限が有効なままになります。VLV インデックスによってアカウントの反復処理のパフォーマンスが大幅に向上するため、調整、リソースからの読み込み、またはファイルへのエクスポートを頻繁に行う予定である場合は、インデックスを設定するようにしてください。
VLV インデックスの作成の詳細な手順については、Directory Server のマニュアルを参照してください。基本的なプロセスは次のとおりです。
- 次のプロパティーを持つ vlvsearch オブジェクトを作成します。
vlvbase: YourBaseContext
vlvfilter: (&(objectclass=top)(objectclass=person)
(objectclass=organizationalPerson) (objectclass=inetorgperson))vlvscope: 2
vlvbase 属性は、「ベースコンテキスト」リソース属性に指定した値と一致させてください。vlvfilter 属性には、「オブジェクトクラス」リソース属性に指定したクラスを、ここに示した形式で含めてください。vlvscope の値 2 は、サブツリー検索を示します。
- vlvindex コンポーネントを vlvsearch のサブオブジェクトとして作成します。vlvsort 属性を uid に設定してください。
- vlvindex コマンドまたはほかのメカニズムを使用して、VLV インデックスを構築します。
- ACI (アクセス制御命令) を介して次の項目のアクセス権を設定します。
更新履歴ログの VLV を設定するには、次の一般的な手順に従います。詳細な手順については、Directory Server のマニュアルを参照してください。
ActiveSync 設定
Identity Manager 5.5 より前の LDAP Active Sync アダプタは、「変更時に実行するプロセス」フィールドを使用して、変更が検出されたときに起動するプロセスを判断していました。このフィールドに指定されていたプロセスは、現在は Active Sync の解決プロセス規則に指定されます。
また、Identity Manager 5.5 より前のバージョンでは、「削除を更新として処理」チェックボックスが選択されている場合、Identity Manager は、削除された Identity Manager ユーザーとすべてのリソースアカウントを無効にし、あとで削除するためにユーザーにマークを付けていました。このチェックボックスは、デフォルトで選択されていました。Identity Manager 5.5 以降では、削除規則セットを「なし」に設定することによってこの機能が設定されます。
チェックボックスの選択が以前に解除されていた場合は、削除規則が「ActiveSync has isDeleted set」に設定されます。
アカウントの無効化と有効化
LDAP アダプタには、LDAP リソース上のアカウントを無効にするための方法が複数用意されています。アカウントを無効にするには、次のいずれかの手法を使用します。
パスワードを不明な値に変更する
アカウントのパスワードを不明な値に変更することによってアカウントを無効にするには、「アクティブ化メソッド」フィールドと「アクティブ化パラメータ」フィールドを空白のままにします。これは、アカウントを無効にするときのデフォルトの方法です。無効になったアカウントは、新しいパスワードを割り当てることによって再度有効にできます。
nsmanageddisabledrole ロールを割り当てる
nsmanageddisabledrole LDAP ロールを使用してアカウントの無効化と有効化を行うには、LDAP リソースを次のように設定します。
- 「リソースパラメータ」ページで、「アクティブ化メソッド」フィールドを nsmanageddisabledrole に設定します。
- 「アクティブ化パラメータ」フィールドを IDMAttribute=CN=nsmanageddisabledrole,baseContext に設定します。IDMAttribute は、次の手順でスキーマに指定します。
- 「アカウント属性」ページで、IDMAttribute を アイデンティティーシステム ユーザー属性として追加します。リソースユーザー属性を nsroledn に設定します。この属性のタイプは文字列にしてください。
- LDAP リソース上に nsAccountInactivationTmp という名前のグループを作成し、CN=nsdisabledrole,baseContext をメンバーとして割り当てます。
これで、LDAP アカウントを無効にできます。LDAP コンソールを使用して検証するには、nsaccountlock 属性の値を確認します。値が true であれば、アカウントはロックされています。
あとでアカウントが再度有効にされると、ロールからアカウントが削除されます。
nsAccountLock 属性を設定する
nsAccountLock 属性を使用してアカウントの無効化と有効化を行うには、LDAP リソースを次のように設定します。
- 「リソースパラメータ」ページで、「アクティブ化メソッド」フィールドを nsaccountlock に設定します。
- 「アクティブ化パラメータ」フィールドを、IDMAttribute=true に設定します (IDMAttribute は、次の手順でスキーマに指定する)。 たとえば、accountLockAttr=true とします。
- 「アカウント属性」ページで、「アクティブ化パラメータ」フィールドに指定した属性 (たとえば、accountLockAttr) をアイデンティティーシステム ユーザー属性として追加します。リソースユーザー属性を nsaccountlock に設定します。この属性のタイプは文字列にしてください。
- リソース上で、nsAccountLock LDAP 属性を true に設定します。
LDAP アカウントを無効化すると、Identity Manager は、nsaccountlock の値を true に設定します。また、すでに nsaccountlock が true に設定されていたユーザーについても、Identity Manager は、それらの LDAP アカウントを無効とみなします。nsaccountlock の値が true 以外の値に設定されている、もしくは何も値が設定されていない場合は、それらのアカウントは有効であるとみなします。
nsmanageddisabledrole 属性や nsAccountLock 属性を使用せずにアカウントを無効にする
使用中のディレクトリサーバーでは nsmanageddisabledrole 属性や nsAccountLock 属性を使用できないが、アカウントを無効にする同様の方法がある場合は、「アクティブ化メソッド」フィールドに次のいずれかのクラス名を入力します。「アクティブ化パラメータ」フィールドに入力する値は、クラスによって異なります。
セキュリティーに関する注意事項
ここでは、サポートされる接続と特権の要件について説明します。
サポートされる接続
Identity Manager は、TCP/IP または SSL 経由の Java Naming and Directory Interface (JNDI) を使用して LDAP アダプタと通信します。
必要な管理特権
「ユーザー DN」リソースパラメータに値 cn=Directory Manager を指定すると、Identity Manager 管理者には、LDAP アカウント管理に必要なアクセス権が付与されます。別の識別名を指定する場合は、そのユーザーに、ユーザーの読み取り、書き込み、削除、および追加のアクセス権を付与してください。
プロビジョニングに関する注意事項
次の表に、このアダプタのプロビジョニング機能の概要を示します。
アカウント属性
属性がサポートされるかどうかは、通常、属性の構文 (または型) によって決まります。一般に、Identity Manager は boolean 型、文字列型、整数型、およびバイナリ型の構文をサポートします。バイナリ属性は、バイト配列としてのみ安全に表現できる属性です。
次の表に、サポートされている LDAP 構文の一覧を示します。ほかの LDAP 構文でも、事実上 boolean 型、文字列型、または整数型であれば、サポートされる可能性があります。オクテット文字列はサポートされません。
デフォルトのアカウント属性
次の属性は、LDAP リソースアダプタの「アカウント属性」ページに表示されます。特に記載されていないかぎり、属性の型はすべて String です。
グループ管理属性
次の表に示すアカウント属性は、デフォルトではスキーマに表示されません。グループを管理するには、これらの属性をスキーママップに追加してください。
スキーママップに posixGroups または ldapGroups が定義されている場合は、次の動作に注意してください。
Person オブジェクトクラス
次の表に、LDAP Person オブジェクトクラスで定義される追加のサポート対象属性の一覧を示します。Person オブジェクトクラスに定義されている属性の一部は、デフォルトで表示されます。
アイデンティティーシステム の属性
リソース
ユーザー属性LDAP 構文
説明
description
Directory string
String
ユーザーの特定の関心事についての簡潔でわかりやすい説明
seeAlso
DN
String
ほかのユーザーへの参照
telephoneNumber
Telephone number
String
第一電話番号
Organizationalperson オブジェクトクラス
次の表に、LDAP organizationalperson オブジェクトクラスで定義される追加のサポート対象属性の一覧を示します。このオブジェクトクラスは、Person オブジェクトクラスから属性を継承することもできます。
inetOrgPerson オブジェクトクラス
次の表に、LDAP inetOrgPerson オブジェクトクラスで定義される追加のサポート対象属性の一覧を示します。このオブジェクトクラスは、organizationalPerson オブジェクトクラスから属性を継承することもできます。
リソースオブジェクトの管理
Identity Manager は、デフォルトで次の LDAP オブジェクトをサポートします。文字列ベース、整数ベース、またはブールベースの属性も管理できます。
LDAP リソースアダプタは、posixGroup エントリの管理機能を提供します。デフォルトでは、posixGroup に割り当てることができるアカウントのリストに posixAccount オブジェクトクラスが含まれています。LDAP Create Posix Group Form と LDAP Update Posix Group Form をカスタマイズして、posixAccount 以外のアカウントを一覧表示できます。ただし、これらのアカウントに対して、posixGroup のメンバーになるための uid 属性を定義する必要があります。
アイデンティティーテンプレート
デフォルトのアイデンティティーテンプレートは次のとおりです。
uid=$accountId$,ou=EngUsers,dc=support,dc=waveset,dc=com
デフォルトのテンプレートを有効な値で置き換えてください。
サンプルフォーム
組み込みのフォーム
その他の利用可能なフォーム
LDAPGroupCreateExt.xml フォームと LDAPGroupUpdateExt.xml フォームには、一意でないメンバー名を入力できます。
トラブルシューティング
Identity Manager のデバッグページを使用して、次のクラスのうち 1 つ以上でトレースオプションを設定します。