5.6. 参照整合性のためのスコープの設定
エントリーを削除すると、エントリーへの参照は削除または変更されます。この更新がすべてのエントリーおよびすべてのグループに適用されると、パフォーマンスに影響が及ぶ可能性があり、選択されたサブツリーに参照整合性を制限できなくなる可能性があります。この問題の スコープ アドレスを定義します。
たとえば、接尾辞
dc=example,dc=com
に ou=active users,dc=example,dc=com
と ou=deleted users,dc=example,dc=com
の 2 つのサブツリーが含まれる場合があります。deleted users
のエントリーは、参照整合性の確保のために処理しないでください。
5.6.1. 参照整合性の範囲を制御するパラメーター
Referential Integrity Postoperation プラグイン設定でスコープを定義するために、以下の 3 つのパラメーターを使用することができます。
nsslapd-pluginEntryScope
- この多値パラメーターは、削除または名前変更のエントリーの範囲を制御します。これは、Referential Integrity Postoperation プラグインがユーザーエントリーの削除操作または名前変更操作を検索するサブツリーを定義します。定義されたサブツリーに存在しないユーザーを削除または名前変更した場合、プラグインは操作を無視します。このパラメーターを使用すると、プラグインが操作を適用するデータベースのブランチを指定できます。
nsslapd-pluginExcludeEntryScope
- このパラメーターは、削除または名前変更のエントリーの範囲も制御します。これは、Referential Integrity Postoperation プラグインがユーザーの削除や名前変更の操作を無視するサブツリーを定義します。
nsslapd-pluginContainerScope
- このパラメーターは、参照を更新するグループのスコープを制御します。ユーザーの削除後、Referential Integrity Postoperation プラグインはユーザーが属するグループを検索し、それに応じて更新します。このパラメーターは、プラグインがユーザーが属するグループを検索するブランチを指定します。Referential Integrity Postoperation プラグインは、指定のコンテナーブランチにあるグループのみを更新し、その他のグループは更新されないままにします。
5.6.2. コマンドラインを使用した参照整合性範囲の表示
以下のコマンドは、コマンドラインを使用してスコープ設定を表示する方法を示しています。
# dsconf -D "cn=Directory Manager" ldap://server.example.com plugin referential-integrity show ... nsslapd-pluginEntryScope: DN nsslapd-pluginExcludeEntryScope: DN nsslapd-pluginContainerScope: DN
5.6.3. Web コンソールを使用した参照整合性範囲の表示
以下の手順では、Web コンソールを使用してスコープ設定を表示する方法を説明します。
- Web コンソールで Directory Server ユーザーインターフェイスを開きます。「Web コンソールを使用した Directory Server へのログイン」を参照してください。
- インスタンスを選択します。
- Plugins メニューを開きます。
- Referential Integrity プラグインを選択します。
- 現在設定されているスコープについては、Entry Scope フィールド、Exclude Entry Scope フィールド、および Container Scope フィールドを参照してください。
5.6.4. コマンドラインを使用した参照整合性範囲の設定
コマンドラインを使用して参照整合性の範囲を設定するには、次のコマンドを実行します。
- 必要に応じて、スコープ設定を表示します。「コマンドラインを使用した参照整合性範囲の表示」を参照してください。
- 以下のコマンドは、コマンドラインを使用して個別の参照整合性スコープを設定する方法を示しています。
- 識別名 (DN) を設定するには、以下を実行します。
nsslapd-pluginEntryScope
パラメーターに対して以下を実行します。# dsconf -D "cn=Directory Manager" ldap://server.example.com plugin referential-integrity set --entry-scope="DN"
nsslapd-pluginExcludeEntryScope
パラメーターに対して以下を実行します。# dsconf -D "cn=Directory Manager" ldap://server.example.com plugin referential-integrity set --exclude-entry-scope="DN"
nsslapd-pluginContainerScope
パラメーターに対して以下を実行します。# dsconf -D "cn=Directory Manager" ldap://server.example.com plugin referential-integrity set --container-scope="DN"
- DN を削除するには、以下を実行します。
nsslapd-pluginEntryScope
パラメーターから、以下を行います。# dsconf -D "cn=Directory Manager" ldap://server.example.com plugin referential-integrity set --entry-scope=delete
nsslapd-pluginExcludeEntryScope
パラメーターから、以下を行います。# dsconf -D "cn=Directory Manager" ldap://server.example.com plugin referential-integrity set --exclude-entry-scope=delete
nsslapd-pluginContainerScope
パラメーターから、以下を行います。# dsconf -D "cn=Directory Manager" ldap://server.example.com plugin referential-integrity set --container-scope=delete
- インスタンスを再起動します。
# dsctl instance_name restart
5.6.5. Web コンソールを使用した参照整合性範囲の設定
Web コンソールを使用して参照整合性スコープを設定するには、以下を行います。
- Web コンソールで Directory Server ユーザーインターフェイスを開きます。「Web コンソールを使用した Directory Server へのログイン」を参照してください。
- インスタンスを選択します。
- Plugins メニューを選択します。
- Referential Integrity プラグインを選択します。
- Entry Scope フィールド、Exclude Entry Scope フィールドおよび Container Scope フィールドにスコープを設定します。
- Save Config をクリックします。