Oracle® Fusion Middleware Oracle Directory Integration Platform管理者ガイド 11g リリース1(11.1.1) B65032-03 |
|
![]() 前 |
![]() 次 |
この章では、本番環境でOracle Identity ManagementとNovell eDirectoryまたはOpenLDAPを統合する手順について説明します。内容は次のとおりです。
注意: この章に進む前に、前の章で説明している概念を理解している必要があります。次の章は特に重要です。 同期は、Oracle Fusion Middleware 11g リリース1(11.1.1)以上と、Novell eDirectory 8.6.2以上またはOpenLDAP 2.2との間でサポートされます。 |
Novell eDirectoryまたはOpenLDAPで基本同期または拡張同期を構成するには、「同期要件の確認」の指示に従い、使用する環境で必要な同期要件が満たされていることを確認してください。
注意: 調整が正しく行われるためには、追加と削除が、同期化ディレクトリの1つのみから実行される必要があります。つまり、Oracleバックエンド・ディレクトリから、またはeDirectory/OpenLDAPから追加と削除を実行できますが、その両方から行うことはできません。ただし、変更はどちらのディレクトリからも実行できます。 |
expressSyncSetup
コマンドを使用すると、Oracleバックエンド・ディレクトリとNovell eDirectoryまたはOpenLDAP間の同期を迅速に確立できます。expressSyncSetup
コマンドでは、デフォルト設定を使用して、必須の構成をすべて自動的に実行します。expressSyncSetup
コマンドを使用してNovell eDirectoryまたはOpenLDAPと同期化するには、「expressSyncSetupを使用したインポートおよびエクスポートの同期プロファイルの作成」を参照してください。
eDirectoryまたはOpenLDAPから1つのOracleバックエンド・ディレクトリ・コンテナへ複数のプロファイルを同期化する場合は、調整処理で誤ってユーザーが削除されないように、フィルタ処理して調整対象の特定のユーザーのみを除外する必要があります。フィルタ処理して調整対象の特定のユーザーのみを除外するには、次のいずれかの手順を実行します。
マッピング・ルールを変更して、各プロファイルによって異なるコンテナにユーザーが作成されるようにします。詳細は、「マッピング・ルールのカスタマイズ」を参照してください。
マッピング・ファイル内のリコンシリエーション・ルールを変更して、ユーザーの特定のサブセットのみが同期化されるようにします。詳細は、「リコンシリエーション・ルールの定義方法」を参照してください。
Oracle Directory Integration Platformをインストールすると、サポート対象のディレクトリごとにインポートおよびエクスポートの同期プロファイルのサンプルが自動的に作成されます。Novell eDirectory用に作成された同期プロファイルのサンプルは、次のとおりです。
Novell eDirectoryImp
: Novell eDirectoryからOracleバックエンド・ディレクトリに変更をインポートするためのプロファイル
Novell eDirectoryExp
: Oracleバックエンド・ディレクトリからNovell eDirectoryに変更をエクスポートするためのプロファイル
OpenLDAP用に作成された同期プロファイルのサンプルは、次のとおりです。
OpenLDAPImport
: OpenLDAPからOracleバックエンド・ディレクトリに変更をインポートするためのプロファイル
OpenLDAPExport
: Oracleバックエンド・ディレクトリからOpenLDAPに変更をエクスポートするためのプロファイル
expressSyncSetup
コマンドまたはOracle Enterprise Manager Fusion Middleware Controlを使用して、追加の同期プロファイルを作成することもできます。インストール・プロセス時またはexpressSyncSetup
によって作成されたインポートおよびエクスポートの同期プロファイルは、Oracleバックエンド・ディレクトリとNovell eDirectoryまたはOpenLDAPの統合をデプロイする際に使用する開始点としてのみ利用されます。デフォルトの同期プロファイルは事前定義の仮定を使用して作成されるため、次の手順を順序どおりに実行して、環境に合せてそれらをさらにカスタマイズする必要があります。
第16章「接続ディレクトリ統合の概念と考慮事項」、特に「Novell eDirectoryおよびOpenLDAP統合の概念」を読んで、統合を計画します。「同期プロファイルの作成」の指示に従い、既存のeDirectoryまたはOpenLDAPのテンプレート・プロファイルをコピーして、必ず新規のプロファイルを作成します。
「レルムの構成」の指示に従い、レルムを構成します。
デフォルトでは、Novell eDirectoryまたはOpenLDAPコネクタにより、modifytimestamp
属性に基づいてコンテナ内のすべてのオブジェクトに対する変更が取得されます。特定のタイプのオブジェクトに対する変更(ユーザーやグループに対する変更など)を取得する場合は、LDAP検索フィルタを構成する必要があります。このフィルタにより、Novell eDirectoryまたはOpenLDAPコネクタのNovell eDirectoryまたはOpenLDAPに対する問合せの際に、不要な変更が排除されます。フィルタは、同期プロファイルの「接続されたディレクトリ一致フィルタ」属性(orclodipcondirmatchingfilter
)に格納されます。
Novell eDirectoryまたはOpenLDAPのサンプルのインポート・プロファイルは、それぞれNovell eDirectoryおよびOpenLDAPのユーザー、グループおよびコンテナ・オブジェクトに対する変更を取得するように構成されています。コンピュータは取得されません。searchfilter
属性の値は、次のように設定されます。
searchfilter=(&(!(modifiersname=connected_dir_account))
(|(objectclass=domain)(objectclass=organizationalunit)
(objectclass=organization)(objectclass=person) (objectclass=groupofnames)))
ユーザーまたはグループ以外のエントリを同期化する場合は、manageSyncProfilesコマンドのupdate
操作を使用してsearchfilter
属性を更新します。たとえば、次のコマンドは、searchfilter
属性を更新してユーザーとグループのみを同期化します。
manageSyncProfiles -operation update -profile profile_name odip.profile.condirfilter searchfilter= (|(objectclass=groupofnames)(objectclass=person))
注意:
|
関連項目: LDAP検索フィルタを構成する方法は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のLDAPフィルタ定義に関する付録を参照してください。 |
「Access制御リストのカスタマイズ」で説明されているように、ACLをカスタマイズします。
Novell eDirectoryと統合する場合は、次の属性レベル・マッピングがすべてのオブジェクトに対して必須です。
GUID:1: : :orclNDSObjectGUID: :orclndsObject:bin2b64(guid) Modifytimestamp:1 : : :orclsourcemodifytimestamp: :orclndsobject: Createtimestamp:1 : : :orclsourcecreatetimestamp: :orclndsobject: Targetdn:1: : :orclsourceobjectdn: : orclndsobject:
OpenLDAPと統合する場合は、次の属性レベル・マッピングがすべてのオブジェクトに対して必須です。
entryuuid:1: : : orclOpenLdapEntryUUID: : orclOpenLdapObject Modifytimestamp:1 : : :orclsourcemodifytimestamp: : orclOpenLdapObject Createtimestamp:1 : : :orclsourcecreatetimestamp: : orclOpenLdapObject Targetdn:1: : :orclsourceobjectdn: : orclOpenLdapObject:
例22-1 Novell eDirectoryまたはOpenLDAPのユーザー・オブジェクト用の属性レベル・マッピング
Cn:1: : :person: cn: :person: sn:1: : :person: sn: :person:
例22-2 Novell eDirectoryまたはOpenLDAPのグループ・オブジェクト用の属性レベル・マッピング
Cn:1: : :groupofname: cn:groupofuniquenames
この例では、Novell eDirectoryまたはOpenLDAPのCn
およびsn
は、それぞれOracleバックエンド・ディレクトリのcn
およびsn
にマップされます。
「マッピング・ルールのカスタマイズ」の指示に従い、属性マッピングをカスタマイズします。
「Novell eDirectoryまたはOpenLDAPからOracleバックエンド・ディレクトリへの同期」で説明されているように、Oracleバックエンド・ディレクトリでのNovell eDirectoryまたはOpenLDAPからの削除の同期化は調整方式で処理されます。調整処理は、時間とCPUを大量に消費するため、デフォルトで、調整は3600秒(1時間)間隔で行われます。manageSycnProfiles
コマンドと-params
オプションを使用してodip.profile.reconciliationtimeinterval
パラメータを変更することで、この間隔を環境に合わせて変更できます。
Oracleバックエンド・ディレクトリでNovell eDirectoryまたはOpenLDAPからの削除を同期化する際にサーバーでのパフォーマンスの低下を回避するために、DITの特定のサブセットを検索するように比較をカスタマイズできます。ReconciliationRules
キーワードを使用して、サブセットの検索基準をマップ・ファイルの一部として指定します。
Novell eDirectoryのデフォルトのリコンシリエーション・ルールは、次のとおりです。
inetorgperson:cn:* groupofnames:cn:*
OpenLDAPのデフォルトのリコンシリエーション・ルールは、次のとおりです。
inetorgperson:cn:* groupofuniquenames:cn:*
これらのルールで指定される検索基準は、次の2つの手順に該当します。
inetorgperson
オブジェクト・クラス内のすべてのエントリを検索します。属性値に応じて、このルール内に異なるサブセットを指定することもできます。
Novell eDirectoryのgroupofnames
オブジェクト・クラス内またはOpenLDAPのgroupofuniquenames
オブジェクト・クラス内のすべてのエントリを検索します。
リコンシリエーション・ルールは、1つのオブジェクト・クラス、1つの属性、任意の数の値を使用して定義します。Oracleバックエンド・ディレクトリと同期化される任意の属性を使用してリコンシリエーション・ルールを定義できます。ただし、次の2つの要件に従う必要があります。
指定されたオブジェクト・クラスの属性は、マッピング・ルールに定義されている必要があります。
対応するOracleバックエンド・ディレクトリの属性は、索引付けされている必要があります。
たとえば、次のリコンシリエーション・ルールを考えてみます。
myobjclass:myattr:val1:val2:val3
このリコンシリエーション・ルールでは、オブジェクト・クラス名はmyobjclass
、属性名はmyattr
です。val1
、val2
またはval3
の値をmyattr
属性に指定できます。myattr
属性を使用するには、次のマッピング・ルールを定義する必要があります。
myattr: : : myobjclass:attr: :objclass:
このマッピング・ルールは、myattr
属性をmyobjclass
オブジェクト・クラスに定義します。attr
はOracleバックエンド・ディレクトリの対応する属性で、索引付けする必要があります。
リコンシリエーション・ルールを定義すると、Novell eDirectoryまたはOpenLDAPに問い合せて削除エントリ数を特定する検索フィルタが生成されます。たとえば、前の項のmyobjclass
およびattr
リコンシリエーション・ルールの例では、次の検索フィルタがNovell eDirectoryまたはOpenLDAPに生成されます。
(&(objectclass= myobjclass) (createtimestamp<=orclodipreconciliationtimestamp) (myattr=val1))
(&(objectclass= myobjclass) (createtimestamp<= orclodipreconciliationtimestamp) (myattr=val2))
(&(objectclass= myobjclass)(createtimestamp<= orclodipreconciliationtimestamp)(myattr=val3))
また、リコンシリエーション・ルールとマッピング・ルールによって、対応するフィルタがOracleバックエンド・ディレクトリに生成されます。たとえば、myobjclass
およびattr
リコンシリエーション・ルールについて、次のOracleバックエンド・ディレクトリのフィルタが生成されます。
(&(objectclass= objclass) (orclndsobjectguid=*)(orclSourceCreateTimeStamp<= orclodipreconciliationtimestamp)(attr=val1))
(&(objectclass= objclass) (orclndsobjectguid=*)(orclSourceCreateTimeStamp<= orclodipreconciliationtimestamp)(attr=val2))
(&(objectclass= objclass) (orclndsobjectguid=*)(orclSourceCreateTimeStamp<= orclodipreconciliationtimestamp)(attr=val3))
同期プロファイルの「拡張構成情報」(orclodipAgentConfigInfo
)属性には、コネクタでOracleバックエンド・ディレクトリと接続ディレクトリの同期化を行うために必要な追加の構成情報が格納されます。SearchDeltaSize
およびSkipErrorToSyncNextChange
パラメータは任意の接続ディレクトリとともに使用できます。
Novell eDirectoryとOpenLDAPでは、表22-1に示すパラメータを使用して追加構成情報を指定することもできます。
表22-1 「拡張構成情報」属性用のNovell eDirectoryとOpenLDAPの同期パラメータ
パラメータ | 説明 |
---|---|
|
|
|
このパラメータは、タイムスタンプに基づいて同期を処理し、変更ログをサポートしないeDirectoryおよびOpenLDAPにのみ適用されます。「時間デルタの検索」によって、各同期サイクルの反復中に変更を処理する時間間隔が決定されます。デフォルト値は3600です。各同期サイクルで実行される反復の回数は、保留中の変更の数によって異なります。たとえば、「時間デルタの検索」パラメータが60に設定されていると、約1分間保留中の変更がある場合、同期に必要な反復は1回です。変更が3分間保留中である場合、同期に必要な反復は3回です。 1分当たりの変更数が少ない場合は、「時間デルタの検索」の値を増やすと、同期の効率が向上します。 「時間デルタの検索」パラメータに設定する値が、接続ディレクトリ・サーバーのLDAP検索制限を超えないことを確認してください。そうでない場合、同期時にエラーが発生して一部の変更が処理されないことがあります。 |
|
Novell eDirectoryまたはOpenLDAPの削除済エントリをOracleバックエンド・ディレクトリと同期化する方法を決定します。このパラメータに |
|
Oracleバックエンド・ディレクトリを実行しているコンピュータとNovell eDirectoryを実行しているコンピュータの間の時間差を指定します。Novell eDirectoryのコンピュータ上の時間がOracleバックエンド・ディレクトリのコンピュータの時間より早い場合、Oracleバックエンド・ディレクトリとNovell eDirectory間の同期が正しく機能しないため、このパラメータが必要になります。このパラメータには、2つのコンピュータ間の時間差と等しい値を秒単位で指定します。デフォルト値は0です。 |
|
エントリの検索に使用できるNovell eDirectoryまたはOpenLDAPの一意の属性を指定します。このパラメータには、Novell eDirectoryの場合は |
|
プロファイルにより調整処理のために使用されるクラスを指定します。 |
Novell eDirectoryからOracleバックエンド・ディレクトリには、パスワードを同期化できません。一方、OpenLDAPからOracleバックエンド・ディレクトリには、パスワードを同期化できます。
Oracle Directory Integration Platformで、逆方向に、Oracleバックエンド・ディレクトリからNovell eDirectoryまたはOpenLDAPにパスワードの変更を同期化できるのは、ディレクトリでSSLサーバー側認証が実行されており、Oracleバックエンド・ディレクトリがOracle Internet Directoryである場合のみです。
Oracle Unified Directoryバックエンド・ディレクトリまたはOracle Directory Server Enterprise Editionバックエンド・ディレクトリからの双方向パスワードの同期化はサポートされていません。双方向のパスワードの同期化は、バックエンド・ディレクトリがOracle Internet Directoryである場合にのみサポートされます。
注意: Oracleバックエンド・ディレクトリでは、パスワードは5文字以上である必要があります。いずれかのOpenLDAPパスワードが5文字未満だった場合、Oracleバックエンド・ディレクトリへのパスワード同期は失敗します。 |
OpenLDAPからOracleバックエンド・ディレクトリにパスワードを同期化するには、次のタスクを実行します。
パスワードの同期を有効にするマッピング・ルールの追加。次に例を示します。
userpassword: : : inetorgperson: userpassword: person
(オプション)この手順は、OpenLDAPのハッシング・アルゴリズムとOracle Directory Integration Platformのハッシング・アルゴリズムに互換性がない場合にのみ必要となります。
警告: この手順を完了すると、 |
Oracleディレクトリ・サーバーでのパスワード・ポリシーおよびパスワードの可逆暗号化の有効化。これを行うには、1
の値を、cn=PwdPolicyEntry,cn=common,cn=products,cn=oraclecontext,
DN_of_realm
エントリのorclPwdPolicyEnable
属性とorclpwdEncryptionEnable
属性に指定します。そのためには、ldapmodify
を使用して次の内容のLDIFファイルをアップロードします。
dn:cn=PwdPolicyEntry,cn=common,cn=products,cn=oraclecontext,DN_of_realm. changetype: modify replace: orclpwdpolicyenable orclpwdpolicyenable: 1 - replace: orclpwdencryptionenable orclpwdencryptionenable: 1
関連項目:
|
「SSLモードでの同期用接続ディレクトリ・コネクタの構成」の指示に従い、SSLモードでの同期用にNovell eDirectoryまたはOpenLDAPコネクタを構成します。
「外部認証プラグインの構成」の指示に従い、Novell eDirectoryまたはOpenLDAPの外部認証プラグインを構成します。
構成後タスクおよび継続的な管理タスクの詳細は、第23章「接続ディレクトリとの統合の管理」を参照してください。