![]() | |
Sun Java™ System Identity Manager 7.0 リソースリファレンス |
第 4 章
LDAP パスワードの同期この章では、Sun JavaTM System Directory Server (以前は Sun ONE Directory Server および iPlanet Directory Server と呼ばれていた) から Identity Manager システムへのパスワードの同期をサポートするための、Identity Manager 製品の拡張機能について説明します。
概要Directory Server では、パブリックなプラグイン API を介して、サードパーティーがパスワードの変更を処理できるようになっています。カスタムプラグインであるパスワードキャプチャープラグインは、Directory Server でのパスワード変更を得るために開発されました。
パスワードキャプチャープラグインには、次の役割があります。
パスワードキャプチャープラグインを実装する前に、Directory Server の旧バージョン形式の更新履歴ログプラグインをディレクトリサーバーにインストールしてください。旧バージョン形式の更新履歴ログプラグインは、Directory Server コアによる操作が実行されたあと、idmpasswd 属性の変更を更新履歴ログデータベースに記録します。
Active Sync を有効にしている LDAP リソースアダプタは、定期的に更新履歴ログデータベースをポーリングし、関連した変更を解析して、それらの変更を Identity Manager に送ります。LDAP アダプタは、idmpasswd 属性を解析し、共有キーを使用してパスワードを復号化し、実際のパスワードをシステムの残りの部分で利用できるようにします。
パスワードキャプチャー処理
パスワードキャプチャープラグインは、サーバーが LDAP ADD または LDAP MODIFY 操作を処理しようとするたびに、Directory Server コアによって呼び出されます。このプラグインは変更を調べて、パスワード変更があると、idmpasswd 属性と値のペアを挿入します。この値は暗号化されたパスワードです。
パスワードキャプチャープラグインによって得られたパスワードは、共有キーを使用して暗号化されます。設定された LDAP リソースアダプタによってそのパスワードが復号化されるときに、同じ共有キーが使用されます。
変更がサーバーに受け入れられると、旧バージョン形式の更新履歴ログプラグインは、旧バージョン形式の更新履歴ログデータベースにその変更 (idmpasswd 属性の新しい値を含む) を記録します。LDAP リソースアダプタは、idmpasswd 属性の変更を処理し、暗号化された文字列の形式で、Identity Manager 内のほかのコンポーネントがその値を利用できるようにします。
idmpasswd 属性は、ユーザーがパスワードを変更するときに Directory Server の通常のデータベースには表示されません。
旧バージョン形式の更新履歴ログデータベース内のパスワード
暗号化されたパスワードは、旧バージョン形式の更新履歴ログデータベースに記録されます。旧バージョン形式の更新履歴ログプラグインで、旧バージョン形式の更新履歴ログデータベースから定期的にエントリを削除するように設定できます。データベースのエントリ削除の適切な設定は、ターゲットの環境によって異なります。削除間隔が短すぎると、短時間のネットワーク機能停止やほかのサービスの中断に対処できないことがあり、LDAP リソースアダプタは一部の変更を見逃す可能性があります。反対に、データベースのサイズが大きくなりすぎると、データベース内に暗号化されたパスワードを保持することに付随するセキュリティー上のリスクが増える可能性があります。
旧バージョン形式の更新履歴ログデータベースのサフィックス (cn=changelog) の内容へのアクセスを制限するようにしてください。そのために、読み取りアクセス権は、LDAP リソースアダプ タのみに許可します。
スキーマの変更
idmpasswd 属性は、オペレーショナル属性として定義されます。オペレーショナル属性は、ターゲットエントリのオブジェクトクラス定義の変更を一切必要としません。そのため、パスワード同期機能を使用するために Directory Server の既存ユーザーまたは新規ユーザーを変更する必要はありません。
idmpasswd 属性は、スキーマで次のように定義されます。
attributeTypes: ( idmpasswd-oid NAME 'idmpasswd' DESC 'IdM Password' SYNTAX 1.3.6.1.4.1.1466.115.121.1.40{128} USAGE directoryOperation X-ORIGIN 'Identity Manager' )
LDAP パスワード同期に関する Identity Manager の設定LDAP アダプタを使用して LDAP パスワードを同期するには、次の作業を実行します。
手順 1: LDAP リソースアダプタを設定する
パスワード同期をサポートするように LDAP リソースアダプタを設定するには、次の手順を使用します。
手順 2: パスワード同期機能を有効にする
Identity Manager には、LDAP リソースアダプタでパスワード同期を有効にするためのカスタム JSP ページが用意されており、このページで管理者は次の操作を行えます。
LDIF ファイルは、次の 3 つのエントリで構成されます。
これらの機能を実装するには、次の手順を使用します。
- Identity Manager の「パスワード同期の設定」ページを開きます。このページは http://PathToIdentityManager/configure/passwordsync.jsp にあります。
- 「リソース」メニューから、パスワードの同期に使用する LDAP リソースを選択します。
- 「アクション」メニューから、「パスワード同期の有効化」を選択します。
- 「OK」をクリックします。ページが再描画され、「アクション」メニューに新しい項目が表示されます。
- 「アクション」メニューから、「プラグイン設定 LDIF をダウンロードします」を選択します。
- 「OK」をクリックします。ページが再描画され、いくつかの新しいオプションが表示されます。
- 「オペレーティングシステムタイプ」メニューから、リソースのオペレーティングシステムを選択します。
- 「プラグインのインストールディレクトリ」フィールドに、プラグインをインストールするホスト上のディレクトリを入力します。
- 「OK」をクリックして、LDIF ファイルを生成およびダウンロードします。必要に応じて、ここで暗号化キーを再生成してもかまいません (必要ない場合は、手順 10, 11 は省略できる)。
- 「アクション」メニューから、「暗号化キーを再生成します」を選択します。
- 「OK」をクリックします。暗号化パラメータが更新されます。
パスワード同期を有効にしたら、リソースの Active Sync ウィザードパラメータページの「リソース固有の設定」ページに、次の属性が表示されます。
「パスワード同期の有効化」フィールドのみは、このページで変更できます。暗号化属性は、JSP ページでのみ更新するようにしてください。
パスワードキャプチャープラグインのインストールプラグインのインストールを開始する前に、必ずリソースの設定を完了してください。詳細については、「LDAP パスワード同期に関する Identity Manager の設定」を参照してください。
パスワードキャプチャープラグインをインストールするには、次の一般的な手順を実行します。これらの作業の実行の詳細については、製品マニュアルを参照してください。
- 設定 LDIF ファイルをターゲット Directory Server にアップロードします。Directory Server に付属する LDAP コマンド行ユーティリティーを使用できます。次に例を示します。
/opt/iPlanet/shared/bin/ldapmodify -p 1389 -D "cn=directory manager" -w secret -c -f /tmp/pluginconfig.ldif
- プラグインバイナリ (idm-plugin.so) を、Directory Server が実行されているホスト上に配置します。この例では、/opt/SUNWidm/plugin です。ディレクトリサーバーを実行するユーザーは、プラグインライブラリを読み取れる必要があります。そうでなければ、Directory Server の起動に失敗します。
- Directory Server を再起動します (たとえば /opt/iPlanet/slapd-examplehost/restart-slapd など)。Directory Server の再起動後、パスワードキャプチャープラグインは読み込まれません。
注
マルチマスターレプリケーション環境では、インストールごとに新しいプラグイン設定を生成してください (各ホストでオペレーティングシステムタイプとプラグインのインストールディレクトリが同じである場合は除く)。このタイプの環境では、インストールごとに、「手順 2: パスワード同期機能を有効にする」に記載されている手順を繰り返してください。