2.3 Identity Managerの実装に関する技術面の計画

2.3.1 Designerの使用

Identity Manager 3.0には、Designerと呼ばれる新しいツールが付属しています。Designerを使用すると、Identity Managerドライバを設計、テスト、および文書化できます。また、パスワード同期およびデータフローの様子を参照することもできます。詳細については、『Designer for Identity Manager 3: Administration Guide』を参照してください。

2.3.2 Identity Managerがサーバで必要とするオブジェクトの複製

Identity Manager環境で、複数のIdentity Managerドライバを実行するために複数のサーバを呼び出す場合は、計画の一部としてそれらのIdentity Managerドライバを実行するサーバ上で特定のeDirectoryオブジェクトが複製されていることを確認してください。

読み込み、または同期を行うためにドライバで必要なオブジェクト、および属性のすべてがフィルタされたレプリカに含まれているのであれば、フィルタされたレプリカを使用することもできます。

Identity Managerのドライバオブジェクトに、同期対象のすべてのオブジェクトに対する十分なeDirectory権限を付与する必要がある点に注意してください。これは、権限を明示的に付与するか、必要な権限を持つオブジェクトと同等のドライバオブジェクトセキュリティを作成することにより行います。

Identity Managerドライバが実行されている(またはリモートローダを使用している場合はドライバが参照している) eDirectoryサーバには、次のもののマスタレプリカまたは読み書き可能レプリカが保持されている必要があります。

  • そのサーバのドライバセットオブジェクト。

    Identity Managerが実行されている各サーバには、1つのドライバセットオブジェクトが必要です。特に必要がない限り、複数のサーバを同じドライバセットオブジェクトに関連付けないでください。

    メモ:ドライバセットオブジェクトを作成する際は、デフォルト設定を使用して独立したパーティションが作成されます。ドライバセットオブジェクトには、独立したパーティションを作成することをお勧めします。Identity Managerが機能するには、ドライバセットオブジェクトの完全なレプリカがサーバに保持されている必要があります。ドライバセットオブジェクトがインストールされている場所の完全なレプリカがサーバにある場合、パーティションは必要ありません。

  • そのサーバのサーバオブジェクト。

    サーバオブジェクトは、ドライバがオブジェクトの鍵のペアを生成できるようにするために必要です。さらに、リモートローダの認証にも必要です。

  • ドライバのこのインスタンスを同期するオブジェクト。

    ドライバは、オブジェクトのレプリカがドライバと同じサーバにない場合は、それらのオブジェクトを同期できません。実際に、Identity Managerドライバは、サーバで複製されるすべてのコンテナ内のオブジェクトを同期します。ただし、それ以外の動作を指定するルール(「スコープフィルタリング」のルール)を作成した場合は別です。

    ドライバですべてのユーザオブジェクトを同期するようにするには、たとえばすべてのユーザのマスタレプリカまたは読み書き可能レプリカが保持されているサーバ上にある、ドライバの1つのインスタンスを使用するのが最も簡単な方法です。

    ただし、多くの環境にはすべてのユーザのレプリカが含まれる1つのサーバがありません。むしろ、ユーザの完全なセットは複数のサーバに分散しています。この場合は、次の2つの選択肢があります。

    • ユーザを1つのサーバに集約します。 既存のサーバにレプリカを追加することにより、すべてのユーザを保持する1つのサーバを作成できます。必要なユーザオブジェクトおよび属性がフィルタされたレプリカに含まれている限り、必要に応じてフィルタされたレプリカを使用し、eDirectoryデータベースのサイズを小さくできます。

    • スコープフィルタリングを行って、複数のサーバ上にあるドライバの複数のインスタンスを使用します。 ユーザを1つサーバに集約したくない場合は、どのサーバセットにすべてのユーザを保持するかを判別し、それらの各サーバにIdentity Managerドライバの1つのインスタンスを設定する必要があります。

      ドライバにある別々のインスタンスが同じユーザを同期しないようにするには、「スコープフィルタリング」を使用して、どのドライバインスタンスでどのユーザを同期すべきか定義する必要があります。スコープフィルタリングとは、特定のコンテナに対するドライバの管理範囲を制限するルールを各ドライバに追加することを意味しています。複数のサーバにおける、スコープフィルタリングを使用したユーザの管理を参照してください。

    • スコープフィルタリングを行わずに、複数のサーバにあるドライバの複数のインスタンスを使用します。 フィルタされたレプリカを使用せずに、複数のサーバでドライバの複数のインスタンスを実行する場合は、ドライバが同じアイデンティティボールト内でさまざまなオブジェクトセットを処理できるようにするポリシーを、複数のドライバインスタンスで定義する必要があります。

  • テンプレートの使用を選択した場合は、ユーザの作成時にドライバで使用されるテンプレートオブジェクト。

    Identity Managerドライバが、ユーザの作成時にeDirectoryテンプレートオブジェクトを指定するよう求めることはありません。ただし、eDirectoryでユーザを作成する際にドライバがテンプレートを使用するように指定した場合は、ドライバが実行されているサーバでテンプレートオブジェクトを複製する必要があります。

  • Identity Managerドライバがユーザの管理に使用するすべてのコンテナ。

    たとえば、無効になったユーザアカウントを保持するInactive Usersという名前のコンテナを作成した場合、ドライバが実行されているサーバ上にそのコンテナのマスタレプリカまたは読み書き可能レプリカ(可能であればマスタレプリカ)が必要です。

  • ドライバが参照する必要のある他のすべてのオブジェクト(たとえば、Avaya PBXドライバ用の作業順序オブジェクト)。

    他のオブジェクトがドライバに読み込まれるだけで変更されない場合、サーバ上にあるそれらのオブジェクトのレプリカは読み込み専用レプリカとすることができます。

2.3.3 複数のサーバにおける、スコープフィルタリングを使用したユーザの管理

スコープフィルタリングは、特定のコンテナに対するドライバのアクション範囲を制限するルールを各ドライバに追加することを意味しています。スコープフィルタリングを使用する必要のある2つの状況を次に示します。

  • ドライバにより、特定のコンテナ内のユーザだけを同期する。

    Identity Managerドライバは、デフォルトでは、実行されているサーバで複製されるすべてのコンテナ内にあるオブジェクトを同期します。範囲を絞り込むには、スコープフィルタリングルールを作成する必要があります。

  • Identity Managerドライバによりすべてのユーザを同期するが、一部のユーザは同じサーバ上で複製しない。

    すべてのユーザを1つのサーバ上で複製せずに同期する場合は、どのサーバセットですべてのユーザを保持するかを決定し、それらの各サーバでIdentity Managerドライバのインスタンスを作成する必要があります。ドライバの2つのインスタンスが同じユーザを同期しないようにするには、スコープフィルタリングを使用して、ドライバの各インスタンスが同期するユーザを定義する必要があります。

    メモ:スコープフィルタリングは、サーバのレプリカが今のところ重複していない場合でも使用してください。今後、レプリカがサーバに追加され、意図せずに重複が発生する可能性があります。スコープフィルタリングを適切な場所に設定すると、今後レプリカがサーバに追加された場合でも、Identity Managerドライバは同じサーバを同期しなくなります。

次に、スコープフィルタリングの使用例を示します。

次の図は、ユーザを保持する3つのコンテナ(Marketing、Finance、およびDevelopment)が存在するアイデンティティボールトを示しています。また、ドライバセットを保持するIdentity Managerコンテナも示しています。これらの各コンテナは、独立したパーティションです。

図 2-5 スコープフィルタリングのツリーの例

この例では、この後の図にもあるようにIdentity Manager管理者は2つのアイデンティティボールトサーバ(Server AおよびServer B)を持っています。どちらのサーバにも、すべてのユーザのコピーが含まれているわけではありません。各サーバには、3つのパーティションのうち2つが含まれているため、サーバが保持している対象の範囲が重複しています。

管理者は、ツリー内のすべてのユーザをGroupWise®ドライバにより同期しますが、ユーザのレプリカは1つのサーバに集約しません。代わりに、GroupWiseドライバの2つのインスタンスを使用する(各サーバに1つのインスタンスを使用)よう指定します。Identity Managerをインストールして、各Identity ManagerサーバでGroupWiseドライバを設定します。

Server Aは、MarketingコンテナおよびFinanceコンテナのレプリカを保持しています。さらに、このサーバは、Server AのドライバセットおよびServer AのGroupWiseドライバオブジェクトを保持するIdentity Managementコンテナのレプリカでもあります。

Server Bは、DevelopmentコンテナおよびFinanceコンテナのレプリカと、Server BのドライバセットおよびServer BのGroupWiseドライバオブジェクトを保持するIdentity Managementコンテナのレプリカを保持しています。

Server AとServer BはどちらもFinanceコンテナのレプリカを保持しているため、どちらのサーバもFinanceコンテナにあるユーザJBassadを保持しています。スコープフィルタリングを設定しないと、GroupWise Driver AおよびGroupWise Driver Bの両方によりJBassadが同期されます。

図 2-6 レプリカが重複していてスコープフィルタリングの設定されていない2つのサーバ

次の図は、スコープフィルタリングで各コンテナを同期するドライバを定義することにより、ドライバの2つのインスタンスで同じユーザを管理するのを回避する様子を示しています。

図 2-7 スコープフィルタリングによる、各コンテナを同期するドライバの定義

Identity Manager 3.0には、定義済みルールが付属しています。スコープフィルタリングに役立つ2つのルールがあります。『Policy Builder and Driver Customization Guide』の「Event Transformation - Scope Filtering - Include Subtrees 」および「Event Transformation - Scope Filtering - Exclude Subtrees 」で説明されています。

この例では、Server AおよびServer Bには定義済みルールInclude Subtreesを使用します。指定されたコンテナのユーザだけを同期するように、各ドライバには異なる範囲を定義します。Server Aは、MarketingおよびFinanceを同期します。Server Bは、Developmentを同期します。