MLDAP ESM モジュールのフェデレーション

ESF のフェデレーション設定は、MLDAP ESM モジュールを使用する複数の ESM がセキュリティ構成で積み重ねられてる場合に、どのように MLDAP ESM モジュールのインスタンスが連携するかに作用します。MLDAP ESM モジュールが 1 つしか構成にない場合、フェデレーションは考慮事項にはなりません。

フェデレーションが無効になっている場合、MLDAP ESM モジュールでは、そのモジュールにとって既知でないユーザーを参照する Auth 操作および XAuth 操作は無視されます。たとえば、2 つの LDAP リポジトリがあり、一部のユーザーが 1 つ目のリポジトリで定義され、その他のユーザーが 2 つ目のリポジトリで定義されているとします。この構成に対応するために、2 つの MLDAP ESM モジュールが積み重ねられたセキュリティ構成が作成されており、一方は 1 つ目の LDAP リポジトリを指し、もう一方は 2 つ目の LDAP リポジトリを指しています。また、Alice というユーザーが 2 つ目のリポジトリで定義され、そのフェデレーションが無効になっています。Alice がリソースにアクセスしようとすると、ESF は各 ESM に対して順番に Auth 要求を行います。Alice は 2 つ目の ESM で定義されているため、1 つ目の ESM は Alice に関する情報を保持しておらず、Auth 要求に対して「unknown」を返します。2 つ目の ESM は要求を正常に処理します。つまり、1 つ目の ESM で定義されたリソース ACL は、Alice によるアクセスを確認する際に参照されません

フェデレーションが有効になっているか、互換モード (現在はデフォルト) に設定されている場合、1 つ目の ESM は、ユーザー Alice を検証した ESM ではないにもかかわらず、Auth 要求に適用されるリソース ACL を探します。

フェデレーションは use-all-groups モードにも作用します。フェデレーションが有効になっている場合、プロセス内のすべての MLDAP ESM モジュールで、グループ名およびグループ メンバーシップ情報の単一のセットが共有されます。フェデレーションが無効になっている場合は、各 MLDAP ESM モジュールで、グループ名およびグループ メンバーシップ情報の独自のセットが保持されます。フェデレーション互換モードでは、グループ名については、1 つのセットしかなく、すべてのモジュールで共有されますが、各グループに属するユーザーについては、各モジュールで独自の情報が保持されます。

互換フェデレーション設定は、予期しない結果につながる可能性があります。これは、ESM にはユーザーのグループ情報がない場合があり、グループベースの ACL が想定どおりには適用されないことがあるためです。複数の MLDAP ESM モジュールを使用する場合は、通常、フェデレーションを明示的に有効または無効にすることが最善の方法となります。これは、use-all-groups モードが有効になっている場合に特に推奨されます。

一般に、LDAP セキュリティ情報を 1 つの LDAP リポジトリからすべて取得したように組み合わせる場合には、フェデレーションを有効にする必要があります。独立した LDAP リポジトリを設計する場合は (ある LDAP リポジトリのリソース アクセス ルールを別のリポジトリのユーザーに適用しないようにする場合など)、フェデレーションを無効にする必要があります。

ESF 自体に対して冗長 (高可用性とも呼ばれます) モードが有効になっている場合、フェデレーションは自動的に有効になります。