Fusion Middleware Oracle Directory Integration Platform管理者ガイド

11gリリース1(11.1.1)

B65032-02(原本部品番号:E10031-05)

目次

例一覧

図一覧

表一覧

タイトルおよび著作権情報

はじめに

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

Oracle Directory Integration Platformの新機能

第I部 Oracle Directory Integration Platformスタート・ガイド

1 Oracle Identity Management統合の概要

- 1.1 Oracle Identity Management統合を行う理由

- 1.2 Oracle Identity Managementのインストール・オプション

- 1.3 同期、プロビジョニングおよび両者の相違点

- 1.3.1 同期

- 1.3.2 プロビジョニング

- 1.3.3 同期とプロビジョニングの相違点

- 1.4 Oracle Identity Management統合に必要なコンポーネント

- 1.4.1 Oracle Directory Integration Platformバックエンド・ディレクトリ

- 1.4.2 Oracle Directory Integration Platform

- 1.4.2.1 Oracle Directory Integration Platform Serverの概要

- 1.4.2.2 Oracle Directory Integration Platform Synchronization Serviceの概要

- 1.4.2.3 Oracle Directory Integration Platform Provisioning Serviceの概要

- 1.4.3 Oracle Application Server Single Sign-On

2 Oracle Directory Integration Platformのセキュリティ機能

- 2.1 Oracle Directory Integration Platformでの認証

- 2.1.1 Secure Sockets LayerとOracle Directory Integration Platform

- 2.1.2 SSLモードでのOracle Directory Integration Platformの認証

- 2.1.3 プロファイルの認証

- 2.2 アクセス制御、認可およびOracle Directory Integration Platform

- 2.2.1 Oracle Directory Integration Platformのアクセス制御

- 2.2.2 プロファイルのアクセス制御

- 2.3 データ整合性とOracle Directory Integration Platform

- 2.4 データ・プライバシとOracle Directory Integration Platform

- 2.5 ツール・セキュリティとOracle Directory Integration Platform

- 2.6 資格証明の格納

第II部 Oracle Directory Integration Platformの一般管理

3 Oracle Directory Integration Platformの管理

- 3.1 Oracle Directory Integration Platformの管理用グラフィカル・ツール

- 3.1.1 Fusion Middleware Controlの使用

- 3.1.1.1 Oracle Directory Integration Platformホームページ

- 3.1.2 Oracle Internet Directoryセルフ・サービス・コンソールの使用

- 3.2 Oracle Directory Integration Platformの管理用コマンドライン・ツール

- 3.2.1 標準LDAPコマンドライン・ツールの使用

4 Oracle Directory Integration Platformの操作

- 4.1 Oracle Directory Integration Platformについての操作情報

- 4.1.1 ディレクトリ同期プロファイル

- 4.1.2 Oracleバックエンド・ディレクトリ・マルチマスター・レプリケーション環境でのOracle Directory Integration Platformイベント伝播

- 4.1.2.1 Oracleバックエンド・ディレクトリ・マルチマスター・レプリケーション環境でのディレクトリ同期

- 4.1.2.2 Oracle Internet Directoryマルチマスター・レプリケーション環境でのディレクトリ・プロビジョニング

- 4.2 Oracle Directory Integration Platformのステータスおよび登録情報の表示

- 4.2.1 dipStatusユーティリティを使用したOracle Directory Integration Platformのステータスの表示

- 4.2.1.1 dipStatusの構文

- 4.2.1.2 dipStatusの引数

- 4.2.1.3 dipStatusの例

- 4.2.2 ldapsearchユーティリティを使用したOracle Directory Integration Platformの登録情報の表示

- 4.3 Fusion Middleware Controlを使用したOracle Directory Integration Platformの管理

- 4.3.1 Fusion Middleware Controlを使用したOracle Directory Integration Platformのランタイム情報の表示

- 4.3.2 Fusion Middleware Controlを使用したOracle Directory Integration Platformの起動

- 4.3.3 Fusion Middleware Controlを使用したOracle Directory Integration Platformの停止

- 4.3.4 Oracle Directory Integration Platform Server構成の管理

- 4.3.5 Fusion Middleware Controlを使用したOracle Directory Integration Platformのロギングの管理

- 4.3.6 Fusion Middleware Controlを使用したOracle Directory Integration Platformの監査

- 4.4 WLSTを使用したOracle Directory Integration Platformの起動と停止

- 4.5 manageDIPServerConfigを使用したOracle Directory Integration Platformの管理

- 4.5.1 manageDIPServerConfigの構文

- 4.5.2 manageDIPServerConfigの引数

- 4.5.3 manageDIPServerConfigのタスクと使用例

- 4.6 SSLモード2のサーバーのみ認証用のOracle Directory Integration Platformの構成

- 4.6.1 SSLサーバー認証用のOracle Internet Directoryの構成方法

- 4.6.2 SSL認証用のOracle Directory Integration Platformの構成方法

- 4.6.3 OID以外のディレクトリでのSSL認証用のOracle Directory Integration Platformの構成方法

- 4.7 バックエンド・ディレクトリと接続ディレクトリのSSL証明書の管理

- 4.7.1 期限が切れた証明書の検出と削除

- 4.8 高可用性を目的とした場合のOracle Directory Integration Platform

- 4.9 レプリケート環境でのOracle Directory Integration Platformの管理

第III部 Oracle Directory Integration Platformを使用した同期

5 Oracle Directory Synchronization Serviceの概要

- 5.1 Oracleディレクトリの同期に必要なコンポーネント

- 5.1.1 ディレクトリ同期用のコネクタ

- 5.1.1.1 コネクタとサポート対象インタフェースの使用

- 5.1.1.2 サポート対象インタフェースなしのコネクタの使用

- 5.1.2 ディレクトリ同期プロファイル

- 5.2 同期の機能

- 5.2.1 バックエンド・ディレクトリから接続ディレクトリへの同期

- 5.2.2 接続ディレクトリからバックエンド・ディレクトリへの同期

- 5.2.3 バックエンド・ディレクトリがサポートしていないインタフェースを持つディレクトリとの同期

6 ディレクトリ同期の構成

- 6.1 Oracle Directory Integration Platformでのコネクタの登録

- 6.2 同期プロファイルのテンプレート

- 6.3 接続詳細の構成

- 6.4 マッピング・ルールの構成

- 6.4.1 識別名マッピング

- 6.4.1.1 ドメインの除外

- 6.4.2 属性レベル・マッピング

- 6.4.2.1 属性の除外

- 6.4.3 新しいマッピング・ファイルの手動作成

- 6.4.4 サポートされている属性マッピング・ルールと例

- 6.4.5 例: タグ付きファイル・インタフェース用のマッピング・ファイル

- 6.4.6 例: LDIFインタフェース用のマッピング・ファイル

- 6.4.7 マッピング・ルールの更新

- 6.4.7.1 エントリのマッピング・ルール・ファイルへの追加

- 6.4.7.2 マッピング・ルール・ファイル内のエントリの変更

- 6.4.7.3 エントリのマッピング・ルール・ファイルからの削除

- 6.5 カスタム・プラグインを使用したマッピングの拡張

- 6.5.1 マッピング・プラグインの作成

- 6.5.2 マッピング・プラグインの評価制約

- 6.5.3 マッピング・プラグインの追加

- 6.5.4 マッピング・プラグインのアプリケーション

- 6.5.4.1 新規のマッピング操作のサポート

- 6.5.4.2 複数のリテラル値のサポート

- 6.5.5 プラグインの使用例

- 6.6 一致フィルタの構成

- 6.6.1 LDAP検索による変更のフィルタ処理

- 6.6.2 変更ログからの変更のフィルタ処理

- 6.7 ファイルの場所とネーミング

7 ディレクトリ同期プロファイルの管理

- 7.1 Fusion Middleware Controlを使用した同期プロファイルの管理

- 7.1.1 同期プロファイルの作成

- 7.1.2 同期プロファイルの編集

- 7.1.3 同期プロファイルの有効化と無効化

- 7.1.4 同期プロファイルの削除

- 7.1.5 DIPテスターを使用した同期プロファイルのトラブルシューティング

- 7.1.5.1 Enterprise Managerユーザー・インタフェースからのDIPテスターの実行

- 7.1.5.2 WLSTコマンドライン・インタフェースからのDIPテスターの実行

- 7.2 manageSyncProfilesを使用した同期プロファイルの管理

- 7.2.1 manageSyncProfilesの構文

- 7.2.2 manageSyncProfilesの引数

- 7.2.3 manageSyncProfilesのタスクと使用例

- 7.3 同期ステータス属性の変更

- 7.4 同期プロファイルでのNULL値の設定

8 Oracle Directory Integration Platformにおけるディレクトリのブートストラップ

- 8.1 syncProfileBootstrapを使用したディレクトリのブートストラップ

- 8.1.1 syncProfileBootstrapの構文

- 8.1.2 syncProfileBootstrapの引数

- 8.1.3 syncProfileBootstrapのタスクと使用例

- 8.1.4 ブートストラップの推奨方法

- 8.1.5 パラメータ・ファイルを使用したブートストラップ

- 8.1.5.1 LDIFファイルを使用しないブートストラップ

- 8.1.5.2 LDIFファイルを使用したブートストラップ

- 8.1.6 デフォルト統合プロファイルを使用した直接ブートストラップ

- 8.2 SSLモードでのブートストラップ

- 8.2.1 DIPキーストアへの信頼できる証明書の追加

- 8.2.1.1 DIPキーストアへの信頼できる証明書の追加方法

9 Oracle Databaseの表との同期

- 9.1 追加構成情報ファイルの準備

- 9.2 マッピング・ファイルの準備

- 9.3 ディレクトリ統合プロファイルの準備

- 9.4 例: リレーショナル・データベース表とバックエンド・ディレクトリの同期化

- 9.4.1 追加構成情報ファイルの構成

- 9.4.2 マッピング・ファイルの構成

- 9.4.3 ディレクトリ統合プロファイルの構成

- 9.4.4 追加構成情報ファイルとマッピング・ファイルのアップロード

- 9.4.5 同期プロセス

- 9.4.6 例に関する注意事項

10 Oracle Human Resourcesとの同期

- 10.1 Oracle Human Resourcesとの同期化の概要

- 10.2 Oracle Human Resourcesからインポートできるデータ

- 10.3 Oracle Human ResourcesとOracleバックエンド・ディレクトリ間の同期の管理

- 10.3.1 タスク1: Oracle Human Resourcesコネクタのディレクトリ統合プロファイルの構成

- 10.3.2 タスク2: Oracleバックエンド・ディレクトリと同期化される属性のリストの構成

- 10.3.2.1 同期に対する追加のOracle Human Resourcesの属性を変更

- 10.3.2.2 Oracle Human Resourcesの属性を同期から除外

- 10.3.2.3 構成ファイルでのSQL SELECT文の構成による複雑な選択基準のサポート

- 10.3.3 タスク3: Oracle Human Resourcesコネクタに関するマッピング・ルールの設定

- 10.3.4 タスク4: Oracle Human ResourcesからOracleバックエンド・ディレクトリへの同期の準備

- 10.3.4.1 同期の準備

- 10.4 同期プロセス

- 10.5 Oracle Human ResourcesからのOracleバックエンド・ディレクトリのブートストラップ

11 サード・パーティのメタディレクトリ・ソリューションとの同期

- 11.1 変更ログの概要

- 11.2 Oracleバックエンド・ディレクトリと同期化するためのサード・パーティのメタディレクトリ・ソリューションの有効化

- 11.2.1 タスク1: 初期ブートストラップの実行

- 11.2.2 タスク2: Oracleバックエンド・ディレクトリでのサード・パーティのメタディレクトリ・ソリューション用変更サブスクリプション・オブジェクトの作成

- 11.2.2.1 変更サブスクリプション・オブジェクトの概要

- 11.2.2.2 変更サブスクリプション・オブジェクトの作成

- 11.3 同期プロセス

- 11.3.1 接続ディレクトリで初めてOracleバックエンド・ディレクトリから変更を取得する方法

- 11.3.2 接続ディレクトリでOracleバックエンド・ディレクトリ内のorclLastAppliedChangeNumber属性を更新する方法

- 11.4 変更サブスクリプション・オブジェクトの無効化と削除

- 11.4.1 変更サブスクリプション・オブジェクトの無効化

- 11.4.2 変更サブスクリプション・オブジェクトの削除

第IV部 Oracle Directory Integration Platformによるプロビジョニング

12 Oracle Directory Integration Platformでのプロビジョニングの概要

- 12.1 プロビジョニングの概要

- 12.2 Oracle Directory Integration Platform Serviceの構成要素

- 12.3 プロビジョニング概念の概要

- 12.3.1 同期プロビジョニング

- 12.3.2 非同期プロビジョニング

- 12.3.3 プロビジョニングのデータ・フロー

- 12.4 プロビジョニング方式の概要

- 12.4.1 外部ソースから同期化されたユーザーのプロビジョニング

- 12.4.2 LDAPコマンドライン・ツールで作成されたユーザーのプロビジョニング

- 12.4.3 provProfileBulkProvツールを使用したバルク・プロビジョニング

- 12.4.3.1 provProfileBulkProvの構文

- 12.4.3.2 provProfileBulkProvの引数

- 12.4.3.3 provProfileBulkProvのタスクと使用例

- 12.4.4 オンデマンド・プロビジョニング

- 12.4.5 アプリケーション・ブートストラップ

- 12.5 Oracle Internet Directoryバックエンド・ディレクトリのユーザー・プロファイルの構成

- 12.5.1 ディレクトリ情報ツリーのプロビジョニング・エントリの構成

- 12.5.2 ユーザー・プロビジョニング・ステータスの概要

- 12.5.2.1 Oracle Internet Directoryのプロビジョニング・ステータス

- 12.5.2.2 プロビジョニング・ステータスの遷移

- 12.5.2.3 アップグレードと共存プロビジョニング・ステータス

- 12.5.2.4 プロビジョニング・ステータスと例外処理

- 12.6 プロビジョニング・フローの概要

- 12.6.1 Fusion Middleware Controlを使用したプロビジョニング・プロファイルの表示および編集

- 12.6.2 外部ソースからのユーザー・プロビジョニング

- 12.7 管理権限の委任方法

- 12.7.1 プロビジョニング管理モデル

13 プロビジョニング統合アプリケーションのデプロイ

- 13.1 プロビジョニング統合アプリケーションのデプロイの概要

- 13.2 oidprovtoolを使用したプロビジョニング・プロファイルの管理

- 13.2.1 oidprovtoolの構文

- 13.2.2 oidprovtoolの引数

- 13.2.3 oidprovtoolのタスクと使用例

- 13.2.3.1 プロビジョニング・プロファイルの作成

- 13.2.3.2 プロビジョニング・プロファイルの変更

- 13.2.3.3 プロビジョニング・プロファイルの削除

- 13.2.3.4 プロビジョニング・プロファイルの無効化

- 13.3 プロビジョニング用のアプリケーションの登録

- 13.4 アプリケーションのプロビジョニング・プロパティの構成

14 Oracleプロビジョニング・イベント・エンジンの概要

- 14.1 Oracleプロビジョニング・イベントとは

- 14.2 Oracleプロビジョニング・イベント・エンジンの操作

- 14.2.1 カスタム・イベント・オブジェクト定義の作成

- 14.2.2 カスタム・イベント生成ルールの定義

15 Oracle E-Business Suiteとのプロビジョニング・データの統合

第V部 サード・パーティ・ディレクトリとの統合

16 接続ディレクトリ統合の概念と考慮事項

- 16.1 接続ディレクトリ統合の概念とアーキテクチャ

- 16.1.1 その他のディレクトリとの統合に関するOracle Identity Managementコンポーネント

- 16.1.2 接続ディレクトリとの同期用のOracleバックエンド・ディレクトリ・スキーマ要素

- 16.1.3 接続ディレクトリとの統合におけるディレクトリ情報ツリー

- 16.1.3.1 Oracle Internet Directoryのレルムの概要

- 16.1.3.2 デプロイの計画

- 16.1.3.3 例: 単一の接続ディレクトリ・ドメインとの統合

- 16.2 統合環境の計画

- 16.2.1 接続ディレクトリとの統合に関する予備的な考慮事項

- 16.2.2 企業の中央ディレクトリとなるディレクトリの選択

- 16.2.2.1 シナリオ1: Oracle Internet Directoryが企業の中央ディレクトリである場合

- 16.2.2.2 シナリオ2: Oracle Internet Directory以外のディレクトリが企業の中央ディレクトリである場合

- 16.2.3 LDAPスキーマのカスタマイズ

- 16.2.4 パスワードの格納場所の選択

- 16.2.4.1 1つのディレクトリにのみパスワードを格納する場合の長所と短所

- 16.2.4.2 両方のディレクトリにパスワードを格納する場合の長所と短所

- 16.2.5 ディレクトリ情報ツリーの構造の選択

- 16.2.5.1 両方のディレクトリ上での同一ディレクトリ情報ツリー構造の作成

- 16.2.5.2 識別名のマッピングおよび制限

- 16.2.6 ログイン名の属性の選択

- 16.2.7 ユーザー検索ベースの選択

- 16.2.8 グループ検索ベースの選択

- 16.2.9 セキュリティ問題に対処する方法の決定

- 16.2.10 Oracle Access Managerによるデプロイの管理

- 16.3 Microsoft Active Directory統合の概念

- 16.3.1 Microsoft Active DirectoryからOracleバックエンド・ディレクトリへの同期

- 16.3.2 WebDAVプロトコルの使用要件

- 16.3.3 Windowsネイティブ認証

- 16.3.3.1 Windowsネイティブ認証の概要

- 16.3.3.2 複数のMicrosoft Active Directoryドメインに対するユーザーの認証

- 16.3.3.3 Windowsネイティブ認証によるアプリケーション認証メカニズムの上書き

- 16.3.4 Microsoft Active Directory用のOracleバックエンド・ディレクトリ・スキーマ要素

- 16.3.5 複数のMicrosoft Active Directoryドメイン・コントローラとの統合

- 16.3.6 複数ドメインMicrosoft Active Directory環境との同期化

- 16.3.6.1 Microsoft Active DirectoryからOracleバックエンド・ディレクトリへのインポートに必要な構成

- 16.3.6.2 Microsoft Active Directory Lightweight Directory ServiceからOracleバックエンド・ディレクトリへのインポートに必要な構成

- 16.3.6.3 Oracleバックエンド・ディレクトリからMicrosoft Active Directoryへのエクスポートに必要な構成

- 16.3.6.4 例: 複数の接続ディレクトリ・ドメインとの統合

- 16.3.7 外部セキュリティ・プリンシパル

- 16.4 Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)統合の概念

- 16.4.1 Oracle Directory Server Enterprise EditionからOracle Directory Integration Platformへの同期

- 16.4.2 Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)用のOracle Internet Directoryスキーマ要素

- 16.5 IBM Tivoli Directory Server統合の概念

- 16.5.1 IBM Tivoli Directory Serverでのディレクトリ・オブジェクトの変更

- 16.5.2 IBM Tivoli Directory Server用のOracleバックエンド・ディレクトリ・スキーマ要素

- 16.6 Novell eDirectoryおよびOpenLDAP統合の概念

- 16.6.1 Novell eDirectoryまたはOpenLDAPからOracleバックエンド・ディレクトリへの同期

- 16.6.2 Novell eDirectory用のOracleバックエンド・ディレクトリ・スキーマ要素

- 16.6.3 OpenLDAP用のOracleバックエンド・ディレクトリ・スキーマ要素

- 16.7 Oracle Directory Integration Platform 11gリリース1(11.1.1)での接続ディレクトリ統合の制限事項

17 接続ディレクトリとの同期の構成

- 17.1 同期要件の確認

- 17.2 expressSyncSetupを使用したインポートおよびエクスポートの同期プロファイルの作成

- 17.2.1 expressSyncSetupの構文

- 17.2.2 expressSyncSetupの引数

- 17.2.3 expressSyncSetupのタスクと使用例

- 17.2.4 expressSyncSetupコマンドの概要

- 17.3 拡張統合オプションの構成

- 17.3.1 レルムの構成

- 17.3.2 Access制御リストのカスタマイズ

- 17.3.2.1 インポート・プロファイル用ACLのカスタマイズ

- 17.3.2.2 エクスポート・プロファイル用ACLのカスタマイズ

- 17.3.2.3 その他のOracleコンポーネント用ACL

- 17.3.3 マッピング・ルールのカスタマイズ

- 17.3.4 SSLモードでの同期用接続ディレクトリ・コネクタの構成

- 17.3.5 Oracleバックエンド・ディレクトリから接続ディレクトリへのパスワードの同期の有効化

- 17.3.6 外部認証プラグインの構成

- 17.3.6.1 複数のドメインに対する外部認証の構成

- 17.4 カスタム同期コネクタの記述

- 17.4.1 インバウンド・コネクタ

- 17.4.1.1 サンプル・リーダー

- 17.4.2 アウトバウンド・コネクタ

- 17.4.2.1 サンプル・ライター

18 Microsoft Active Directoryとの統合

- 18.1 Microsoft Active Directoryの同期要件の確認

- 18.2 Microsoft Active Directoryとの基本同期の構成

- 18.3 Microsoft Active Directoryとの拡張統合の構成

- 18.3.1 手順1: 統合の計画

- 18.3.2 手順2: レルムの構成

- 18.3.3 手順3: Microsoft Active Directoryから情報を取得する検索フィルタのカスタマイズ

- 18.3.4 手順4: ACLのカスタマイズ

- 18.3.5 手順5: 属性マッピングのカスタマイズ

- 18.3.6 手順6: 複数のMicrosoft Active Directoryドメインとの同期

- 18.3.7 手順7: Microsoft Active Directoryからの削除の同期化

- 18.3.8 手順8: SSLモードでの同期

- 18.3.9 手順9: パスワードの同期化

- 18.3.10 手順10: Microsoft Active Directory外部認証プラグインの構成

- 18.3.11 手順11: 構成後タスクおよび管理タスクの実行

- 18.4 インポート操作変更追跡でのDirsync方式の使用

- 18.5 Windowsネイティブ認証の構成

- 18.5.1 Windowsネイティブ認証のシステム要件

- 18.5.2 外部ユーザーに対するHTTP-401エラーおよびログイン・チャレンジの繰返しの回避

- 18.5.3 単一のMicrosoft Active DirectoryドメインでのWindowsネイティブ認証の構成

- 18.5.4 複数のMicrosoft Active DirectoryドメインまたはフォレストでのWindowsネイティブ認証の構成

- 18.5.5 フォールバック認証の実装

- 18.5.6 可能なログインの例

- 18.6 Oracle Internet Directory外部セキュリティ・プリンシパル参照とMicrosoft Active Directoryとの同期の構成

- 18.7 同一ドメイン内の異なるMicrosoft Active Directoryドメイン・コントローラへの切替え

- 18.8 Microsoft Active Directory Lightweight Directory Service用のMicrosoft Active Directoryコネクタの構成

- 18.9 Microsoft Exchange Server用のMicrosoft Active Directoryコネクタの構成

- 18.9.1 ユーザー・インタフェースからMicrosoft Exchangeユーザーの同期を有効化する方法

- 18.9.2 コマンドラインからMicrosoft Exchangeユーザーの同期を有効化する方法

19 Oracle Password Filter for Microsoft Active Directoryのデプロイ

- 19.1 Oracle Password Filter for Microsoft Active Directoryの概要

- 19.1.1 Oracle Password Filter for Microsoft Active Directoryの概要

- 19.1.2 Oracle Password Filter for Microsoft Active Directoryの動作

- 19.1.2.1 クリアテキストのパスワードの変更方法

- 19.1.2.2 Oracleバックエンド・ディレクトリが使用不可の際にパスワードの変更が格納される

- 19.1.2.3 Microsoft Active DirectoryユーザーがOracle Identity Managementと同期化されるまでパスワードの同期が遅延される

- 19.1.2.4 パスワードのブートストラッピング

- 19.1.3 Oracle Password Filter for Microsoft Active Directoryのデプロイ方法

- 19.2 SSLサーバー側認証でのOracle Internet Directoryの構成およびテスト

- 19.3 Microsoft Active Directoryドメイン・コントローラへの信頼できる証明書のインポート

- 19.4 Oracle Internet DirectoryとMicrosoft Active Directory間のSSL通信のテスト

- 19.5 Oracle Password Filter for Microsoft Active Directoryのインストールおよび再構成

- 19.5.1 Oracle Password Filter for Microsoft Active Directoryのインストール

- 19.5.2 Oracle Password Filter for Microsoft Active Directoryの再構成

- 19.6 Oracle Password Filter for Microsoft Active Directoryの削除

20 「Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)との統合」

- 20.1 Oracle Directory Server Enterprise Editionの同期要件の確認

- 20.2 Oracle Directory Server Enterprise Editionとの基本同期の構成

- 20.3 Oracle Directory Server Enterprise Editionとの拡張統合の構成

- 20.3.1 手順1: 統合の計画

- 20.3.2 手順2: レルムの構成

- 20.3.3 手順3: ACLのカスタマイズ

- 20.3.4 手順4: 属性マッピングのカスタマイズ

- 20.3.5 手順5: 削除を同期化するためのOracle Directory Server Enterprise Edition(Sun Java System Directory Server)コネクタのカスタマイズ

- 20.3.6 手順6: パスワードの同期化

- 20.3.7 手順7: SSLモードでの同期

- 20.3.8 手順8: Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)外部認証プラグインの構成

- 20.3.9 手順9: 構成後タスクおよび管理タスクの実行

21 IBM Tivoli Directory Serverとの統合

- 21.1 IBM Tivoli Directory Serverの同期要件の確認

- 21.2 IBM Tivoli Directory Serverとの基本同期の構成

- 21.3 IBM Tivoli Directory Serverとの拡張統合の構成

- 21.3.1 手順1: 統合の計画

- 21.3.2 手順2: レルムの構成

- 21.3.3 手順3: ACLのカスタマイズ

- 21.3.4 手順4: 属性マッピングのカスタマイズ

- 21.3.5 手順5: 削除を同期化するためのIBM Tivoli Directory Serverコネクタのカスタマイズ

- 21.3.6 手順6: パスワードの同期化

- 21.3.7 手順7: SSLモードでの同期

- 21.3.8 手順8: IBM Tivoli Directory Server外部認証プラグインの構成

- 21.3.9 手順9: 構成後タスクおよび管理タスクの実行

22 Novell eDirectoryまたはOpenLDAPとの統合

- 22.1 Novell eDirectoryまたはOpenLDAPの同期要件の確認

- 22.2 Novell eDirectoryまたはOpenLDAPとの基本同期の構成

- 22.2.1 eDirectoryまたはOpenLDAPから1つのOracleバックエンド・ディレクトリ・コンテナへの複数のプロファイルの同期化

- 22.3 Novell eDirectoryまたはOpenLDAPとの拡張統合の構成

- 22.3.1 手順1: 統合の計画

- 22.3.2 手順2: レルムの構成

- 22.3.3 手順3: Novell eDirectoryまたはOpenLDAPから情報を取得する検索フィルタのカスタマイズ

- 22.3.4 手順4: ACLのカスタマイズ

- 22.3.5 手順5: 属性マッピングのカスタマイズ

- 22.3.6 手順6: 削除を同期化するためのNovell eDirectoryまたはOpenLDAPコネクタのカスタマイズ

- 22.3.6.1 リコンシリエーション・ルールの定義方法

- 22.3.6.2 リコンシリエーション・ルールを使用して削除を同期化する方法

- 22.3.7 手順7: 「拡張構成情報」属性用の同期パラメータの指定

- 22.3.8 手順8: パスワードを同期化するためのOpenLDAPコネクタの構成

- 22.3.9 手順9: SSLモードでの同期

- 22.3.10 手順10: Novell eDirectoryまたはOpenLDAP外部認証プラグインの構成

- 22.3.11 手順11: 構成後タスクおよび管理タスクの実行

23 接続ディレクトリとの統合の管理

- 23.1 接続ディレクトリでの構成後のタスク

- 23.2 接続ディレクトリとの統合の一般的な管理

- 23.2.1 ディレクトリ間でのデータのブートストラップ

- 23.2.2 サード・パーティ・ディレクトリ外部認証プラグインの管理

- 23.2.2.1 サード・パーティ・ディレクトリ外部認証プラグインの削除

- 23.2.2.2 サード・パーティの外部認証プラグインの無効化

- 23.2.2.3 サード・パーティの外部認証プラグインの再有効化

第VI部 付録

A Oracle Directory Integration Platform 11gリリース1(11.1.1)と10gリリース(10.1.4.x)の比較

- A.1 プロセス管理

- A.2 構成ファイル

- A.3 マッピング・ファイル、構成ファイルおよびプロパティ・ファイルのテンプレート

- A.4 ログ・ファイル

- A.5 グラフィカル・ユーザー・インタフェース

- A.6 コマンドライン・ツール

- A.7 監査の構成

- A.8 監査ログの場所

B 同期プロファイルのプロパティ・ファイルの例

- B.1 同期プロファイルのプロパティ・ファイルの例

C 事例: Oracle Directory Integration Platformのデプロイ

- C.1 企業MyCompany内のコンポーネント

- C.2 企業MyCompany内の要件

- C.3 企業MyCompany内の全体的なデプロイ

- C.4 企業MyCompanyでのユーザーの作成とプロビジョニング

- C.5 企業MyCompanyでのユーザー・プロパティの変更

- C.6 企業MyCompanyでのユーザーの削除

D Oracleスタックの起動と停止

- D.1 スタックの起動

- D.2 スタックの停止

E Oracle Directory Integration Platformのトラブルシューティング

- E.1 Oracle Directory Integration Platformのトラブルシューティング用チェックリスト

- E.2 原因および解決策

- E.2.1 プロビジョニングのエラーと問題

- E.2.2 同期のエラーと問題

- E.2.3 Windowsネイティブ認証のエラーと問題

- E.2.4 Novell eDirectoryとOpenLDAPの同期のエラーと問題

- E.2.5 Oracle Password Filter for Microsoft Active Directoryのエラーと問題

- E.3 同期に関するトラブルシューティング

- E.3.1 Oracle Directory Integration Platformの同期プロセスの流れ

- E.3.1.1 インポート・プロファイルの場合のOracle Directory Integration Platformの同期プロセスの流れ

- E.3.1.2 エクスポート・プロファイルの場合のOracle Directory Integration Platformの同期プロセスの流れ

- E.3.2 同期プロファイルの登録の概要

- E.3.3 diagnostic.logファイルの概要

- E.4 Microsoft Active Directoryとの統合に関するトラブルシューティング

- E.4.1 Windowsネイティブ認証のデバッグ

- E.4.2 Oracleバックエンド・ディレクトリの使用不可期間後の変更の同期

- E.5 追加情報

用語集

索引

例一覧

- 6-1 識別名マッピングの例

- 6-2 1対1識別名マッピングの例

- 6-3 DomainExclusionListヘッダーおよびAttributeExclusionListヘッダーを使用したマップ・ファイルの例

- 18-1 Microsoft Active Directoryのユーザー・オブジェクト用の属性レベル・マッピング

- 18-2 Microsoft Active Directoryのグループ・オブジェクト用の属性レベル・マッピング

- 18-3 外部キー参照の解決方法

- 20-1 Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)のユーザー・オブジェクト用の属性レベル・マッピング

- 20-2 Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)のグループ・オブジェクト用の属性レベル・マッピング

- 21-1 IBM Tivoli Directory Serverのユーザー・オブジェクト用の属性レベル・マッピング

- 21-2 IBM Tivoli Directory Serverのグループ・オブジェクト用の属性レベル・マッピング

- 22-1 Novell eDirectoryまたはOpenLDAPのユーザー・オブジェクト用の属性レベル・マッピング

- 22-2 Novell eDirectoryまたはOpenLDAPのグループ・オブジェクト用の属性レベル・マッピング

図一覧

- 1-1 Oracle Directory Integration Platform環境の例

- 1-2 Oracle Directory Integration Platform Synchronization Serviceの相互作用

- 1-3 Oracle Directory Integration Platform Provisioning Serviceの相互作用

- 12-1 LDAPコマンドライン・ツールによる同期プロビジョニング

- 12-2 LDAPコマンドライン・ツールによる非同期プロビジョニング

- 12-3 プロビジョニングのデータ・フロー

- 12-4 ベース・ユーザー属性とアプリケーション固有属性

- 12-5 有効なプロビジョニング・ステータスの遷移

- 16-1 デフォルト・アイデンティティ管理レルム

- 16-2 Oracle Internet Directoryと接続ディレクトリのホストがドメインus.MyCompany.com下に存在する場合の両ディレクトリにおけるデフォルトのDIT構造

- 16-3 Oracle Internet Directoryを企業の中央ディレクトリとして使用するコンポーネント間の相互作用

- 16-4 サード・パーティ・ディレクトリを企業の中央ディレクトリとして使用するコンポーネント間の相互作用

- 16-5 Windowsネイティブ認証の流れ

- 16-6 Oracleバックエンド・ディレクトリとMicrosoft Active Directory内のフォレストの間のマッピング

- 16-7 Oracleバックエンド・ディレクトリとMicrosoft Active Directory内の複数のドメインの間のマッピングの例

- C-1 MyCompanyでのOracle Directory Integration Platformのデプロイの例

- C-2 ユーザーの作成とプロビジョニング

- C-3 ユーザー・プロパティの変更

- C-4 企業のHuman Resourcesからのユーザーの削除

表一覧

- 1-1 ディレクトリ同期とプロビジョニング統合の違い

- 3-1 エントリおよび属性の管理コマンドライン・ツール

- 6-1 接続詳細のプロパティ

- 6-2 ドメイン・ルールのコンポーネント

- 6-3 属性ルールのコンポーネント

- 6-4 ファイルの場所と名前

- 7-1 同期プロファイルのプロパティ、「基本プロパティ」

- 7-2 同期プロファイルのプロパティ、「ソースの詳細」または「宛先の詳細」

- 7-3 同期プロファイルのプロパティ、「拡張」

- 9-1 TESTDBIMPORT用のディレクトリ統合プロファイル

- 10-1 Oracle Human Resourcesスキーマの表

- 10-2 Oracle Human Resourcesのユーザー・インタフェースのフィールド

- 10-3 Oracle Human Resourcesコネクタ統合プロファイルに固有の属性

- 10-4 デフォルトでOracleバックエンド・ディレクトリと同期化されるOracle Human Resourcesの属性

- 12-1 Oracle Internet Directoryのプロビジョニング・ステータス

- 12-2 Oracle Internet Directoryでの有効なプロビジョニング・ステータスの遷移

- 12-3 プロビジョニング・プロファイルのフィールド

- 13-1 Oracle Internet Directoryの共通権限グループ

- 14-1 イベント・オブジェクトのプロパティ

- 14-2 事前定義されたイベント・オブジェクト

- 14-3 サポートされるイベント定義

- 16-1 Oracle Internet Directoryを企業の中央ディレクトリとして使用する場合の一般的な要件

- 16-2 Oracle Internet Directory以外のディレクトリを企業の中央ディレクトリとして使用するが、Oracle Internet Directoryがバックエンド・ディレクトリである場合の一般的な要件

- 16-3 DirSync方式とUSN-Changed方式の比較

- 16-4 Microsoft Active Directory用のOracleバックエンド・ディレクトリ・スキーマ要素

- 16-5 IBM Tivoli Directory Server用のOracleバックエンド・ディレクトリ・スキーマ要素

- 16-6 Novell eDirectory用のOracleバックエンド・ディレクトリ・スキーマ要素

- 16-7 OpenLDAP用のOracle Internet Directoryスキーマ要素

- 17-1 connectedDirectoryURL属性のsslmodeに対してサポートされる値

- 17-2 外部認証プラグインの識別名

- 18-1 Internet ExplorerでのSingle Sign-Onログインのオプション

- 19-1 Microsoft Active Directory用のOracle Password Filterの構成パラメータ

- 19-2 Oracle Internet Directory用のOracle Password Filterの構成パラメータ

- 22-1 拡張構成情報属性用のNovell eDirectoryとOpenLDAPの同期パラメータ

Oracle® Fusion Middleware

Oracle Directory Integration Platform管理者ガイド

11gリリース1(11.1.1)

B65032-02(原本部品番号:E10031-05)

2011年11月

Oracle Fusion Middleware Oracle Directory Integration Platform管理者ガイド, 11g リリース1(11.1.1)

B65032-02

Copyright © 1999, 2011 Oracle and/or its affiliates.All rights reserved.

原本著者: Kevin Kessler

原本協力者: Don Biasotti、Don Gosselin

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があり、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントが、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供される場合は、次のNoticeが適用されます。

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007).Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、このソフトウェアまたはハードウェアを安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

このソフトウェアおよびドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

RSA and RC4 are trademarks of RSA Data Security.Portions of Oracle Internet Directory have been licensed by Oracle Corporation from RSA Data Security.

この製品には、Consensus Development社のSSLPlus Integration SuiteTMバージョン1.2が含まれています。

はじめに

『Oracle Fusion Middleware Oracle Directory Integration Platform管理者ガイド』では、Oracle Directory Integration Platformを使用してアプリケーションおよびディレクトリ(サード・パーティのLDAPディレクトリを含む)をOracle Internet Directoryと統合する方法を説明します。

対象読者

『Oracle Fusion Middleware Oracle Directory Integration Platform管理者ガイド』は、Oracle Internet Directoryをアプリケーションおよび他のディレクトリ(サード・パーティのLDAPディレクトリを含む)と統合する必要があるすべてのユーザーを対象としています。管理者は、UNIX/Linuxオペレーティング・システムまたはMicrosoft Windowsのいずれかに精通し、このマニュアルのコマンドや例を理解できる必要があります。

このマニュアルを使用するには、Lightweight Directory Access Protocol(LDAP)にある程度精通している必要があります。

ドキュメントのアクセシビリティについて

オラクル社のアクセシビリティへの取組みの詳細は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docaccを参照してください。

Oracleサポートへのアクセス

Oracleカスタマは、My Oracle Supportから電子サポートにアクセスできます。詳細は、http://www.oracle.com/pls/topic/lookup?ctx=acc&id=infoまたはhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs (聴覚障害者向け)を参照してください。

関連ドキュメント

詳細は、次を参照してください。

- Oracle Delegated Administration ServicesおよびOracle Enterprise Managerで使用できるオンライン・ヘルプ。

- Oracle Application Server、Oracle DatabaseおよびOracle Identity Managementのドキュメント・セット。特に次のマニュアルを参照してください。

- 『Oracle Fusion Middleware Oracle Identity Managementインストレーション・ガイド』

- 『Oracle Fusion Middleware Oracle Identity Managementスタート・ガイド』

- 『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』

- 『Oracle Fusion Middleware Guide to Delegated Administration for Oracle Identity Management』

- 『Oracle Fusion Middleware Oracle Identity Managementアプリケーション開発者ガイド』

- 『Oracle Enterprise Single Sign-On Suite Plus管理者ガイド』

- 『Oracle Application Server Certificate Authority管理者ガイド』

- 『Oracle Fusion Middleware Oracle Identity Managementリファレンス』

- 『Oracle Fusion Middleware高可用性ガイド』

- 『Oracle Fusion Middleware管理者ガイド』

- 『Oracle Fusion Middlewareセキュリティ・ガイド』

- 『Oracle Fusion Middleware WebLogic Scripting Toolのコマンド・リファレンス』

- 『Oracle Fusion Middleware Oracle WebLogic Scripting Tool』

詳しい情報は、次のドキュメントを参照してください。

- David Chadwick著『Understanding X.500—The Directory』(Thomson Computer Press, 1996)。

- Tim Howes、Mark Smith著『LDAP: Programming Directory-enabled Applications with Lightweight Directory Access Protocol』(Macmillan Technical Publishing, 1997)。

- Tim Howes、Mark Smith、Gordon Good著『Understanding and Deploying LDAP Directory Services』(Macmillan Technical Publishing, 1999)。

- オブジェクト識別子については、Internet Assigned Numbers Authorityのホームページ(http://www.iana.org)を参照してください。

- http://www.ietf.orgで入手可能なInternet Engineering Task Force(IETF)のドキュメント、特に次のものを参照してください。

- LDAPEXTのCharterおよびLDAPのDraft

- LDUPのCharterおよびDraft

- RFC 2254、「The String Representation of LDAP Search Filters」

- RFC 1823、「The LDAP Application Program Interface」

- OpenLDAP Community(http://www.openldap.org)

表記規則

このマニュアルでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

イタリックは、ユーザーが特定の値を指定するプレースホルダ変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

Oracle Directory Integration Platformの新機能

Oracle Directory Integration Platform 11gリリース1(11.1.1)の新機能は次のとおりです。

- Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionのバックエンド・ディレクトリ・サポート: 11gリリース1(11.1.1.5)では、バックエンド・ディレクトリを確立するときに、3つのディレクトリから選択できるようになりました。以前は使用可能な唯一のバックエンド・ディレクトリ・オプションであったOracle Internet Directory(OID)に加え、Oracle Unified Directory(OUD)またはOracle Directory Server Enterprise Edition(ODSEE)も、Oracle Directory Integration Platformバックエンド・ディレクトリとして選択できるようになりました。OUDおよびODSEEの両方でディレクトリの同期がサポートされますが、プロビジョニングはサポートされません。(Oracle Internet Directory(OID)では、引き続き、ディレクトリの同期とプロビジョニングの両方がサポートされます。)バックエンド・ディレクトリの詳細は、第1.4.1項「Oracle Directory Integration Platformバックエンド・ディレクトリ」を参照してください。

- J2EEアプリケーションとしてのOracle Directory Integration Platform: 11gリリース1(11.1.1)では、Oracle Directory Integration PlatformはJ2EEアプリケーションとして動作します。詳細は、「Oracle Directory Integration Platform」を参照してください。

- 監視および管理のためのFusion Middleware Controlとの統合: 11g リリース1(11.1.1)では、Oracle Enterprise Manager Fusion Middleware Controlを使用してOracle Directory Integration Platformの監視および管理を行えます。詳細は、「Fusion Middleware Controlを使用したOracle Directory Integration Platformの管理」を参照してください。

- WebLogic Scripting Tools(WLST): WebLogic Scripting Tool(WLST)フレームワークを使用するためにOracle Directory Integration Platform 11gリリース1(11.1.1)のコマンドライン・ツールが更新されました。コマンドライン・ツールではWLSTフレームワークが使用されますが、コマンドの実行にwlst接頭辞を使用する必要はありません。詳細は、「Oracle Directory Integration Platformの管理用コマンドライン・ツール」を参照してください。

- データ変換(マッピング)を拡張するためのカスタム・プラグインのサポート: Oracle Directory Integration Platform 11gリリース1(11.1.1)では、データ変換(マッピング)機能を拡張するためのカスタム・プラグインのサポートが提供されます。この機能を使用することで、新規のマッピング操作や複数のリテラル値のサポートが必要な場合などに、カスタム・プラグインを作成して実装できます。詳細は、「カスタム・プラグインを使用したマッピングの拡張」を参照してください。

- マップ・ファイルでのドメインおよび属性の除外: Oracle Directory Integration Platform 11gリリース1(11.1.1)には、ブートストラップや同期化の際に除外するドメインおよび属性を識別できる機能が含まれています。詳細は、「ドメインの除外」および「属性の除外」を参照してください。

- カスタム・コネクタのサポート: Oracle Directory Integration Platform 11gリリース1(11.1.1)では、カスタム同期コネクタのサポートが提供されます。Oracle Directory Integration Platformのカスタム・インバウンド・コネクタおよびアウトバウンド・コネクタの記述に関する詳細は、「カスタム同期コネクタの記述」を参照してください。

- Fusion Middlewareインフラストラクチャ(監査、ロギング、資格証明ストア・フレームワーク)との統合: Oracle Directory Integration Platform 11gリリース1(11.1.1)では、Oracle Fusion Middlewareのインフラストラクチャを使用して、監査、ロギングおよび資格証明の格納を行うことができます。詳細は、次を参照してください。

- 「Fusion Middleware Controlを使用したOracle Directory Integration Platformのロギングの管理」

- 「Fusion Middleware Controlを使用したOracle Directory Integration Platformの監査」

- 「資格証明の格納」

- このマニュアルの新しいタイトル: 11g リリース1(11.1.1.2.0)で、このマニュアルの名称は、『Oracle Fusion Middleware Oracle Identity Management統合ガイド』から、現在のタイトル『Oracle Fusion Middleware Oracle Directory Integration Platform管理者ガイド』に変更されました。

第I部

Oracle Directory Integration Platformスタート・ガイド

この部では、Oracle Directory Integration Platformの概念、コンポーネント、アーキテクチャおよびセキュリティ機能について説明します。次の章が含まれます:

- 第1章「Oracle Identity Management統合の概要」

- 第2章「Oracle Directory Integration Platformのセキュリティ機能」

1 Oracle Identity Management統合の概要

この章では、Oracle Identity Management統合とそのコンポーネント、構造および管理ツールの概要について説明します。

この章は、次の項目を含みます。

- Oracle Identity Management統合を行う理由

- Oracle Identity Managementのインストール・オプション

- 同期、プロビジョニングおよび両者の相違点

- Oracle Identity Management統合に必要なコンポーネント

関連項目:
Oracle Identity Management統合のデプロイの例は、付録C「事例: Oracle Directory Integration Platformのデプロイ」を参照してください。

1.1 Oracle Identity Management統合を行う理由

Oracle Directory Integration Platformでは、アプリケーションおよびディレクトリ(サード・パーティのLDAPディレクトリを含む)をマスター・バックエンド・ディレクトリと統合することによって、管理にかかる時間とコストを削減できます。Oracle Directory Integration Platform(DIP)では、Oracle Internet Directory、Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionのいずれかをバックエンド・ディレクトリとして使用することをサポートします。

Oracle Directory Integration Platformは、次のような目的を達成するために使用します。

- Oracle Human ResourcesとOracleバックエンド・ディレクトリで従業員レコードの整合性を維持すること。Oracle Directory Integration Platformでは、Oracle Directory Synchronization Serviceによりこの同期化を行います。

- 変更がOracleバックエンド・ディレクトリに適用されるたびに、Oracle Application Server Portal(Oracle Portal)などのLDAP対応アプリケーションに通知すること。Oracle Directory Integration Platformでは、Oracle Directory Integration Platform Provisioning Serviceによりこの通知を行います。

統合処理全体を通して、Oracle Directory Integration Platformは、アプリケーションとその他のディレクトリが確実な方法で必要な情報をやりとりすることを保証します。

次に示すような、様々なディレクトリと統合できます。

- Microsoft Active Directory 2003および2008

- Windows 2003上のSP1適用済Active Directory Application Mode(ADAM)バージョン1(Microsoft Active Directory Lightweight Directory Service(AD LDS))

- Oracle Directory Server Enterprise Edition(ODSEE)11gR1(11.1.1.3+)(以前のSun Java System Directory Server)

- Novell eDirectory 8.8

- OpenLDAP 2.2

- IBM Tivoli Directory Server 6.2

- Oracle Unified Directory 11gR1(11.1.1.5+)

関連項目:
サポートされているディレクトリの完全なリストは、次のURLから入手できるOracle Fusion Middleware 11gR1のシステム要件とサポート対象プラットフォームの動作保証マトリックスを参照してください。
http://www.oracle.com/technetwork/middleware/downloads/fmw-11gr1certmatrix.xls

「FMW on WLS - Id&Access」タブをクリックし、「LDAP Certifications for Oracle Fusion Middleware 11gRelease1(11.1.1.x)」ヘッダーの下に表示される「Directory Integration Platform(DIP)」行を参照してください。

たとえば、Oracle Fusion Middleware環境では、Oracleコンポーネントへのアクセスは、Oracleディレクトリに格納されているデータに基づいて行いますが、企業の中央ディレクトリとしてMicrosoft Active Directoryも使用できます。これらのディレクトリのユーザーがOracleコンポーネントにアクセスできるのは、Oracle Directory Integration Platformにより、Microsoft Active Directory内のデータを、Oracle Internet Directory、Oracle Unified DirectoryまたはOracle Directory Server Enterprise Edition内のデータと同期化できるためです。

関連項目:

- 第10章「Oracle Human Resourcesとの同期」

- 第18章「Microsoft Active Directoryとの統合」

- 第20章「Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)との統合」

1.2 Oracle Identity Managementのインストール・オプション

Oracle Directory Integration Platformは、他のOracle Identity Managementコンポーネントと同時に同じホスト(サーバー)にインストールしたり、他のOracle Identity Managementコンポーネントとは別に、スタンドアロン・インスタンスとして単独でホスト・システムにインストールできます。これは、たとえば、J2EEベースのコンポーネント(DIP、ODSM、FMWコントロールなど)を、専用サーバーの専用WebLogicドメインで個別に管理する場合に当てはまります。

Oracle Directory Integration Platformのスタンドアロン・インスタンスをインストールするには、まずOracle Internet Directory、Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionコンポーネントをインストールする必要があります。次のような状況では、Oracle Directory Integration Platformのスタンドアロン・インスタンスをインストールする必要があります。

- Oracle Directory Integration Platformを別のアプリケーション・サーバー・インスタンスにインストールする必要がある場合

- プロビジョニングおよび同期化が必要なアプリケーションに、集中的な処理が必要な場合

- 高可用性のために複数のOracle Directory Integration Platformインスタンスを実行する必要がある場合

関連項目:
Oracle Directory Integration Platformのインストールの詳細は、『Oracle Fusion Middleware Oracle Identity Managementインストレーション・ガイド』を参照してください。

1.3 同期、プロビジョニングおよび両者の相違点

同期は、アプリケーションではなくディレクトリを扱います。Oracleバックエンド・ディレクトリと他の接続ディレクトリの両方に存在するエントリおよび属性の一貫性を確保します。

注意:
同期とレプリケーションは、同義ではありません。レプリケーションは、同一ベンダーのディレクトリ間でのデータ処理に対して使用されます。一方、同期では、DIPによって提供される変換およびマッピング・ルールに基づき、バックエンド・ディレクトリ(メタディレクトリ)とすべてのサード・パーティの接続ディレクトリ間で同期を保つ必要があるデータをより詳細に制御できます。

プロビジョニングは、アプリケーションを扱います。アプリケーションで追跡が必要なユーザーやグループのエントリまたは属性への変更を通知します。

この項の内容は次のとおりです。

- 同期

- プロビジョニング

- 同期とプロビジョニングの相違点

1.3.1 同期

同期によって、Oracleバックエンド・ディレクトリと接続ディレクトリの間で変更を調整できます。すべてのディレクトリが最新のデータのみを使用し、提供するためには、その他の接続ディレクトリでの変更がすべて各ディレクトリに伝達される必要があります。同期は、プロビジョニングによって更新されたデータも含めて、ディレクトリ情報に対する変更の一貫性を確保します。

単一のDirectory Integration Platformサービスにより、複数の接続ディレクトリとOracleバックエンド・ディレクトリ間の同期作業を同時に処理できます。追加のディレクトリをOracleバックエンド・ディレクトリに接続するには、その特定のディレクトリ用に同期プロファイルを作成します。このプロファイルによって、Oracleバックエンド・ディレクトリと接続ディレクトリとの間で同期化されるデータの書式と内容が指定されます。同期プロファイルを作成するには、manageSyncProfilesユーティリティまたはOracle Enterprise Manager Fusion Middleware Controlを使用します。

関連項目:
第III部「Oracle Directory Integration Platformを使用した同期」

1.3.2 プロビジョニング

プロビジョニングによって、たとえば、ディレクトリのユーザーまたはグループに関する情報への変更をアプリケーションに確実に通知できます。このような変更は、アプリケーションでプロセスに対するユーザー・アクセスを許可するかどうかや、使用できるリソースを決定するかどうかに影響を及ぼすことがあります。

プロビジョニングを使用するのは、次の要件を持つアプリケーションを設計またはインストールする場合です。

- ディレクトリを維持しないアプリケーション

- LDAP対応のアプリケーション

- リソースへのアクセスを認可ユーザーのみに限定するアプリケーション

プロビジョニング対象のアプリケーションをインストールする場合、oidprovtoolユーティリティを使用して、そのためのプロビジョニング統合プロファイルを作成する必要があります。

関連項目:
第IV部「Oracle Directory Integration Platformによるプロビジョニング」

1.3.3 同期とプロビジョニングの相違点

同期とプロビジョニングには、表1-1に示すように、操作に重要な違いがあります。

表1-1 ディレクトリ同期とプロビジョニング統合の違い

比較項目

ディレクトリ同期

プロビジョニング統合

実行のタイミング

アプリケーションのデプロイ時。ディレクトリ同期の対象は、Oracleバックエンド・ディレクトリとの同期が必要な接続ディレクトリです。

アプリケーションの設計時。プロビジョニング統合を使用するのは、LDAP対応アプリケーションを開発するアプリケーション設計者です。

通信の方向

一方向または双方向、つまり、Oracleバックエンド・ディレクトリから接続ディレクトリ(1つ以上の接続されたOracle Databaseを含む)へ、その逆、またはその両方です。

一方向または双方向、つまり、Oracleバックエンド・ディレクトリからアプリケーションへ、その逆、またはその両方です。

データの種類

ディレクトリ内のデータ。

プロビジョニング・ユーザーおよびグループに制限されます。

例

Oracle Human Resources

Oracle Directory Server Enterprise Edition

Oracle Unified Directory

Oracle Internet Directory

Microsoft Active Directory

Novell eDirectory

OpenLDAP

IBM Tivoli Directory Server

Oracle Database

Oracle Portal

1.4 Oracle Identity Management統合に必要なコンポーネント

この項では、Oracle Identity Management統合に必要なコンポーネントを説明します。内容は次のとおりです。

- Oracle Directory Integration Platformバックエンド・ディレクトリ

- Oracle Directory Integration Platform

- Oracle Application Server Single Sign-On

1.4.1 Oracle Directory Integration Platformバックエンド・ディレクトリ

Oracle Internet Directory、Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionのいずれかを、Oracleコンポーネントとサード・パーティ・アプリケーションがユーザー・アイデンティティおよび資格証明を格納してアクセスするリポジトリとして使用できます。Oracleバックエンド・ディレクトリでは、Oracleディレクトリ・サーバーを使用し、ユーザーが入力した資格証明をOracleディレクトリに格納されている資格証明と比較してユーザーを認証します。

資格証明がOracleバックエンド・ディレクトリではなく接続ディレクトリに格納されている場合でも、Oracle Internet Directoryをバックエンド・ディレクトリとして使用している場合は、ユーザーは認証されます。この場合、Oracle Internet Directoryは、接続ディレクトリ・サーバーに対してユーザーを認証する外部認証プラグインを使用します。現在、Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionでは外部認証プラグインを使用できないため、これらのディレクトリのいずれかをバックエンド・ディレクトリとして使用している場合に、資格証明が接続ディレクトリに保管されていると、ユーザーを認証できません。

1.4.2 Oracle Directory Integration Platform

Oracle Directory Integration Platformは、様々なリポジトリとOracleバックエンド・ディレクトリ間のデータ同期を可能にするJ2EEアプリケーションです。Oracle Directory Integration Platformは、他のエンタープライズ・リポジトリとともに同期化ソリューションを開発できるようにするためのサービスとインタフェースを提供します。サード・パーティのメタディレクトリ・ソリューションとOracleディレクトリ間の相互運用性も提供します。

図1-1に、Oracle Directory Integration Platform環境の例を示します。

図1-1 Oracle Directory Integration Platform環境の例

図1-1の例では、Oracle Directory Integration Platformの同期Enterprise JavaBeans(EJB)およびクォーツ・スケジューラを使用して、Oracleバックエンド・ディレクトリが接続ディレクトリと同期化されます。同様に、Oracle Directory Integration PlatformのプロビジョニングEnterprise JavaBeans(EJB)およびクォーツ・スケジューラを使用して、Oracleバックエンド・ディレクトリでの変更が様々なリポジトリに送信されます。

1.4.2.1 Oracle Directory Integration Platform Serverの概要

Oracle Directory Integration Platform Serverは、次のサービスを実行します。

- Oracle Directory Integration Platform Synchronization Service:

- スケジューリング: 事前定義されたスケジュールに基づいて同期プロファイルを処理

- マッピング: 接続ディレクトリとOracleバックエンド・ディレクトリの間のデータ変換ルールを実行

- データ伝播: コネクタを使用して接続ディレクトリとデータを交換

- エラー処理

- Oracle Directory Integration Platform Provisioning Service:

- スケジューリング: 事前定義されたスケジュールに基づいてプロビジョニング・プロファイルを処理

- イベント通知: Oracleバックエンド・ディレクトリに格納されているユーザー・データまたはグループ・データに関連した変更をアプリケーションに通知

- エラー処理

関連項目:
第4章「Oracle Directory Integration Platformの操作」

1.4.2.2 Oracle Directory Integration Platform Synchronization Serviceの概要

Oracle Directory Integration Platform環境における接続ディレクトリの内容は、Oracle Directory Integration Platform Synchronization Service(同期Enterprise JavaBeans(EJB)およびクォーツ・スケジューラを含む)を介してOracleバックエンド・ディレクトリと同期化されます。

Oracle Fusion Middlewareコンポーネントの場合、Oracleバックエンド・ディレクトリはすべての情報の中央ディレクトリであり、他のすべてのディレクトリと同期しています。この同期には、次の2つの方向があります。

- 一方向: 一部の接続ディレクトリは、Oracleバックエンド・ディレクトリに変更を提供するのみで、変更を受け取ることがありません。たとえば、従業員情報のプライマリ・リポジトリで比較のための基準であるOracle Human Resourcesがこれに該当します。

- 双方向: Oracleバックエンド・ディレクトリでの変更を接続ディレクトリにエクスポートでき、接続ディレクトリでの変更をOracleバックエンド・ディレクトリにインポートできます。

同期サービスでは、特定の属性を対象とする(または無視する)ことができます。たとえば、Oracle Human Resources内の従業員バッジ番号の属性は、Oracleバックエンド・ディレクトリ、その接続ディレクトリまたはクライアント・アプリケーションには関係ありません。同期は不要です。その一方で、従業員識別番号はこれらのコンポーネントとも関係があるため、同期が必要です。

図1-2に、デプロイ例におけるOracle Directory Synchronization Service内のコンポーネント間の相互作用を示します。

図1-2 Oracle Directory Integration Platform Synchronization Serviceの相互作用

このようなすべての同期アクティビティをトリガーする中心的なメカニズムがOracleバックエンド・ディレクトリの変更ログです。Oracleバックエンド・ディレクトリなど、接続ディレクトリへの変更ごとに1つ以上のエントリが追加されます。Oracle Directory Synchronization Serviceは、次のことを実行します。

- 変更ログを監視します。

- 変更が1つ以上の同期プロファイルに対応している場合は、常にアクションを実行します。

- ログに記録された変更に個々のプロファイルが対応している他の接続ディレクトリすべてに、該当する変更を提供します。接続ディレクトリには、Oracle RDBMS、Oracle Human Resources、Microsoft Active Directory、Oracle Unified Directory、Oracle Directory Server Enterprise Edition、Novell eDirectory、IBM Tivoli Directory Server、OpenLDAPなどがあります。Oracle Directory Synchronization Serviceは、接続ディレクトリが要求するインタフェースと書式を使用してこれらの変更を提供します。Oracle Directory Integration Platformコネクタを介した同期化では、Oracleバックエンド・ディレクトリ・クライアントが必要とするすべての情報に対してOracleバックエンド・ディレクトリが最新の状態に維持されることが保証されます。

1.4.2.3 Oracle Directory Integration Platform Provisioning Serviceの概要

プロビジョニングEnterprise JavaBeans(EJB)およびクォーツ・スケジューラを含むOracle Directory Integration Platform Provisioning Serviceは、ユーザーまたはグループ情報などの変更が各プロビジョニング・アプリケーションに通知されることを保証します。これは、プロビジョニング統合プロファイルに含まれている情報に基づいて行われます。各プロビジョニング・プロファイルの役割は、次のとおりです。

- そのプロファイルを適用するアプリケーションと組織を一意に識別します。

- アプリケーションに通知する必要があるユーザー、グループ、操作などを指定します。

Oracleバックエンド・ディレクトリでの変更がアプリケーションのプロビジョニング・プロファイルに指定されているものと一致すると、Oracle Directory Integration Platform Serviceは、そのアプリケーションに関連データを送信します。

注意:
レガシー・アプリケーション(Oracle Directory Integration Platform Serviceのインストール前に稼働状態であったアプリケーション)は、インストール時に通常の方法ではサブスクライブされません。レガシー・アプリケーションを使用してプロビジョニング情報を受信できるようにするには、プロビジョニング・プロファイルに加えて、プロビジョニング・エージェントを開発する必要があります。このエージェントは、Oracleバックエンド・ディレクトリからの関連データをレガシー・アプリケーションに必要な正確な書式に変換する必要があります。

図1-3に、Oracle Directory Integration Platform Service環境でのコンポーネント間の相互作用を、レガシー・アプリケーションに使用するプロビジョニング・エージェントの特別なケースも含めて示します。

図1-3 Oracle Directory Integration Platform Provisioning Serviceの相互作用

1.4.3 Oracle Application Server Single Sign-On

Oracle Application Server Single Sign-On(OracleAS Single Sign-On Server)を使用すると、ユーザーは1回のみのログインで、WebベースのOracleコンポーネントにアクセスできます。

Oracleコンポーネントは、ログイン機能をOracleAS Single Sign-On Serverに委任します。初めてOracleコンポーネントにログインする場合は、そのコンポーネントによってOracleAS Single Sign-On Serverにログインがリダイレクトされます。OracleAS Single Sign-On Serverでは、Oracleバックエンド・ディレクトリに格納されている資格証明に対して、ユーザーが入力した資格証明を検証することによってユーザーが認証されます。ユーザーを認証すると、残りのセッション中、そのユーザーが使用を要求し認可されたすべてのコンポーネントに対するユーザー・アクセス権限がOracleAS Single Sign-On Serverによって付与されます。

注意:
Oracle Directory Integration Platform 11gリリース1(11.1.1)は、Oracle Application Server Single Sign-On 10gリリース10.1.4.3.0をサポートしており、相互運用できます。
Oracle Application Server Single Sign-Onは非推奨になっており、Oracle Access Management 11gR1 Single Sign-Onが推奨されることに注意してください。顧客には、使用している製品で動作保証され次第、Oracle Access Management 11gR1に移行することが推奨されます。

詳細は、次のURLのOracle Single Sign-onのOracleライフタイム・サポート・ポリシーを参照してください。

http://www.oracle.com/us/support/lifetime-support/index.html

関連項目:
OracleAS Single Sign-On Serverの詳細は、Oracle Enterprise Single Sign-On Suite Plus管理者ガイドを参照してください。

2 Oracle Directory Integration Platformのセキュリティ機能

この章では、Oracle Directory Integration Platformのセキュリティにおける最も重要な事項について説明します。内容は次のとおりです。

- Oracle Directory Integration Platformでの認証

- アクセス制御、認可およびOracle Directory Integration Platform

- データ整合性とOracle Directory Integration Platform

- データ・プライバシとOracle Directory Integration Platform

- ツール・セキュリティとOracle Directory Integration Platform

- 資格証明の格納

2.1 Oracle Directory Integration Platformでの認証

認証は、Oracleディレクトリ・サーバーが、そのディレクトリに接続するユーザーの正確なアイデンティティを確認するプロセスです。ldapbind操作によってLDAPセッションが確立されるときに、発生します。

Oracle Directory Integration Platformの各コンポーネントが、ディレクトリへのアクセスを許可される前に適切に認証されることは重要です。

この項の内容は次のとおりです。

- Secure Sockets LayerとOracle Directory Integration Platform

- SSLモードでのOracle Directory Integration Platformの認証

- プロファイルの認証

2.1.1 Secure Sockets LayerとOracle Directory Integration Platform

Oracleバックエンド・ディレクトリは、Secure Socket Layer(SSL)を使用するように構成する必要があります。

Oracle Unified DirectoryまたはOracle Directory Server Enterprise EditionがOracleバックエンド・ディレクトリである場合、Oracle Directory Integration Platformは最初にインストールされたときには非SSLモードで動作します。一方、Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合は、SSL接続が必要となります。

Oracle Directory Integration Platformでは、次のSSL実装モードをサポートします。

- 認証なし(SSLモード1): SSLデータ暗号化を提供しますが、認証にはSSLを使用しません。

注意:
Oracleバックエンド・ディレクトリがOracle Internet Directoryである場合、Oracle Directory Integration Platformでは、認証なしのSSLモード(SSLモード1)のみをサポートします。Oracle Unified DirectoryまたはOracle Directory Server Enterprise EditionがOracleバックエンド・ディレクトリである場合、使用できるSSLはSSLサーバー認証(SSLモード2)のみとなります。

- SSLサーバー認証(SSLモード2): SSLデータ暗号化とクライアントに対するSSL認証の両方が含まれます。Oracle Directory Integration Platformでは、サーバーはディレクトリ・サーバーであり、クライアントはOracle Directory Integration Platformです。
サーバーは、信頼できる認証局(CA)が発行する証明書を送信することにより、クライアントに対して自身のアイデンティティを検証します。このモードでは、公開鍵インフラストラクチャ(PKI)と証明書がJavaキーストア(JKS)に格納される必要があります。

Oracle Directory Integration PlatformでSSLを使用するには、Oracleバックエンド・ディレクトリとOracle Directory Integration Platformの両方を、同じSSLモードで起動する必要があります。たとえば、Oracleバックエンド・ディレクトリがSSLモード1で実行されている場合、Directory Integration Platformは、同じSSLモード1を使用してOracleバックエンド・ディレクトリに接続するように構成されている必要があります。

関連項目:
Oracle Internet DirectoryをOracleバックエンド・ディレクトリとして使用している場合は、SSLモードでのOracleディレクトリ・サーバーの起動手順について、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の事前タスクおよび情報に関する章を参照してください。

2.1.2 SSLモードでのOracle Directory Integration Platformの認証

ディレクトリ・サーバーのアイデンティティを設定するには、Oracleバックエンド・ディレクトリとDirectory Integration Serverの両方をSSLサーバー認証モードで起動します。この場合、ディレクトリ・サーバーは自身の証明書をDirectory Integration Serverに提供し、Directory Integration ServerはOracleバックエンド・ディレクトリのクライアントとして機能します。

サード・パーティのディレクトリに接続するときにSSLを使用するようにOracle Directory Integration Platformを構成することもできます。この場合は、「バックエンド・ディレクトリと接続ディレクトリのSSL証明書の管理」で説明されているように、接続ディレクトリ証明書をJavaキーストア(JKS)に保存します。

2.1.3 プロファイルの認証

Oracleバックエンド・ディレクトリでは、統合プロファイルは、識別名(DN)とパスワードを持つユーザーを表します。

プロファイルにアクセスできるユーザーは次のとおりです。

- Oracleディレクトリ統合プラットフォームの管理者。
Oracle Internet Directoryでは、管理者はcn=dipadmin,cn=dipadmins,cn=directory integration platform,cn=products,cn=oraclecontextというDNで表されます。

Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionでは、管理者はcn=dipadmin,cn=dipadmins,cn=directory integration platform,<suffix>というDNで表されます。

- Oracle Directory Integration Platform管理者グループのメンバー。
Oracle Internet Directoryでは、管理者グループはcn=odisgroup,cn=DIPadmins,cn=Directory Integration Platform,cn=Products,cn=OracleContextというDNで表されます。

Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionでは、管理者はcn=odisgroup,cn=DIPadmins,cn=Directory Integration Platform,<suffix>というDNで表されます。

Oracle Directory Integration Platformが統合プロファイルに基づいてOracleバックエンド・ディレクトリにデータをインポートする場合、その統合プロファイルとしてディレクトリにプロキシ・バインドします。Oracle Directory Integration Platformは、SSLモードでも非SSLモードでもバインドできます。

2.2 アクセス制御、認可およびOracle Directory Integration Platform

認可は、ユーザーが権限を持つ情報のみの読取りまたは更新を行うことを保証するプロセスです。ディレクトリ・セッション内でディレクトリ操作が行われようとすると、ディレクトリ・サーバーは、その操作の実行に必要な権限がユーザーに与えられていることを確認します(ユーザーの識別は、セッションに対応付けられた認可識別子によって行われます)。ユーザーに権限がない場合、ディレクトリ・サーバーはこれらの操作を許可しません。この方法(アクセス制御)によって、ディレクトリ・サーバーは、ディレクトリ・ユーザーによる不正操作からディレクトリ・データを保護します。

アクセスをOracle Internet Directoryデータの必要なサブセットのみに制限するには、Directory Integration Serverとコネクタの両方に対する適切なアクセス・ポリシーをディレクトリに設定します。

この項では、これらのポリシーを詳しく説明します。内容は次のとおりです。

- Oracle Directory Integration Platformのアクセス制御

- プロファイルのアクセス制御

2.2.1 Oracle Directory Integration Platformのアクセス制御

Oracle Directory Integration Platformは、次のようにディレクトリへのバインドをそれ自身として行う場合と、プロファイルのかわりに行う場合があります。

- それ自身としてバインドする場合、様々な統合プロファイルに情報をキャッシュできます。これによって、Directory Integration Serverは、様々なコネクタによって実行される同期アクションをスケジュールできます。

- Directory Integration Serverがプロファイルのかわりに動作する場合、Directory Integration Serverはプロファイルのプロキシとして動作します(プロファイル資格証明を使用してディレクトリにバインドし、様々な操作を実行します)。Directory Integration Serverは、プロファイルで許可されているディレクトリでそれらの操作のみを実行できます。

Directory Integration Serverに付与されるアクセス権限を設定し管理するために、Oracle Directory Integration Platformはインストール時にodisgroupと呼ばれるグループ・エントリを作成します。Directory Integration Serverは、登録時にこのグループのメンバーになります。

Oracle Internet DirectoryでのodisgroupのDNは次のとおりです。

cn=odisgroup,cn=directory admins,cn=directory integration plataform,cn=products,cn=oraclecontext

Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionでの、odisgroupのDNは次のとおりです。

cn=odisgroup,cn=directory admins,cn=directory integration plataform,<suffix>

odisgroupエントリにアクセス制御ポリシーを配置することによって、Directory Integration Serverに付与されるアクセス権限を制御します。デフォルトのポリシーは、プロファイルにアクセスするための様々な権限をDirectory Integration Serverに付与します。たとえば、デフォルトのポリシーは、Directory Integration ServerがOracleバックエンド・ディレクトリと、プロファイルのかわりにプロキシとしてバインドされる接続ディレクトリとの間でユーザー・パスワードを比較できるようにします。また、Directory Integration Serverが、最終正常実行時間や同期ステータスなどのプロファイルのステータス情報を変更できるようにします。

2.2.2 プロファイルのアクセス制御

インストール時に、Oracle Directory Integration Platformは、様々なプロファイルに付与されるアクセス権限の制御を可能にするodipgroupと呼ばれるグループ・エントリを作成します。セキュリティを追加するために、odipigroupグループおよびodipegroupグループもインストール時に作成されます。すべてのインポート・プロファイルはodipigroupグループに割り当てられ、すべてのエクスポート・プロファイルはodipegroupグループに割り当てられます。権限は、odipgroupエントリに適切なアクセス・ポリシーを配置することによって制御されます。デフォルトのアクセス・ポリシー(製品とともに自動的にインストールされる)は、所有する統合プロファイルに対する特定の標準アクセス権限をプロファイルに付与します。このような権限の1つとして、orclodipConDirLastAppliedChgTimeという名前のパラメータなどの統合プロファイルのステータス情報を変更する機能があります。また、デフォルトのアクセス・ポリシーは、プロファイルがOracle Internet Directoryの変更ログにアクセスできるようにします(これ以外の場合、Oracle Internet Directoryへのアクセスは制限されます)。

関連項目:
グループ・エントリのアクセス制御ポリシーの設定方法は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のアクセス制御の章のセキュリティ・グループに関する項を参照してください。

2.3 データ整合性とOracle Directory Integration Platform

Oracle Directory Integration Platformは、SSLを使用して、送信時にデータの変更、削除または再現が行われていないことを保証します。このSSL機能は、暗号方式の保護メッセージ・ダイジェストを、Message-Digest algorithm 5(MD5)またはSecure Hash Algorithm(SHA)を使用する暗号チェックサムを使用して生成し、ネットワークを介して送信する各パケットにそのメッセージ・ダイジェストを組み込みます。

2.4 データ・プライバシとOracle Directory Integration Platform

Oracle Directory Integration Platformは、SSLで使用可能な公開鍵暗号を使用して、データが送信中に開示されないことを保証します。公開鍵暗号では、メッセージの送信側が受信側の公開鍵を使用して、メッセージを暗号化します。メッセージが送達されると、受信側は、受信側の秘密鍵を使用して、メッセージを復号化します。

Directory Integration ServerとOracle Internet Directoryの間でデータを安全に交換するには、両方のコンポーネントを同じSSLモードで実行する必要があります。

2.5 ツール・セキュリティとOracle Directory Integration Platform

一般的に使用されているツール(Oracle Enterprise Manager Fusion Middleware Controlを含む)は、すべてSSLモードで実行することによりOracle Internet Directoryにデータを安全に送信できます。

2.6 資格証明の格納

Oracle Directory Integration Platformでは、Oracle Application Server 11gインフラストラクチャの資格証明ストア・フレームワークが使用されます。Oracle Directory Integration Platformによってこの資格証明ストア・フレームワークに格納される資格証明および説明を次に示します。

- Oracle Directory Integration Platformのユーザー・パスワード。このパスワードはインストール時に作成されるもので、読取り専用として格納され、ランタイム操作で読み取られます。

- JKSパスワード。JKSのパスワードは、Oracleバックエンド・ディレクトリまたはサード・パーティ・ディレクトリへの接続に対して、サーバーのみ(モード2)SSL設定が構成されている場合に使用されます。WebLogic Scripting Tool(WLST)のcreateCred()コマンドを使用して、キーストアのパスワードを資格証明ストア・フレームワークに書き込むことができます。たとえば、WLSTシェルを呼び出し、connect()コマンドを使用してOracle WebLogic Admin Serverに接続した後で、次のように入力します。

createCred(map="dip", key="jksKey", type="PC", user="userName",
password="password")

マップおよびキーのオプションは固定です。サポートされている値はmap="dip"およびkey="jksKey"のみです。

wlst listCred()コマンドを使用して、資格証明ストア・フレームワークにあるキーストアのパスワードを表示することができます。たとえば、WLSTシェルを呼び出し、connect()コマンドを使用してOracle WebLogic Admin Serverに接続した後で、次のように入力します。

listCred(map="dip", key="jksKey")

関連項目:

- Oracle Application Server 11gインフラストラクチャの資格証明ストア・フレームワークの詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』を参照してください。

- WLSTコマンドの詳細は、Oracle Fusion Middleware WebLogic Scripting Toolのコマンド・リファレンスを参照してください。

第II部

Oracle Directory Integration Platformの一般管理

この部では、Oracle Directory Integration Platformの実行に関連する一般的な管理タスクのいくつかを説明します。より具体的な管理情報については、それぞれの項を参照してください。

第II部は次の各章で構成されています。

- 第3章「Oracle Directory Integration Platformの管理」

- 第4章「Oracle Directory Integration Platformの操作」

3 Oracle Directory Integration Platformの管理

この章では、Oracle Directory Integration Platformの管理に使用できるツールについて説明します。内容は次のとおりです。

- Oracle Directory Integration Platformの管理用グラフィカル・ツール

- Oracle Directory Integration Platformの管理用コマンドライン・ツール

3.1 Oracle Directory Integration Platformの管理用グラフィカル・ツール

Oracle Directory Integration Platformの管理には、次のグラフィカル・ツールを使用できます。

- Fusion Middleware Controlの使用

- Oracle Internet Directoryセルフ・サービス・コンソールの使用

注意:
11gリリース1(11.1.1)より前のOracle Directory Integration Platformは、Oracle Directory Integration Server管理ツールを使用してグラフィカルに管理されていました。このツールは、現在Oracle Directory Integration Platformでは使用されていません。11gリリース1(11.1.1)でOracle Directory Integration Platformをグラフィカルに管理するには、Oracle Enterprise Manager Fusion Middleware Controlを使用する必要があります。

3.1.1 Fusion Middleware Controlの使用

11gリリース1(11.1.1)の時点で、Oracle Enterprise Manager Fusion Middleware Controlから多くのOracle Directory Integration Platformの機能をグラフィカルに管理できます。このコンソールを使用すると、すべてのOracle製品を1つのユーザー・インタフェースから構成および管理できるようになります。

Oracle Enterprise Manager Fusion Middleware Controlを使用してOracle Directory Integration Platformを管理するには、次のようにします。

1. Oracle Enterprise Manager Fusion Middleware Controlに接続します。URLは次のような形式です。

https://host:port/em

2. 左パネルのトポロジ・ツリーで、ファームを展開し、続いて「Identity and Access」を展開します。他の方法として、ファームのホームページから、「Fusion Middleware」、「Identity and Access」の順に展開することもできます。Oracle Directory Integration Platformコンポーネントが両方の場所にリストされます。
コンポーネントを区別するには、コンポーネント名にマウスを重ねると、ツールチップにコンポーネントの正式な名前が表示されます。

3. 管理するOracle Directory Integration Platformコンポーネントを選択します。

4. 「DIPサーバー」メニューを使用してタスクを選択します。

「DIPサーバー」メニューを使用して、Oracle Directory Integration Platformの別のFusion Middleware Controlのページに移動できます。

3.1.1.1 Oracle Directory Integration Platformホームページ

Oracle Enterprise Manager Fusion Middleware ControlのOracle Directory Integration Platformのホームページには、たとえば次のような、コンポーネントに関する統計や情報が表示されます。

- Oracle Directory Integration Platformコンポーネント(クォーツ・スケジューラ、MBeanなど)のステータス。

- CPU使用率およびメモリー使用量。

- 既存の同期プロファイルに関する情報(名前、ステータス、平均実行時間、変化の伝播の成功回数と失敗回数など)。

- 既存のプロビジョニング・プロファイルに関する情報(名前、ステータス、平均実行時間、変化の伝播の成功回数と失敗回数など)。

3.1.2 Oracle Internet Directoryセルフ・サービス・コンソールの使用

Oracle Internet Directoryセルフ・サービス・コンソールでは、管理権限を様々な管理者およびユーザーに委任できます。これはOracle委任管理サービスを使用して作成されたすぐに使用できるスタンドアロン・アプリケーションであり、委任された管理者およびユーザーがディレクトリ内のデータを管理するための単一グラフィカル・インタフェースを提供しています。Oracle Internet Directoryセルフ・サービス・コンソールでは、管理者およびユーザーの両方がそれぞれの権限に応じて様々なディレクトリ操作を実行できます。統合された配置において、Oracle Internet Directoryセルフ・サービス・コンソールは、主にレルム・パラメータのカスタマイズに使用されます。

注意:
Oracle Directory Integration Platform 11gリリース1(11.1.1)は、Oracle Delegated Administration Servicesリリース10.1.4.3.0をサポートしており、相互運用できます。

関連項目:
『Oracle Fusion Middleware Guide to Delegated Administration for Oracle Identity Management』

3.2 Oracle Directory Integration Platformの管理用コマンドライン・ツール

ORACLE_HOME/binディレクトリにある次のコマンドライン・ツールは、Oracle Directory Integration Platformの管理に使用できます。

注意:

- 最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。

- Oracle Directory Integration Platformコマンドのいずれかを実行するには、あらかじめWLS_HOME環境変数とORACLE_HOME環境変数を設定しておく必要があります。

- 次のリストに説明がある各ツールの詳細は、このドキュメントおよび『Oracle Identity Managementユーザー・リファレンス』の、各コマンドの項を参照してください。

- dipStatus: Oracle Directory Integration Platformのステータスと、登録済かどうかを確認できます。詳細は、「dipStatusユーティリティを使用したOracle Directory Integration Platformのステータスの表示」を参照してください。

- manageDIPServerConfig: Oracle Directory Integration Platformの構成設定(リフレッシュ間隔、Oracleバックエンド・ディレクトリのポート番号、キーストアの場所およびパスワードを含む)およびスケジューラ・スレッドの数を管理します。詳細は、「manageDIPServerConfigを使用したOracle Directory Integration Platformの管理」を参照してください。

- manageSyncProfiles: Oracle Directory Integration Platformの同期プロファイルを管理します。詳細は、「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

- syncProfileBootstrap: 同期プロファイルまたはLDIFファイルに基づいて、ターゲットの接続ディレクトリとOracleバックエンド・ディレクトリ間の初期のデータ移行を実行します。詳細は、「syncProfileBootstrapを使用したディレクトリのブートストラップ」を参照してください。

- expressSyncSetup: ディレクトリ・タイプに基づいて、あらかじめパッケージされたテンプレートを使用して標準のLDAPディレクトリを作成します。詳細は、「expressSyncSetupを使用したインポートおよびエクスポートの同期プロファイルの作成」を参照してください。

- provProfileBulkProv: プロビジョニング・プロファイルのために、LDIFファイルからOracleバックエンド・ディレクトリへの初期のデータ移行を実行します。詳細は、「provProfileBulkProvツールを使用したバルク・プロビジョニング」を参照してください。

- oidprovtool: 次のようなタスクを実行可能にして、ディレクトリのプロビジョニング・プロファイル・エントリを管理します。

- 新しいプロビジョニング・プロファイルの作成

- 既存のプロビジョニング・プロファイルの有効化または無効化

- 既存のプロビジョニング・プロファイルの変更

- 既存のプロビジョニング・プロファイルの削除

- プロビジョニング・プロファイルの現行ステータスの取得

- 既存のプロビジョニング・プロファイル内にあるすべてのエラーの消去

詳細は、「oidprovtoolを使用したプロビジョニング・プロファイルの管理」を参照してください。

- schemasync: ディレクトリ統合プラットフォームでは、スキーマおよびACLの同期はサポートされません。schemasyncツールを使用して、Oracleバックエンド・ディレクトリと接続ディレクトリの間で、スキーマの違い、特に属性とオブジェクト・クラスの違いを確認できます。違いを確認した後、スキーマを含んでいるLDIFファイルに適切な変更を行ってから、ldapaddおよびldapmodifyツールを使用してスキーマの違いをアップロードできます。schemasyncツールは、ORACLE_HOME/binディレクトリにあります。

関連項目:
詳細は、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』を参照してください。

3.2.1 標準LDAPコマンドライン・ツールの使用

Oracle Directory Integration Platformは、標準的なLDAPコマンドライン・ユーティリティをサポートします。その一部を表3-1に示します。

セキュリティ上の理由から、しないですむ場合は決して、コマンドラインでパスワードを入力しないでください。コマンドラインで入力したパスワードは、画面に表示され、ログ・ファイルやpsコマンドからの出力に含まれる可能性もあります。プロンプトでパスワードを入力する場合、画面に表示されず、ps出力にもログ・ファイルにも含まれません。-P passwordオプションや-w passwordオプションは使用しないで、かわりにそれぞれ-qオプションや-Qオプションを使用してください。

LDAPツールは、環境変数LDAP_PASSWORD_PROMPTONLYがTRUEまたは1に設定されている場合、オプション-w passwordおよび-P passwordを無効にするよう変更されています。この機能をできるかぎり使用してください。

関連項目:
『Oracle Fusion Middleware Oracle Identity Managementリファレンス』のコマンドライン・ツールでのパスワードの使用に関する説明

表3-1 エントリおよび属性の管理コマンドライン・ツール

ツール

説明

catalog

索引付き属性。このツールは、Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合にのみサポートされます。

ldapadd

エントリとそれらのオブジェクト・クラス、属性および値をディレクトリに追加します。

ldapaddmt

エントリとそれらのオブジェクト・クラス、属性および値を同時にディレクトリに追加するための複数のスレッドをサポートします。このツールは、Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合にのみサポートされます。

ldapbind

クライアントをサーバーに対して認証できるかどうかを決定します。

ldapcompare

指定された属性値をエントリの属性値と照合します。

ldapdelete

ディレクトリからエントリを削除します。

ldapmoddn

エントリのDNまたはRDNを変更します。

ldapmodify

エントリの属性を変更します。

ldapmodifymt

エントリを同時に変更するための複数のスレッドをサポートします。このツールは、Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合にのみサポートされます。

ldapsearch

ディレクトリ内のエントリを検索します。

関連項目:
表3-1に示した各ツールに必要な構文は、『Oracle Identity Managementユーザー・リファレンス』を参照してください。

4 Oracle Directory Integration Platformの操作

この章では、Oracle Directory Integration Platformについて説明し、その構成方法と管理方法を示します。内容は次のとおりです。

- Oracle Directory Integration Platformについての操作情報

- Oracle Directory Integration Platformのステータスおよび登録情報の表示

- Fusion Middleware Controlを使用したOracle Directory Integration Platformの管理

- WLSTを使用したOracle Directory Integration Platformの起動と停止

- manageDIPServerConfigを使用したOracle Directory Integration Platformの管理

- SSLモード2のサーバーのみ認証用のOracle Directory Integration Platformの構成

- バックエンド・ディレクトリと接続ディレクトリのSSL証明書の管理

- 高可用性を目的とした場合のOracle Directory Integration Platform

- レプリケート環境でのOracle Directory Integration Platformの管理

関連項目:
Oracle Directory Integration Platformにより実行される機能の概要は、「Oracle Directory Integration Platform」を参照してください。

注意:
セキュリティ上の理由から、Oracleバックエンド・ディレクトリと同じホスト上でOracle Directory Integration Platformを実行することをお薦めします。Oracle Directory Integration PlatformとOracleバックエンド・ディレクトリを異なるホスト上で実行する場合は、SSLを使用して実行することをお薦めします。

4.1 Oracle Directory Integration Platformについての操作情報

この項では、Oracle Directory Integration Platformの構造および操作方法について説明します。内容は次のとおりです。

- ディレクトリ同期プロファイル

- Oracleバックエンド・ディレクトリ・マルチマスター・レプリケーション環境でのOracle Directory Integration Platformイベント伝播

4.1.1 ディレクトリ統合プロファイル

Oracle Directory Integration Platformでは、ディレクトリ同期プロファイルとディレクトリ・プロビジョニング・プロファイルという2種類のプロファイルを作成できます。ディレクトリ同期プロファイルは、Oracleバックエンド・ディレクトリと接続ディレクトリとの間で同期が実行される方法を記述します。ディレクトリ同期プロファイルは、インポート・プロファイルとエクスポート・プロファイルの2種類を作成できます。インポート・プロファイルは、接続ディレクトリからOracleバックエンド・ディレクトリに変更をインポートするのに対し、エクスポート・プロファイルは、Oracleバックエンド・ディレクトリから接続ディレクトリに変更をエクスポートします。ディレクトリ・プロビジョニング・プロファイルは、Oracle Directory Integration Platformからディレクトリ対応アプリケーションに送信されるプロビジョニング関連の通知の性質を記述します。プロビジョニング・プロファイルも、アプリケーションのデータソースに発生した変更についてOracleバックエンド・ディレクトリに通知するように構成されていることがあります。複数のプロファイルを同時に使用できます。

プロファイルの各タイプは特殊な種類のディレクトリ統合プロファイルで、Oracle Directory Integration Platformと外部システムとの通信方法と通信内容を記述するOracleバックエンド・ディレクトリ内のエントリです。

4.1.2 Oracleバックエンド・ディレクトリ・マルチマスター・レプリケーション環境でのOracle Directory Integration Platformイベント伝播

Oracleバックエンド・ディレクトリ・マルチマスター環境では、1つのOracleバックエンド・ディレクトリ・ノード上でのディレクトリ同期プロファイルへの変更を、すべてのセカンダリ・ノードにレプリケートまたはコピーする必要があります。これにより、プライマリ・ノード上で問題が発生した場合、ディレクトリ同期プロファイルをセカンダリ・ノードで実行できます。

Oracle Universal DirectoryまたはOracle Directory Server Enterprise Editionマルチマスター環境では、DIPメタデータを含む接尾辞がレプリケーション用に選択されると、プロファイルが自動的にレプリケートされます。

一方、Oracle Internet Directoryマルチマスター・レプリケーション環境では、あるOracle Internet Directoryノードでのディレクトリ同期プロファイルへの変更は、他のOracle Internet Directoryノードに自動的にはレプリケートされません。このため、プライマリ・ノードのプロファイルをすべてのセカンダリ・ノードにコピーする必要があります。手順は次の項を参照してください。

注意:
ディレクトリ同期プロファイルのorcllastapplicedchangenumber属性に割り当てられた値は、プロファイルがあるOracle Internet Directoryノードのローカルな値です。つまり、ディレクトリ同期プロファイルをあるOracle Internet Directoryノードから別のノードにコピーしても、同期またはイベント伝播の正しい状態は維持されません。

4.1.2.1 Oracleバックエンド・ディレクトリ・マルチマスター・レプリケーション環境でのディレクトリ同期

プライマリ・ノードのプロファイルをセカンダリ・ノードにコピーする場合は、lastchangenumber属性をターゲット・ノードの値で次のように更新してください。この手順は、プロファイルの設定後に一度行う必要があります。

Oracleバックエンド・ディレクトリがOracle Internet Directoryである場合、この更新は必須です。Oracleバックエンド・ディレクトリがOracle Unified DirectoryまたはOracle Directory Server Enterprise Editionのいずれかである場合、レプリケーションを使用するかわりに、DIPメタデータを含む接尾辞をプライマリ・ノードからセカンダリ・ノードにコピーする場合にのみ、この手順が必要です。

1. 同期プロファイルを無効化します。

2. ldapsearchコマンドを使用して、ターゲット・ノードでlastchangenumber属性の値を取得します。

3. ldapsearchを使用して、プロファイル・エントリのLDIFダンプを取得します。

4. ldapaddを使用して、他のOracleバックエンド・ディレクトリ・インスタンスにプロファイルを追加します。

5. manageSyncProfilesコマンドのupdatechgnum操作を使用して、ターゲット・ノードにコピーしたエクスポート・プロファイルのlastchangenumber属性を、手順2で取得した値で更新します。

6. 同期プロファイルを有効化します。

4.1.2.2 Oracle Internet Directoryマルチマスター・レプリケーション環境でのディレクトリ・プロビジョニング

デフォルトのOracle Internet Directoryマルチマスター・レプリケーション環境では、Oracle Directory Integration PlatformはプライマリOracle Internet Directoryと同じ場所にインストールされます。プライマリ・ノードに障害が発生した場合、そのノードにあるすべてのプロファイルに対するイベント伝播は停止します。イベントはキューに入れられ、プライマリ・ノードの停止中にも失われませんが、どのアプリケーションにも伝播されません。プライマリ・ノードが停止したときにも、イベントが引き続き伝播されることを保証するには、Oracle Internet Directoryマルチマスター環境で、バージョン1.0およびバージョン2.0のディレクトリ・プロビジョニング・プロファイルを他のセカンダリ・ノードにコピーする必要があります。バージョン3.0のディレクトリ・プロビジョニング・プロファイルは、自動的にレプリケートされます。

注意:
プロビジョニング・プロファイルは、アプリケーションがインストールされた直後、Oracle Internet Directoryでユーザー変更が行われる前にしか、プライマリ・ノードからセカンダリ・ノードに対してコピーされません。

ディレクトリ・プロビジョニング・プロファイルをプライマリ・ノードからセカンダリ・ノードにコピーするには、manageSyncProfilesコマンドのupdate操作を使用します。

関連項目:
manageSyncProfilesコマンドの詳細は、『Oracle Identity Managementユーザー・リファレンス』のOracle Directory Integration Platformの章を参照してください。

4.2 Oracle Directory Integration Platformのステータスおよび登録情報の表示

この項では、Oracle Directory Integration Platformで、ステータスおよび登録情報を表示する方法について説明します。内容は次のとおりです。

- dipStatusユーティリティを使用したOracle Directory Integration Platformのステータスの表示

- ldapsearchユーティリティを使用したOracle Directory Integration Platformの登録情報の表示

4.2.1 dipStatusユーティリティを使用したOracle Directory Integration Platformのステータスの表示

ORACLE_HOME/binディレクトリにあるdipStatusユーティリティを使用すると、Oracle Directory Integration Platformのステータスと、登録済かどうかを確認できます。

注意:

- 最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。

- Oracle Directory Integration Platformコマンドのいずれかを実行するには、あらかじめWLS_HOME環境変数とORACLE_HOME環境変数を設定しておく必要があります。

- Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

4.2.1.1 dipStatusの構文

dipStatus

dipStatus -h HOST -p PORT -D wlsuser [-ssl -keystorePath PATH_TO_KEYSTORE
-keystoreType TYPE] [-help]

4.2.1.2 dipStatusの引数

-h | -host

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Server。

-p | -port

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverのリスニング・ポート。

-D | -wlsuser

Oracle WebLogic ServerのログインID。

注意:
Oracle WebLogic Serverのログイン・パスワードを要求されます。パスワードをコマンドライン引数として指定することはできません。
最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。スクリプトからdipStatusを実行する必要がある場合、Oracle WebLogic Serverパスワードを含むファイルから、入力をリダイレクトできます。ファイル権限を使用してファイルを保護し、不要になったら権限を削除します。

-ssl

SSLモードでコマンドを実行します。

注意:
Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

-keystorePath

キーストアへのフルパス。

-keystoreType

-keystorePathで識別されるキーストアのタイプ。たとえば、-keystorePath jksまたは-keystorePath PKCS12などです。

-help

コマンドの使用方法のヘルプを提供します。

4.2.1.3 dipStatusの例

dipStatus -h myhost.mycompany.com -p 7005 -D login_ID

dipStatus -help

4.2.2 ldapsearchユーティリティを使用したOracle Directory Integration Platformの登録情報の表示

ldapsearchユーティリティを使用してOracle Directory Integration Platformコンポーネントの登録情報を表示するには、エントリでベース検索を実行します。次に例を示します。

ldapsearch -h oid_host -p port -D cn=orcladmin -q -s base -b
"cn=odisrv,cn=Registered Instances,cn=Directory Integration
Platform,cn=Products,cn=OracleContext" objectclass=*

注意:
パスワードを要求されます。

この例の検索では、次の情報が返されます。

Dn: cn=odisrv,cn=Registered Instances,cn=Directory Integration
Platform,cn=Products,cn=OracleContext
userpassword: {SHA}+vk5wSvnVoXCBCRyBWJnH0S33zc=
orclaci: access to entry by self (add,delete,browse,proxy); access to attr=(*) by
self (search,read,write,compare)
orclversion: 3.0
cn: odisrv
objectclass: orclodiserver; top;
authpassword;oid: {SASL/MD5}2NOnGTWkSP9c1w7R/o9Djw==
{SASL/MD5-DN}ezUTC3k7rSL41ZxdxhlXxw==;{SASL/MD5-U}kEQcl+/AZEXVukeA5YPnog==

4.3 Fusion Middleware Controlを使用したOracle Directory Integration Platformの管理

この項では、Oracle Enterprise Manager Fusion Middleware Controlを使用してOracle Directory Integration Platformを管理する方法について説明します。内容は次のとおりです。

- Fusion Middleware Controlを使用したOracle Directory Integration Platformのランタイム情報の表示

- Fusion Middleware Controlを使用したOracle Directory Integration Platformの起動

- Fusion Middleware Controlを使用したOracle Directory Integration Platformの停止

- Oracle Directory Integration Platform Server構成の管理

- Fusion Middleware Controlを使用したOracle Directory Integration Platformのロギングの管理

- Fusion Middleware Controlを使用したOracle Directory Integration Platformの監査

4.3.1 Fusion Middleware Controlを使用したOracle Directory Integration Platformのランタイム情報の表示

Oracle Enterprise Manager Fusion Middleware Controlを使用してOracle Directory Integration Platformコンポーネントのランタイム情報を表示するには、次のようにします。

1. Webブラウザを開き、使用している環境のOracle Enterprise Manager Fusion Middleware ControlのURLを入力します。Oracle Enterprise Manager Fusion Middleware ControlのURLの形式は、https://host:port/emです。

2. Oracle Enterprise Manager Fusion Middleware Controlにログインします。

3. 左のナビゲーション・パネルで、「Identity and Access」エントリをクリックするか展開し、続いて、ランタイム情報を表示するDIPコンポーネントを選択します。Oracle Enterprise Manager Fusion Middleware Controlによって、次の情報を含むOracle Directory Integration Platformのホームページが開かれます。

- 同期プロファイル: 構成されている同期プロファイルの概要。

- プロビジョニング・プロファイル: 構成されているプロビジョニング・プロファイルの概要。

- リソース使用率: Oracle Directory Integration Platformホストで使用されているCPUおよびメモリーの割合を示すグラフ。

ヒント:
Oracle Enterprise Manager Fusion Middleware ControlでOracle Directory Integration Platformの他のページに移動した後にOracle Directory Integration Platformのホームページに戻るには、「DIPサーバー」メニューで「ホーム」をクリックします。

4.3.2 Fusion Middleware Controlを使用したOracle Directory Integration Platformの起動

Oracle Enterprise Manager Fusion Middleware Controlを使用してOracle Directory Integration Platformを起動するには、次のようにします。

1. Webブラウザを開き、使用している環境のOracle Enterprise Manager Fusion Middleware ControlのURLを入力します。Oracle Enterprise Manager Fusion Middleware ControlのURLの形式は、https://host:port/emです。

2. Oracle Enterprise Manager Fusion Middleware Controlにログインします。

3. 左のナビゲーション・パネルで、「Identity and Access」エントリをクリックするか展開し、続いて、起動するDIPコンポーネントを選択します。

4. 「DIPサーバー」メニューをクリックして「コントロール」を選択し、次に「起動」をクリックします。

4.3.3 Fusion Middleware Controlを使用したOracle Directory Integration Platformの停止

Oracle Enterprise Manager Fusion Middleware Controlを使用してOracle Directory Integration Platformを停止するには、次のようにします。

1. Webブラウザを開き、使用している環境のOracle Enterprise Manager Fusion Middleware ControlのURLを入力します。Oracle Enterprise Manager Fusion Middleware ControlのURLの形式は、https://host:port/emです。

2. Oracle Enterprise Manager Fusion Middleware Controlにログインします。

3. 左のナビゲーション・パネルで、「Identity and Access」エントリをクリックするか展開し、続いて、停止するDIPコンポーネントを選択します。

4. 「DIPサーバー」メニューをクリックして「コントロール」を選択し、次に「停止」をクリックします。

5. 確認ダイアログが表示されたら、「はい」をクリックします。

4.3.4 Oracle Directory Integration Platform Server構成の管理

Oracle Enterprise Manager Fusion Middleware Controlを使用して、Oracle Directory Integration Platform Serverのリフレッシュ間隔およびOracleバックエンド・ディレクトリへの接続設定を構成するには、次のようにします。

1. Webブラウザを開き、使用している環境のOracle Enterprise Manager Fusion Middleware ControlのURLを入力します。Oracle Enterprise Manager Fusion Middleware ControlのURLの形式は、https://host:port/emです。

2. Oracle Enterprise Manager Fusion Middleware Controlにログインします。Oracle Enterprise Manager Fusion Middleware Controlのホームページが開きます。

3. 左のナビゲーション・パネルで、「Identity and Access」エントリをクリックするか展開し、続いて、管理するDIPコンポーネントを選択します。

4. 「DIPサーバー」メニューをクリックして「管理」を選択し、次に「サーバー・プロパティ」をクリックします。
「DIPサーバー構成」ページが表示されます。

次のリストに、「DIPサーバー構成」ページのフィールドとオプションを示します。

- サーバー・リフレッシュ間隔(秒): Oracle Directory Integration Platformサーバーがプロファイル構成の詳細をリフレッシュする頻度を制御する時間間隔(単位は秒)。

- OID接続設定/OUD接続設定/ODSEE接続設定: Oracle Directory Integration Platform構成を保存するOracleバックエンド・ディレクトリのホスト名とポートを入力します。

- OID接続SSLモード/OUD接続SSLモード/ODSEE接続SSLモード: Directory Integration PlatformがOracleバックエンド・ディレクトリへの接続に使用するモードを指定します。

注意:
Oracle Internet Directoryでは、Oracle Enterprise Manager Fusion Middleware Controlを使用してOracleバックエンド・ディレクトリに接続する場合、Directory Integration Platformが使用するモードに、SSLなし(モード0)を指定することはできません。
Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionでは、SSLなし(モード0)を指定できます。

サポートされているオプションは次のとおりです。

- 認証なし(モード1): Directory Integration PlatformはSSLによる暗号化のみを使用してOracleバックエンド・ディレクトリに接続します。
このオプションは、Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合にのみ使用できます。Oracle Unified DirectoryまたはOracle Directory Server Enterprise EditionがOracleバックエンド・ディレクトリである場合、これは使用できません。

- サーバーのみ(モード2): Directory Integration Platformは、Oracleバックエンド・ディレクトリに接続し、Oracleバックエンド・ディレクトリによってのみ認証されます。

注意:
「サーバーのみ(モード2)」オプションを選択する場合、コマンドラインから、SSLモード2のサーバーのみ認証用にOracle Directory Integration Platformを構成する必要があります。詳細は「SSLモード2のサーバーのみ認証用のOracle Directory Integration Platformの構成」を参照してください。

5. オプションで、「接続テスト」をクリックすると、ターゲットのOracleバックエンド・ディレクトリへの接続をテストできます。

6. 必要な変更を行い「適用」ボタンをクリックします。

4.3.5 Fusion Middleware Controlを使用したOracle Directory Integration Platformのロギングの管理

Oracle Enterprise Manager Fusion Middleware Controlでは、Oracle Fusion Middlewareコンポーネント全体のログ・ファイルの一覧表示、検索および構成を行えます。Oracle Enterprise Manager Fusion Middleware Controlからログ・ファイルを表示することや、別のツールを使用して、ログ・ファイルをダウンロードして表示することができます。WLSTコマンドライン・ツールを使用してログ・ファイルを一覧表示および検索することも可能です。

関連項目:
Oracle Enterprise Manager Fusion Middleware Controlを使用したロギングの詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。

4.3.6 Fusion Middleware Controlを使用したOracle Directory Integration Platformの監査

Oracle Directory Integration Platformは、コンプライアンス、監視および分析のためにOracle Application Server 11gインフラストラクチャの共通監査フレームワークを使用します。Oracle Enterprise Manager Fusion Middleware Controlを使用すると、Oracle Directory Integration Platformの監査データやイベント設定の表示、検索および管理が可能です。監査の詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照してください。

4.4 WLSTを使用したOracle Directory Integration Platformの起動と停止

WebLogic Scripting Tool(WLST)を使用してコマンドラインからOracle Directory Integration Platformを起動または停止するには、WebLogic Admin Serverに接続して、startApplication("DIP")コマンドまたはstopApplication("DIP")コマンドを実行します。

関連項目:

- WLSTコマンドライン・ツールの詳細は、『Oracle Fusion Middleware Oracle WebLogic Scripting Tool』を参照してください。

- WLSTコマンド・ツールの構文の詳細は、Oracle Fusion Middleware WebLogic Scripting Toolのコマンド・リファレンスを参照してください。

4.5 manageDIPServerConfigを使用したOracle Directory Integration Platformの管理

DIPサーバーの構成管理ユーティリティ(manageDIPServerConfig)では、Oracle Directory Integration Platform Serverの構成を管理できます。manageDIPServerConfigユーティリティは、ORACLE_HOME/binディレクトリにあります。

注意:

- 最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。

- Oracle Directory Integration Platformコマンドのいずれかを実行するには、あらかじめWLS_HOME環境変数とORACLE_HOME環境変数を設定しておく必要があります。

- Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

4.5.1 manageDIPServerConfigの構文

manageDIPServerConfig

manageDIPServerConfig {get | set} -h HOST -p PORT -D wlsuser -attribute {sslmode |
refreshinterval | quartzthreadcount | quartzdbretryinterval | oidhostport |
keystorelocation} [-ssl -keystorePath PATH_TO_KEYSTORE -keystoreType TYPE]
[-value ATTRIBUTE_VALUE] [-help]

4.5.2 manageDIPServerConfigの引数

get | set

実行する操作。

- get: DIP構成ファイルに含まれるconfigパラメータの現在の値を表示します。

- set: DIP構成ファイルに含まれるconfigパラメータの値を更新します。

-h | -host

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Serverホスト。

-p | -port

Oracle Directory Integration PlatformアプリケーションがデプロイされているOracle WebLogic Managed Serverのリスニング・ポート。

-D | -wlsuser

Oracle WebLogic ServerのログインID。

注意:
Oracle WebLogic Serverのログイン・パスワードを要求されます。パスワードをコマンドライン引数として指定することはできません。最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。スクリプトからmanageDIPServerConfigを実行する必要がある場合、Oracle WebLogic Serverパスワードを含むファイルから、入力をリダイレクトできます。ファイル権限を使用してファイルを保護し、不要になったら権限を削除します。

-attr | -attribute

manageDIPServerConfigの操作実行対象である属性を特定します。manageDIPServerConfigの操作実行対象となることができる属性のリストと説明を次に示します。

- sslmode: Oracle Directory Integration PlatformがOracleバックエンド・ディレクトリへの接続に使用するSSLモード。サポートされている値は1および2です。1は、SSLモード1(認証なし)を使用してOracleバックエンド・ディレクトリに接続する場合に使用します。(SSLモード1は、Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合にのみサポートされます。)2は、SSLモード2(サーバー認証のみ)を使用してOracleバックエンド・ディレクトリに接続する場合に使用します。

- refreshinterval: Oracle Directory Integration Platformサーバーがプロファイル構成の詳細をリフレッシュする頻度を制御する時間間隔(単位は秒)。

- quartzthreadcount: 同時にスケジュールできるプロファイルの数を制御します。デフォルト値は15です。15を超えるプロファイルがある場合は、それに応じてquartzthreadcount属性を増やします。

- quartzdbretryinterval: Oracle Directory Integration Platformのクォーツ・スケジューラがOracleバックエンド・ディレクトリ・データベースへの再接続を試行する頻度を制御します。

- oidhostport: Oracle Directory Integration Platformに関連付けられているOracleバックエンド・ディレクトリのホストとポートを指定します。oidhostport属性の値は、host:portの形式で指定します。

- keystorelocation: Oracle Directory Integration Platformがデプロイされているホストに基づいて、Javaキーストア(JKS)への絶対パスを指定します。keystorelocation属性の値を指定する場合、必ず適切なパス・セパレータを使用してください(UNIXおよびLinuxプラットフォームでは「/」、Windowsプラットフォームでは「\」)。

-ssl

SSLモードでコマンドを実行します。

注意:
Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

-keystorePath

キーストアへのフルパス。

-keystoreType

-keystorePathで識別されるキーストアのタイプ。たとえば、-keystorePath jksまたは-keystorePath PKCS12などです。

-val | -value

属性に対して設定される値。このパラメータはset操作に必要です。

-help

コマンドの使用方法のヘルプを提供します。

4.5.3 manageDIPServerConfigのタスクと使用例

manageDIPServerConfig get -h myhost.mycompany.com -p 7005 -D login_ID \
-attr sslmode

manageDIPServerConfig set -h myhost.mycompany.com -p 7005 -D login_ID \
-attr sslmode -val 2

manageDIPServerConfig set -h myhost.mycompany.com -p 7005 -D login_ID \
-attr oidhostport -value OID_host:OID_SSL_port

4.6 SSLモード2のサーバーのみ認証用のOracle Directory Integration Platformの構成

Oracle Internet Directory以外のディレクトリでのSSL認証用にDIPを構成する方法は、第4.6.3項を参照してください。それ以外の場合は、4.6.2項でSSLモードを使用するようにOracle Directory Integration Platformを構成する前に、第4.6.1項でSSLサーバー認証用にOracleバックエンド・ディレクトリを構成してください。

注意:
ここでは、単一コンポーネントのSSL構成について説明します。複数のコンポーネントにSSLを構成する場合は、Oracle SSL自動化ツールを使用すると、ドメイン固有のCAを使用して複数のコンポーネントにSSLを構成できます。
Oracle SSL自動化ツールの詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。

4.6.1 SSLサーバー認証用のOracle Internet Directoryの構成方法

SSLモードを使用するようにOracle Directory Integration Platformソフトウェアを構成する前に、次の手順を実行します。SSL認証用にOracle Internet Directoryソフトウェアを構成済の場合は、この項をスキップして第4.6.2項に進みます。

oid1のデフォルト構成を変更するのではなく、新しいOIDコンポーネントを作成してSSLサーバー認証モード用に構成することをお薦めします。

1. 新しいOracle Internet Directoryコンポーネントを作成します。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のopmnctlを使用したOracle Internet Directoryコンポーネントの作成に関する説明の手順に従います。

新しいOracle Internet Directoryコンポーネントにoid2などの名前を付けます。

2. 新しいOracle Internet Directoryコンポーネント(oid2)用にSSLを構成します。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のFusion Middleware Controlを使用したSSLの構成に関する説明の手順に従います。

4.6.2 SSL認証用のOracle Directory Integration Platformの構成方法

この手順では、Oracle Internet DirectoryでのSSL認証用にOracle Directory Integration Platformを構成する方法について説明します。他のディレクトリでのSSL認証用にOracle Directory Integration Platformを構成する方法は、第4.6.3項「OID以外のディレクトリでのSSL認証用のOracle Directory Integration Platformの構成方法」を参照してください。

開始する前に、Oracle Internet DirectoryがSSLサーバー認証用に構成されていることを確認します。必要に応じて、この項の手順を試行する前に第4.6.1項の手順を実行します。

1. 次のコマンドを実行して、信頼できる証明書をOracle Internet Directoryウォレットからエクスポートします。
orapki wallet export -wallet Path_to_OID_wallet -dn Subject_DN_of_trusted_certificate -cert path_to_certificate_file

Oracle Internet Directoryウォレットは、Fusion Middlewareのユーザー・インタフェースを使用して作成した場合、$ORACLE_INSTANCE/OID/admin/wallet_nameにあります。

次に例を示します。

orapki wallet export
-wallet /home/Middleware/asinst_1/OID/admin/oidwallet
-dn "cn=ldap.oracle.com"
-cert /home/Middleware/asinst_1/OID/admin/oidcert.txt

2. keytoolを使用してJavaキーストア(JKS)を作成し、前の手順でエクスポートした信頼できる証明書をJKSにインポートします。
keytool -importcert -trustcacerts -alias Some_alias_name
-file Path_to_certificate_file -keystore path_to_keystore

次に例を示します。

keytool -importcert -trustcacerts -alias OID2
-file /home/Middleware/asinst_1/OID/admin/oidcert.txt -keystore /home/Middleware/dip.jks

システムからキーストア・パスワードが要求されます。このキーストアの新しいパスワードを入力します。

注意:

- -keystoreオプションを使用し、キーストアが存在しない場合は、keytoolによってキーストアが作成されます。

3. 次のコマンドを実行して、Oracle Directory Integration PlatformのJavaキーストアの場所を更新します。
manageDIPServerConfig set -attr keystorelocation
-val full_path_to_keystore -h weblogic_host -p weblogic_managed_server_port -wlsuser weblogic_user

注意:
full_path_to_keystoreはOracle Directory Integration Platformがデプロイされているホストに基づいて、Javaキーストア(JKS)への絶対パスを表します。JKSへの絶対パスを指定する場合は、適切なパス・セパレータを使用します(UNIXおよびLinuxプラットフォームでは「/」、Windowsプラットフォームでは「\」)。

次に例を示します。

manageDIPServerConfig set -attr keystorelocation
-val /home/Middleware/dip.jks -h host -p 7005
-wlsuser weblogic

システムからWebLogicパスワードが要求されます。

4. 次のコマンドを実行してCSF資格証明を作成し、Javaキーストア・パスワードを更新します。

1. 次のコマンドを実行して、WLSTプロンプトを開きます。
$ORACLE_HOME/common/bin/wlst.sh

2. WebLogic管理サーバーに接続します。
connect('Weblogic_User', 'Weblogic_password',
't3://Weblogic_Host:Weblogic_AdminServer_Port')

3. 資格証明を作成して、Javaキーストア・パスワードを更新します。
createCred(map="dip", key="jksKey", user="jksuser", password="JKS_password_created_previously_in_step_2")

5. Fusion Middlewareユーザー・インタフェースにログインして、Oracle Directory Integration PlatformのSSL構成を更新します。
「DIP」→「サーバー・プロパティ」を選択し、「SSLモード」を2、「ポート値」をOracle Internet DirectoryのSSLポートに設定します。

6. Oracle WebLogic Managed Serverを再起動します。
Oracle Directory Integration Platformは、SSLサーバー認証モードでOracle Internet Directoryに接続するようになります。

4.6.3 OID以外のディレクトリでのSSL認証用のOracle Directory Integration Platformの構成方法

この項では、Oracle Directory Server Enterprise Edition(旧称Sun Java System Directory Server)やOracle Universal Directory(OUD)など、OID以外のディレクトリでのSSL認証用にOracle Directory Integration Platformを構成する方法について説明します。

1. 信頼できる証明書をディレクトリからエクスポートしてファイルに保存します。

2. ディレクトリからの信頼できる証明書をJavaキーストア(JKS)にインポートします。
keytool -importcert -trustcacerts -alias Some_alias_name
-file Path_to_certificate_file -keystore path_to_keystore

次に例を示します。

keytool -importcert -trustcacerts -alias sunone
-file /home/Middleware/sunone.cert -keystore /home/Middleware/dip.jks

注意:

- -keystoreオプションを使用し、キーストアが存在しない場合は、keytoolによってキーストアが作成されます。

3. プロファイルの作成時に、SSLオプションを選択してサード・パーティ・ディレクトリのSSLポートを指定します。

4.7 バックエンド・ディレクトリと接続ディレクトリのSSL証明書の管理

Oracle Directory Integration Platformは、SSLを使用してOracleバックエンド・ディレクトリおよび接続ディレクトリと接続できます。Oracleバックエンド・ディレクトリへの接続に認証なしのSSLを使用する場合、証明書は不要です。ただし、サーバー認証のあるSSLを使用してOracleバックエンド・ディレクトリに接続する場合は、LDAPサーバーに接続するためのトラスト・ポイント証明書が必要です。Oracle Directory Integration Platformは、証明書がJavaキーストア(JKS)にあるものと想定します。

manageDIPServerConfigコマンドにkeystorelocation引数を付けて使用することで、キーストアの場所を管理でき、WLST資格証明ストア・コマンドにmap="dip"引数およびkey="jksKey"引数を付けて使用することで、キーストアのパスワードを管理できます。

関連項目:

- manageDIPServerConfigコマンドの詳細は、「manageDIPServerConfigを使用したOracle Directory Integration Platformの管理」を参照してください。

- WLSTを使用したキーストアの管理の詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。

4.7.1 期限が切れた証明書の検出と削除

$JAVA_HOME/binディレクトリのkeytoolユーティリティを使用して、Oracle Directory Integration Platformの期限が切れた証明書を検出して削除できます。

キーストア内の信頼できる証明書の有効期日をリストするには、次のようにkeytoolユーティリティを実行します。

$JAVA_HOME/bin/keytool -list -v -keystore PATH_TO_KEYSTORE

信頼できる証明書をキーストアから削除するには、次のようにkeytoolユーティリティを実行します。

$JAVA_HOME/bin/keytool -delete -alias mycert -keystore PATH_TO_KEYSTORE

注意:
これらのコマンドの実行時、キーストアのパスワードが要求されます。

証明書の期限切れの詳細は、『Oracle Fusion Middleware管理者ガイド』の第7章「キーストア、ウォレットおよび証明書の管理」を参照してください。

4.8 高可用性を目的とした場合のOracle Directory Integration Platform

高可用性アーキテクチャでは、Oracle Directory Integration Platformは、2台以上のサーバーをクラスタの一部として含んでいるOracle WebLogicクラスタにデプロイされます。Oracle WebLogic Serverは、クラスタ内のOracle Directory Integration Platformを起動、停止および監視します。デフォルトで、Oracle Directory Integration Platformは、その基盤となるOracle WebLogicクラスタの高可用性機能を利用します。ハードウェア障害などの障害の場合には、セッション状態を、障害が発生したノードの作業を再開できる他のクラスタ・ノードが利用できます。

高可用性環境では、ノード・マネージャがOracle WebLogic Serverを監視するように構成されます。障害の場合は、ノード・マネージャがOracle WebLogic Serverを再起動します。ノード・マネージャがサーバーを再起動できない場合、フロントエンドとなっているロード・バランシング・ルーターがクラスタ内のWebLogicインスタンスの障害を検出し、稼働インスタンスに通信量をルーティングします。

Oracleバックエンド・ディレクトリがアクティブ-アクティブの高可用性構成でデプロイされている場合、そのクラスタに属するすべてのOracleバックエンド・ディレクトリ・インスタンスが同じデータベースを共有します。いずれかのOracleバックエンド・ディレクトリ・ノードのOracle Directory Integration Platformに加えられた変更は、クラスタ内のすべてのOracleバックエンド・ディレクトリ・インスタンスに自動的に伝播されます。

関連項目:
高可用性を目的とした場合のOracle Directory Integration Platformの詳細は、『Oracle Fusion Middleware高可用性ガイド』を参照してください。

4.9 レプリケート環境でのOracle Directory Integration Platformの管理

プロビジョニングおよび同期化では、レプリケート・ディレクトリはマスター・ディレクトリと異なります。元のディレクトリで作成されたプロファイルを新しいディレクトリで再作成し、すべての構成を元のディレクトリと同様に実行する必要があります。

第III部

Oracle Directory Integration Platformを使用した同期

この部では、Oracle Directory Integration Platformと他のアイデンティティ管理システム間での同期に関連する概念とコンポーネントについて説明します。また、同期をデプロイする方法を決定するときに考慮すべき事項についても説明します。

- 第5章「Oracle Directory Synchronization Serviceの概要」

- 第6章「ディレクトリ同期の構成」

- 第7章「ディレクトリ同期プロファイルの管理」

- 第8章「Oracle Directory Integration Platformにおけるディレクトリのブートストラップ」

- 第9章「Oracle Databaseの表との同期」

- 第10章「Oracle Human Resourcesとの同期」

- 第11章「サード・パーティのメタディレクトリ・ソリューションとの同期」

5 Oracle Directory Synchronization Serviceの概要

この章では、Oracleバックエンド・ディレクトリと接続ディレクトリをリンクする同期プロファイルとコネクタについて説明します。内容は次のとおりです。

- Oracleディレクトリの同期に必要なコンポーネント

- 同期の機能

関連項目:
Oracle Directory Integration Platformの概念の説明は、第1章「Oracle Identity Management統合の概要」を参照してください。

5.1 Oracleディレクトリの同期に必要なコンポーネント

この項では、Oracleディレクトリの同期に必要なコンポーネントについて説明します。内容は次のとおりです。

- ディレクトリ同期用のコネクタ

- ディレクトリ同期プロファイル

5.1.1 ディレクトリ同期用のコネクタ

Oracleバックエンド・ディレクトリと接続ディレクトリを同期化するため、Oracle Directory Integration Platformはコネクタと呼ばれるあらかじめパッケージされた接続ソリューションを使用します。このコネクタは最小でも、同期に必要な全設定情報を含む1つのディレクトリ統合プロファイルで構成されます。

5.1.1.1 コネクタとサポート対象インタフェースの使用

Oracleバックエンド・ディレクトリと接続ディレクトリを同期化するとき、Oracle Directory Integration Platformは、DB、LDAP、タグ付きまたはLDIFのいずれかのインタフェースを使用します。接続ディレクトリがこれらのインタフェースの1つを使用するときにコネクタに必要なものは、同期させるためのディレクトリ統合プロファイルのみです。たとえば、Oracle Internet Directoryとともに提供されるOracle Directory Server Enterprise Editionコネクタは、LDAPインタフェースを使用して、Oracle Directory Server Enterprise Editionから変更を読み取ります。この変更は、Oracle Directory Server Enterprise Editionに固有の形式であり、Oracle Directory Server Enterprise Edition内でldapsearchを実行することによって判別できます。

5.1.1.2 サポート対象インタフェースなしのコネクタの使用

接続ディレクトリでは、Oracle Directory Integration Platformによってサポートされているインタフェースの1つを使用できない場合、ディレクトリ統合プロファイルに加えてエージェントが必要です。エージェントは、Oracle Directory Integration Platformがサポートする書式の1つから、接続ディレクトリがサポートする書式に、データを変換します。Oracle Human Resourcesコネクタは一例です。これには、事前パッケージ済の統合プロファイルおよびOracle Human Resourcesエージェントの両方があります。エージェントは、Oracleバックエンド・ディレクトリとの通信に、Oracle Directory Integration Platformがサポートするタグ付きファイル形式を使用します。Oracle Human Resourcesシステムとの通信には、SQLを使用します(OCIインタフェース経由)。

5.1.2 ディレクトリ同期プロファイル

ディレクトリ同期プロファイルと呼ばれる同期用のディレクトリ統合プロファイルには、次のような同期化に必要な設定情報がすべて含まれます。

- 同期の方向
一部の接続ディレクトリは、Oracleバックエンド・ディレクトリからのデータの受信のみを行います(つまり、エクスポート操作のみに関与します)。その他は、Oracleバックエンド・ディレクトリへのデータの供給のみを行います(つまり、インポート操作のみに関与します)。インポート操作およびエクスポート操作の両方に関与するものもあります。

プロファイルは、方向ごとに(つまり、接続ディレクトリからOracleバックエンド・ディレクトリへの情報用に1つ、Oracleバックエンド・ディレクトリから接続ディレクトリへの情報用に1つ)個別に使用されます。

- インタフェースのタイプ
一部の接続ディレクトリは、Oracle Directory Integration Platformに組み込まれているインタフェースのいずれかでデータを受け取ることができます。LDAP、タグ付き、DB(読取り専用)、LDIFなどのインタフェースがあります。これらの接続ディレクトリについては、プロファイルに格納されている情報を使用してOracle Directory Synchronization Serviceが同期そのものを直接実行します。

- マッピング・ルールとその形式

ディレクトリ同期環境では、あるドメインの典型的なエントリ・セットを別のドメインに移動できます。同様に、ある属性のセットを別の属性のセットにマップすることができます。

マッピング・ルールは、接続ディレクトリとOracleバックエンド・ディレクトリ間の属性の変換を制御します。各コネクタでは、その同期プロファイルのorclodipAttributeMappingRules属性に一連のマッピング・ルールが格納されています。Oracle Directory Integration Platformはこれらのルールを使用し、ディレクトリからエクスポートする場合、および接続ディレクトリまたはファイルからインポートしたデータを変換する場合に、必要に応じて属性をマップします。Oracle Directory Integration Platformでは、変更をOracleバックエンド・ディレクトリにインポートする場合、マッピング・ルールに従って接続ディレクトリの変更レコードをLDAP変更レコードに変換します。同様に、エクスポート時は、コネクタがOracleバックエンド・ディレクトリでの変更内容を接続ディレクトリが理解できる形式に変換します。

- 接続ディレクトリの接続詳細
この詳細には、ホスト、ポート、接続モード(SSLまたは非SSL)などの接続ディレクトリについての情報や、接続ディレクトリの資格証明が含まれます。

- その他の情報
コネクタによるOracleバックエンド・ディレクトリと接続ディレクトリの同期に必要なほとんどの情報は、同期プロファイルに格納されますが、コネクタによっては、さらに多くの情報が必要な場合があります。これは、操作によっては実行時に追加構成情報が必要となるためです。

追加のコネクタ構成情報は、任意の場所に任意の方法で格納できます。ただし、Oracle Directory Integration Platformでは、これをorclODIPAgentConfigInfoと呼ばれる属性として同期プロファイルに格納できます。これを使用するかどうかは任意であり、コネクタでこのような情報が必要ない場合は、この属性を空のままにします。

この構成情報は、コネクタまたは接続ディレクトリ(あるいはその両方)に関連付けることができます。Oracleバックエンド・ディレクトリおよびOracle Directory Integration Platformは、この情報を変更しません。コネクタの起動時に、Oracle Directory Integration Platformは、この属性の情報を一時ファイルとしてコネクタに提供します。

関連項目:
ディレクトリ統合プロファイル内の属性のリストおよび説明は、『Oracle Identity Managementユーザー・リファレンス』の属性リファレンスに関する章を参照してください。

5.2 同期の機能

変更が行われたかどうかによって、次の方向で同期がとられます。

- 接続ディレクトリからOracleバックエンド・ディレクトリ

- Oracleバックエンド・ディレクトリから接続ディレクトリ

- 両方向

データが流れる方向に関係なく、次のことを前提としています。

- 同期時に、一方のディレクトリに対する増分変更が他方のディレクトリに伝播されます。

- 同期の完了後、両方のディレクトリには同じ方法で情報が維持されています。

この項の内容は次のとおりです。

- バックエンド・ディレクトリから接続ディレクトリへの同期

- 接続ディレクトリからバックエンド・ディレクトリへの同期

- バックエンド・ディレクトリがサポートしていないインタフェースを持つディレクトリとの同期

5.2.1 バックエンド・ディレクトリから接続ディレクトリへの同期

Oracleバックエンド・ディレクトリでは、ディレクトリ・オブジェクトに対する増分変更が保存される変更ログが管理されます。これには、変更ログ番号に基づいて連続的に変更が保存されます。

Oracleバックエンド・ディレクトリから接続ディレクトリへの同期は、この変更ログを活用します。このため、Oracle Directory Integration Platformの実行時には、変更ロギングが有効化されているデフォルト設定を使用してOracleバックエンド・ディレクトリを起動する必要があります。

Oracle Directory Synchronization Serviceは、同期プロファイルを処理するたびに、次のように動作します。

1. すべての変更が適用済である、最新の変更ログ番号を検索します。

2. その番号より新しい各変更ログ・エントリをチェックします。

3. プロファイル内のフィルタリング・ルールを使用して、接続ディレクトリと同期化する変更を選択します。

4. エントリに対してマッピング・ルールを適用し、接続ディレクトリ内で必要な変更を行います。

次に、その接続ディレクトリ内の適切なエントリまたは属性が更新されます。接続ディレクトリで、DB、LDAP、タグ付きまたはLDIFの各形式が直接使用されていない場合は、プロファイルに指定されているエージェントが起動されます。正常に使用された最終ログ番号がプロファイルに保存されます。

Oracleバックエンド・ディレクトリは、すべてのプロファイルが必要な変更ログを使用した後、変更ログをパージして、後続の同期の開始位置を示します。

注意:
同期されるエントリなど、同期プロファイルのすべての情報を記録するには、Oracle Enterprise Manager Fusion Middleware Controlを使用して、プロファイルのログ・レベルを「すべて」に設定するか、manageSyncProfilesコマンドを使用して、odip.profile.debuglevelパラメータの値を63に設定します。

5.2.2 接続ディレクトリからバックエンド・ディレクトリへの同期

接続ディレクトリで、DB、LDAP、タグ付きまたはLDIFの各形式が直接使用されている場合、そのエントリまたは属性への変更は、Oracle Directory Synchronization Serviceによって自動的に同期化されます。それ以外の場合、コネクタは同期プロファイル内にエージェントを持ち、エージェントがLDIFまたはタグ付き形式でファイルへの変更を書き込みます。次に、Oracle Directory Synchronization Serviceは、この接続ディレクトリ・データのファイルを使用して、Oracleバックエンド・ディレクトリを更新します。

5.2.3 バックエンド・ディレクトリがサポートしていないインタフェースを持つディレクトリとの同期

一部の接続ディレクトリは、Oracleバックエンド・ディレクトリでサポートされているどのインタフェースを使用してもデータを受信できません。このタイプのディレクトリに対するプロファイルには、「エージェント」と呼ばれる、同期用の個別のプログラムを識別する属性が含まれています。エージェントは接続ディレクトリの固有な形式と同期データが入っているDB、LDAP、タグ付きまたはLDIFファイルとの間の変換を行います。プロファイル内で識別されているとおり、エージェントはOracle Directory Synchronization Serviceによって起動されます。

Oracleバックエンド・ディレクトリからこのタイプの接続ディレクトリへデータをエクスポートする場合、Oracle Directory Synchronization Serviceは、必要なファイルをタグ付き形式またはLDIF形式で作成します。次にエージェントは、そのファイルを読み込んで、データを受信する接続ディレクトリに適した形式に変換し、そのディレクトリにデータを格納します。

このタイプの接続ディレクトリからOracleバックエンド・ディレクトリへデータをインポートする場合、エージェントは必要なファイルをタグ付きまたはLDIF形式で作成します。次に、Oracle Directory Synchronization Serviceは、このファイル・データを使用して、Oracleバックエンド・ディレクトリを更新します。

6 ディレクトリ同期の構成

この章では、ディレクトリ同期の構成方法と、マッピング・ルールの書式設定方法について説明します。内容は次のとおりです。

- Oracle Directory Integration Platformでのコネクタの登録

- 同期プロファイルのテンプレート

- 接続詳細の構成

- マッピング・ルールの構成

- カスタム・プラグインを使用したマッピングの拡張

- 一致フィルタの構成

- ファイルの場所とネーミング

関連項目:
Oracle Enterprise Manager Fusion Middleware Controlの使用方法は、第3章「Oracle Directory Integration Platformの管理」を参照してください。

6.1 Oracle Directory Integration Platformでのコネクタの登録

コネクタをデプロイする前に、Oracle Directory Integration Platformで使用しているOracleバックエンド・ディレクトリにコネクタを登録してください。この登録には、ディレクトリにエントリとして格納される同期プロファイルの作成作業が含まれます。Oracle Enterprise Manager Fusion Middleware Controlを使用したディレクトリ同期プロファイルの作成方法は、「同期プロファイルの作成」を参照してください。

関連項目:
「ディレクトリ同期プロファイル」

同期プロファイル・エントリの属性は、オブジェクト・クラスorclodiProfileに属します。ただし、orclodiplastappliedchangenumber属性のみはorclchangesubscriberオブジェクト・クラスに属します。

プラットフォーム関連のクラスと属性には、オブジェクト識別子の接頭辞2.16.840.1.113894.7が割り当てられます。

Oracleバックエンド・ディレクトリがOracle Internet Directoryである場合は、ディレクトリ内で、次のコンテナの下に様々な同期プロファイル・エントリが作成されます。

cn=subscriber profile,cn=changelog subscriber,cn=oracle internet directory

たとえば、OracleHRAgentという名前のコネクタが、次のようにディレクトリに格納されます。

orclodipagentname=OracleHRAgent,cn=subscriber profile,cn=changelog subscriber,cn=oracle internet directory

Oracleバックエンド・ディレクトリがOracle Unified DirectoryまたはOracle Directory Server Enterprise Editionである場合は、ディレクトリ内で、次のコンテナの下に様々な同期プロファイル・エントリが作成されます。

cn=subscriber profile,cn=changelog subscriber,cn=Directory Integration Platform, <suffix>

<suffix>には、Oracle Unified DirectoryまたはOracle Directory Server Enterprise EditionでのDIP構成中にユーザーが入力した内容が入ります。

6.2 同期プロファイルのテンプレート

Oracle Directory Integration Platformをインストールすると、次のような様々なディレクトリ・タイプとの同期のためのテンプレート・プロファイルが作成されます。

- Microsoft Active Directory 2003

- Microsoft Active Directory Lightweight Directory Service(AD LDS)バージョン1(旧称Active Directory Application Mode(ADAM))

- IBM Tivoli Directory Server 6.2

- Sun Java System Directory Server 6.3(将来、Oracle Directory Server Enterprise Editionに変名される)

- Oracle Directory Server Enterprise Edition 11.1.1.3(旧称Sun Java System Directory Server)

- Novell eDirectory 8.8

- OpenLDAP 2.2

- Oracle Database

- LDIFファイル

- タグ付きファイル

テンプレート・プロファイルの作成に使用されるプロパティ・ファイルとマッピング・ファイルは、$ORACLE_HOME/ldap/odi/confディレクトリにあります。

6.3 接続詳細の構成

サード・パーティ・ディレクトリの接続詳細は、Oracle Enterprise Manager Fusion Middleware Controlを使用して同期プロファイルを作成または編集することで構成できます。インストール時に作成されたサンプルの同期プロファイルのいずれかを使用するには、正しい接続詳細を指定する必要があります。接続詳細の指定に加えて、サード・パーティ・ディレクトリのユーザー・アカウントに、ユーザーおよびグループ情報の読取りに必要な権限があることを確認する必要もあります。

インストール時に用意されたテンプレート・プロパティ・ファイルに基づいて、プロファイルを作成することもできます。これを行う場合、プロファイルのodip.profile.condirurlプロパティおよびodip.profile.condiraccountプロパティに接続詳細を指定する必要があります。パスワードを要求されます。

接続詳細の指定に加えて、サード・パーティ・ディレクトリのユーザー・アカウントに、ユーザーおよびグループ情報の読取りに必要な権限があることを確認する必要もあります。

各サード・パーティ・ディレクトリでは、削除されたエントリを取得するために、異なる構成が必要です。tombstoneエントリを読み取るために必要なtombstoneの構成および権限を設定するには、サード・パーティ・ディレクトリのマニュアルを参照してください。たとえば、Microsoft Active Directoryでは、ユーザー・アカウントに、変更の監視対象となっているフォレストのすべてのドメインに対して、ディレクトリ変更をレプリケートする権限があることを確認する必要もあります。これは、次のいずれかの方法により実行できます。

- このアカウントにドメイン管理権限を付与する。

- このアカウントをドメイン管理者のグループのメンバーにする。

- このアカウントに、変更の監視対象であるフォレストのすべてのドメインに対する「ディレクトリの変更の複製」権限を付与する。

この権限を管理者以外のユーザーに付与するには、Microsoft Help and Support(http://support.microsoft.com/)の記事「How to Grant the 'Replicating Directory Changes' Permission for the Microsoft Metadirectory Services ADAM Service Account」の「More Information」の項の指示に従います。

ディレクトリ同期プロファイルの最も重要な部分のいくつかには、表6-1に示すプロパティに指定する接続詳細が含まれます。

表6-1 接続詳細のプロパティ

プロパティ

説明

odip.profile.condirurl

接続ディレクトリのURL

- LDAPディレクトリに接続するには、host:portの形式を使用します。

- SSLモードで接続するには、host:port:1の形式を使用します。

- データベースに接続するには、host:port:sidの形式を使用します。

odip.profile.condiraccount

サード・パーティ・ディレクトリへの接続に使用される識別名またはアカウント名

注意:

- 指定するアカウント情報には、接続するディレクトリでの十分な権限が必要です。

- LDIFまたはタグ付きデータ形式を使用している場合には、アカウント名は不要です。

- パスワードを要求されます。

6.4 マッピング・ルールの構成

この項では、マッピング・ルールの構成方法を説明します。内容は次のとおりです。

- 識別名マッピング

- 属性レベル・マッピング

- 新しいマッピング・ファイルの手動作成

- サポートされている属性マッピング・ルールと例

- 例: タグ付きファイル・インタフェース用のマッピング・ファイル

- 例: LDIFインタフェース用のマッピング・ファイル

- マッピング・ルールの更新

マッピング・ルール属性を使用して、ソースから宛先へエントリを変換する方法を指定します。Oracleバックエンド・ディレクトリは、ソースまたは宛先のいずれかである必要があります。エントリを変換する際のマッピング・ルールには、ドメイン・ルール、属性ルールおよびリコンシリエーション・ルールの3種類があります。これらのマッピング・ルールにより、識別名マッピング、属性レベル・マッピングおよびリコンシリエーション・ルールを指定できます。リコンシリエーション・ルールは、Novell eDirectoryとOpenLDAPでのみ使用されます。リコンシリエーション・ルールの詳細は、第22章「Novell eDirectoryまたはOpenLDAPとの統合」を参照してください。

注意:
Oracle Databaseに接続するマッピング・ルールの構成の詳細は、「Oracle Databaseの表との同期」の章の第9.2項「マッピング・ファイルの準備」を参照してください。

マッピング・ルールは固定の表形式で編成され、その形式に忠実に従う必要があります。マッピング・ルールの各セットは、DomainRulesまたはAttributeRulesという語のみを含む行と3つの番号記号(###)のみを含む行の間にあります。

DomainRules
srcDomainName1: [dstDomainName1]: [DomainMappingRule1]
srcDomainName2: [dstDomainName2]: [DomainMappingRule2]
[DomainExclusionList]
srcDomainForExclusion1
srcDomainforExclustion2
###
AttributeRules
srcAttrName1:[ReqAttrSeq]:[SrcAttrType]:[SrcObjectClass]:[dstAttrName1]:
[DstAttrType]:[DstObjectClass]:[AttrMappingRule1]
srcAttrName1,srcAttrName2:[ReqAttrSeq]:[SrcAttrType]:[SrcObjectClass]:
[dstAttrName2]:[DstAttrType]:[DstObjectClass]:[AttrMappingRule2]
[AttributeExclusionList]
exclusionAttribute1
exclusionAttribute2
###

この例のsrcAttrName1とsrcAttrName2を拡張するには、それぞれ改行なしで1行に記述する必要があります。

6.4.1 識別名マッピング

この項では、Oracleバックエンド・ディレクトリと接続ディレクトリ間のエントリのマップ方法を説明します。マッピングがOracleバックエンド・ディレクトリとLDAPディレクトリ間のものである場合、複数のマッピング・ルールを作成できます。キーワードDomainRulesのみを含んでいる行の後に、ドメイン・ルールの指定が表示されます。各ドメイン・ルールは、コロン区切りのコンポーネント(表6-2で説明されている)で示されます。

表6-2 ドメイン・ルールのコンポーネント

コンポーネント名

説明

SrcDomainName

関係のあるドメインまたはコンテナの名前。LDAPおよびLDIF以外のソースには、NONLDAPを指定します。

DstDomainName

宛先に関係のあるドメイン名。このコンポーネントは、宛先ディレクトリ内のエントリのコンテナが、ソース・ディレクトリでのコンテナと異なる場合に指定します。

SrcDomainNameに割り当てられた値がLDAPまたはLDIFドメインの場合、このフィールドも同じ値を継承します。ただし、SrcDomainNameに割り当てられた値がLDAPまたはLDIFドメイン以外の場合、エントリの作成場所となるコンテナを指定する必要があります。

未指定の場合、このフィールドは有効な状態にあるSrcDomainNameの値を継承します。LDAPおよびLDIF以外の宛先には、NONLDAPを指定します。インポートとエクスポートは、常にOracleバックエンド・ディレクトリを参照するため、NONLDAP:NONLDAPの組合せは許可されません。

DomainMappingRule

このルールは、ソース・ドメイン名またはAttributeRulesに指定されている属性(あるいはその両方)から、宛先識別名を構成するために使用されます。このフィールドの形式は、通常、cn=%,l=%,o=oracle,dc=comです。これらの指定は、エントリをディレクトリ内の異なるドメインまたはコンテナに配置するために使用されます。LDAP以外のソースの場合、このルールにより、ディレクトリにエントリを追加できるようターゲット識別名を構成する方法を指定します。

このフィールドは、Oracleバックエンド・ディレクトリへのインポート、またはLDIFファイルまたは他の外部LDAP準拠ディレクトリへのエクスポートの場合にのみ有効です。このコンポーネントは、宛先ディレクトリ内のエントリのいずれかの識別名が、ソース・ディレクトリのエントリの識別名と異なる場合に指定します。

このコンポーネントは、LDAPからLDIF、LDAPからLDAP、またはLDIFからLDAPへの同期の場合はオプションです。未指定の場合、ソース・ドメイン名と宛先ドメイン名は同じと考えられます。

例6-1 識別名マッピングの例

Distinguished Name Rules
%USERBASE INSOURCE%:%USERBASE ATDEST%:

USERBASEは、サード・パーティ・ディレクトリのユーザーおよびグループのマップ元のコンテナを指します。通常、これは、サード・パーティ・ディレクトリ・ドメインのルートの下にあるusersコンテナです。

例6-2 1対1識別名マッピングの例

1対1のマッピングを行う場合は、サード・パーティ・ディレクトリのDNがOracleバックエンド・ディレクトリのものと一致する必要があります。この例では、サード・パーティ・ディレクトリの識別名がOracleバックエンド・ディレクトリのDNに一致します。具体的には、次の条件を満たしている必要があります。

- サード・パーティ・ディレクトリのホストはus.mycompany.comドメインにあり、したがって、サード・パーティ・ディレクトリ・ドメインのルートはus.mycompany.comです。ドメインの下にあるuserコンテナのDN値は、cn=users,dc=us,dc=mycompany,dc=comになります。

- Oracleバックエンド・ディレクトリのデフォルトのレルム値は、dc=us,dc=mycompany,dc=comです。このデフォルトのレルムには、DN値がcn=users,dc=us,dc=mycompany,dc=comのusersコンテナが自動的に含まれます。

サード・パーティ・ディレクトリのDNがOracleバックエンド・ディレクトリのDNと一致するため、ディレクトリ間の1対1識別名マッピングが行われます。

dc=us,dc=mycompany,dc=comの下のcn=usersコンテナのみを同期化する場合、ドメイン・マッピング・ルールは次のとおりです。

Distinguished Name Rules
cn=users,dc=us,dc=mycompany,dc=com:cn=users,dc=us,dc=mycompany,dc=com

このルールでは、cn=users,dc=us,dc=mycompany,dc=comの下のすべてのエントリが同期化されます。ただし、このコンテナの下で同期化されるオブジェクトのタイプは、識別名マッピング・ルールに従う属性レベルのマッピング・ルールによって決まります。

cn=users,dc=us,dc=mycompany,dc=comの下のエントリcn=groups,dc=us,dc=mycompany,dc=comを同期化する場合、ドメイン・マッピング・ルールは次のとおりです。

cn=groups,dc=us,dc=mycompany,dc=com:cn=groups,cn=users,dc=us,dc=mycompany,dc=com

6.4.1.1 ドメインの除外

マップ・ファイルにDomainExclusionListヘッダーを挿入して、ブートストラップや同期化の際に除外するドメインを識別できます。DomainExclusionListにリストされたドメインは、ブートストラップおよび同期化の際に除外されます。

注意:
domainexclusionlistにリストされた識別名(DN)は、ソース・ディレクトリのコンテナのDNを識別しています。

次に、除外するドメインの例を含むDomainExclusionListヘッダーの例を示します。

DomainExclusionList
OU=myou,OU=test,DC=mycompany,DC=com
OU=mynewou,OU=test,DC=mycompany,DC=com

例6-3「DomainExclusionListヘッダーおよびAttributeExclusionListヘッダーを使用したマップ・ファイルの例」は、DomainExclusionListヘッダーを含むマップ・ファイルの例を示しています。この例では、RDN OU=myou, OU=rfi6894748, DC=imtest, DC=com and OU=mynewou, OU=rfi6894748, DC=imtest, DC=comが除外されます。

6.4.2 属性レベル・マッピング

キーワードAttributeRulesのみを含んでいる行の後に、属性ルールの指定が表示されます。属性ルールは、エントリのプロパティ値がどのように2つのLDAPディレクトリ間で関係するかを指定します。たとえば、一方のディレクトリのユーザー・オブジェクトのcn属性を、別のディレクトリのgivennameオブジェクトにマップできます。同様に、一方のディレクトリのグループ・オブジェクトのcn属性を、別のディレクトリのdisplayname属性にマップできます。各属性ルールは、コロン区切りのコンポーネント(表6-3で説明されている)で示されます。属性ルール指定の末尾は、3つの番号記号(###)の行です。

表6-3 属性ルールのコンポーネント

コンポーネント名

説明

SrcAttrName

LDAP準拠ディレクトリのリポジトリの場合、このパラメータは変換する属性の名前を意味します。

Oracle Databaseのリポジトリの場合、このパラメータは、SrcClassNameで指定された表のColumnNameを意味します。

他のリポジトリの場合、このパラメータは適切に解釈されます。

ReqAttrSeq

ソース属性を宛先に渡す必要があるかどうかを示します。エントリをOracleバックエンド・ディレクトリと接続ディレクトリ間で同期化する場合は、一部の属性を同期キーとして使用する必要があります。このフィールドは、指定した属性がキーとして使用されているかどうかを示します。使用されている場合は、属性の変化には関係なく、その属性の値がソースから抽出されます。

属性を相手側に常に渡す必要がある場合は、このフィールドに0(ゼロ)以外の整数値を指定します。

SrcAttrType

このパラメータは、整数、文字列、バイナリなど、属性の型を意味し、マッピング・ルールの妥当性をチェックします。

SrcObjectClass

共有している属性のソースがLDAP準拠ディレクトリの場合は、このパラメータによって、その属性が所属しているオブジェクト・クラスの名前が指定されます。

共有属性のソースがOracle Databaseのリポジトリの場合、このパラメータは表名を意味し、指定は必須です。他のリポジトリの場合、このパラメータは無視されます。

DstAttrName

オプションの属性。未指定の場合は、SrcAttrNameが使用されます。

LDAP準拠ディレクトリの場合、このパラメータは宛先の属性の名前を意味します。

Oracle Databaseのリポジトリの場合、このパラメータは、SrcClassNameで指定された表のColumnNameを意味します。

他のリポジトリの場合、このパラメータは適切に解釈されます。

DstAttrType

このパラメータは、整数、文字列、バイナリなど、属性の型を意味します。ソースおよび宛先の属性型の互換性を保証する責任は管理者にあります。Oracle Directory Integration Platformはこの互換性を保証しません。

DstObjectClass

LDAP準拠ディレクトリの場合、このパラメータは、属性が所属するオブジェクト・クラスを意味します。このパラメータはオプションです。

Oracle Databaseのリポジトリの場合、このパラメータは表名を意味し、指定は必須です。

他のリポジトリの場合、このパラメータは無視されます。

AttrMapping Rule

次の演算子とファンクションを持つオプションの算術式:

演算子: +および|

ファンクション:

- toUpper(string): あらゆるものを大文字に変換します。

- toLower(string): あらゆるものを小文字に変換します。

- trunc(String,char): 指定した文字が最初に出現する箇所以降の文字列を切り捨てます。

- truncl(String,char): 文字列で、指定した文字が最初に出現する箇所より左側の部分をすべて切り捨てます。

- truncr(String,char): 文字列で、指定した文字の右側の部分をすべて切り捨てます。

- bin2b64(byte[]): バイナリ値をBase64に変換します。

- b642bin(String): Base64エンコード値をバイナリに変換します。

- dnconvert(dnvalue): ドメイン・マッピング・ルールに基づいてDNを変換します。

未指定の場合は、ソース属性値が宛先属性の値としてコピーされます。リテラルは一重引用符('')または二重引用符("")で指定できます。

同期プロファイルにマッピング・ルールを入力する場合、厳密に正しい形式になるようにファイルを編集します。

注意:
マッピング・ファイルに属性およびオブジェクト・クラスが定義される際、スキーマに定義されているそれぞれの属性およびオブジェクト・クラスはソース・ディレクトリに入っているとみなされます。
同期用に親コンテナが選択されると、マッピング・ルールに一致するすべての子も同様に同期化されます。子コンテナを選択して同期から排除することはできません。

6.4.2.1 属性の除外

マップ・ファイルにAttributeExclusionListヘッダーを挿入して、ブートストラップや同期化の際に除外する属性を識別できます。AttributeExclusionListにリストされた属性は、ブートストラップおよび同期化の際に除外されます。

次に、除外する属性の例を含むAttributeExclusionListヘッダーの例を示します。

AttributeExclusionList
facsimileTelephoneNumber
telephonenumber

例6-3は、DomainExclusionListおよびAttributeExclusionListの両ヘッダーを含むマップ・ファイルの例を示しています。この例では、RDN OU=myou, OU=rfi6894748, DC=imtest, DC=com and OU=mynewou, OU=rfi6894748, DC=imtest, DC=comの下にあるエントリは除外され、フィルタ処理されたすべてのエントリからfacsimileTelephoneNumber属性およびtelephonenumber属性が除外されます(つまり、これらの属性は含まれません)。

例6-3 DomainExclusionListヘッダーおよびAttributeExclusionListヘッダーを使用したマップ・ファイルの例

DomainRules
ou=rfi6894748, DC=imtest, DC=com : ou=rfi6894748, cn=users, dc=us, dc=oracle, dc=com:
DomainExclusionList
OU=myou,OU=rfi6894748,DC=imtest,DC=com
OU=mynewou,OU=rfi6894748,DC=imtest,DC=com
###
AttributeRules
# attribute rule common to all objects
objectguid: :binary: :orclobjectguid:string: :bin2b64(objectguid)
ObjectSID: :binary: :orclObjectSID:string:orclADObject:bin2b64(ObjectSID)
distinguishedName: : : :orclSourceObjectDN: :orclADObject
# USER ENTRY MAPPING RULES
# attribute rule for mapping windows LOGIN id
sAMAccountName,userPrincipalName: : :user:orclSAMAccountName: :orclADUser:toupper(truncl(userPrincipalName,'@'))+"$"+sAMAccountname
# attribute rule for mapping Active Directory LOGIN id
userPrincipalName: : :user:orclUserPrincipalName: :orclADUser:userPrincipalName
# Map the userprincipalname to the nickname attr by default
userPrincipalName: : :user:uid: :inetorgperson:userPrincipalName
# Map the SamAccountName to the nickname attr if required
# If this rule is enabled, userprincipalname rule needs to be disabled
#sAMAccountName: : :user:uid: :inetorgperson
# Assign the userprincipalname to Kerberaos principalname
userPrincipalName: : :user:krbPrincipalName: :orcluserv2:trunc(userPrincipalName,'@')+'@'+toupper(truncl(userPrincipalName,'@'))
# This rule is mapped as SAMAccountName is a mandatory attr on AD
# and sn is mandatory on OID. sn is not mandatory on Active Directory
SAMAccountName: : :user:sn: : person:
# attributes to map to cn - normally this is the given name
cn: : :person:cn: :person:
AttributeExclusionList
facsimileTelephoneNumber
telephonenumber

6.4.3 新しいマッピング・ファイルの手動作成

同期プロファイルを作成および構成する際に、Oracle Enterprise Manager Fusion Middleware Controlを使用して同期マッピング・ルールを作成することをお薦めします。「同期プロファイルの作成」で説明するように、マッピング・ルールは「マッピング」タブで作成します。次の情報は、マッピング・ファイルを手動で(つまりOracle Enterprise Manager Fusion Middleware Controlを使用しないで)作成する必要がある場合に参照するためのものです。

新規マッピング・ファイルを手動で作成するには、次のようにします。

1. ソース・ディレクトリ内で同期に関係のあるコンテナを指定します。

2. ソース・コンテナ内のオブジェクトのマッピング先である宛先コンテナを指定します。指定されたコンテナがディレクトリ内に存在することを確認します。

3. 宛先ディレクトリ内に作成されるエントリの識別名作成ルールを決定します。LDAPからLDAPへの場合、マッピングは通常1対1です。LDAP以外からLDAPへの場合は、ドメインの識別名構成ルールが必要です。たとえば、タグ付きファイルまたはHuman Resourcesエージェントからの同期の場合、マッピング・ルールの形式はuid=%,dc=mycompany,dc=comになります。その場合、Oracle Human Resourcesから適用されるすべての変更にuid属性が存在する必要があります。手順6で指定するとおり、必須属性としてuid属性を指定する必要があります。

4. ディレクトリ間で同期化するオブジェクト(ソースおよび宛先ディレクトリ内の関連オブジェクト・クラス)を指定します。通常、ディレクトリ間で同期化されるオブジェクトには、ユーザー、グループ、組織単位、組織およびその他のリソースがあります。これらのオブジェクトを識別するには、ディレクトリで使用されている実際のオブジェクト・クラスを識別します。

5. ディレクトリ間で同期化する各種オブジェクトのプロパティ(LDAPコンテキストの属性)を指定します。オブジェクトの属性すべてを同期化する必要はありません。同期化対象のユーザー・プロパティは、cn、sn、uidおよびmailです。

6. マッピング・ルールを定義します。各マッピング・ルールの形式は次のとおりです。

<srcAttrName>:<ReqdFlag>:<srcAttrType>:<SrcObjectClass>: <dstAttrName>:<dstAttrType>:<dstObjectClass>: <Mapping Rule>

マッピング・ルールを定義するときは、必ず次のことを確認してください。

- 必須属性にはそれぞれ順序番号が付いていること。たとえば、手順3でuid属性が必須として指定された場合は、<ReqdFlag>のかわりに1の値を割り当てます。

- 関連オブジェクト・クラスは、それぞれ宛先ディレクトリ上にスキーマ定義を持つこと。

- 宛先オブジェクト・クラス内の必須属性は、すべてソースから割り当てられた値を持つこと。様々なLDAP実装は標準に完全に準拠していないこともありますが、これは標準オブジェクト・クラスにも当てはまります。

ソース・オブジェクト・クラスに属する属性のすべてを1つの宛先オブジェクト・クラスに割り当てる必要はありません。ソース・オブジェクト・クラスの各種の属性は、異なる宛先オブジェクト・クラスに属する様々な属性に割り当てることができます。

属性がバイナリ値をとる場合は、<attrtype>フィールドでbinaryとして指定します。

マッピング・ルールには柔軟性があります。1対多と多対1の両方のマッピングを組み込むことができます。

- 1対多
接続ディレクトリの1つの属性を、Oracleバックエンド・ディレクトリの多数の属性にマップできます。たとえば、接続ディレクトリのある属性がAddress:123 Main Street/MyTown, MyState 12345であるとします。Oracleバックエンド・ディレクトリのこの属性を、LDAP属性homeAddressおよびLDAP属性postalAddressの両方にマップできます。

- 多対1
接続ディレクトリの複数の属性をOracleバックエンド・ディレクトリの1つの属性にマップできます。たとえば、Oracle Human Resourcesディレクトリでは、firstname=Anneとlastname=Smithの2つの属性を使用してAnne Smithを表すとします。これらの2つの属性は、Oracleバックエンド・ディレクトリの1つの属性cn=Anne Smithにマップできます。ただし、双方向同期では、逆方向のマッピングはできません。たとえば、cn=Anne Smithを複数の属性にマップすることはできません。

関連項目:
この章の終わりにあるマッピング・ファイルの例

6.4.4 サポートされている属性マッピング・ルールと例

サポートされている属性マッピング・ルールは、次のとおりです。

- 連結演算子(+): 2つの文字列属性を連結します。
次のようなマッピング・ルールについて考えてみます。

Firstname,lastname:  :  :  : givenname:  : inetorgperson: firstname+lastname

たとえば、ソースのFirstnameがJohn、LastNameがDoeの場合、このルールによって、宛先のgivenname属性は、JohnDoeという値になります。

- OR演算子(|): 2つの文字列属性の値の1つを宛先に割り当てます。
次のようなマッピング・ルールについて考えてみます。

Fistname,lastname : : : :givenname: :inetorgperson: firstname | lastname

この例では、firstnameの値が存在する場合は、それがgivennameに割り当てられます。firstname属性が存在しない場合、lastnameの値がgivennameに割り当てられます。両方の値が空である場合、値は割り当てられません。

- bin2b64 ( ): ソース・ディレクトリのバイナリ値をBase64のエンコード値として宛先ディレクトリに保存します。通常、次のように使用します。

objectguid: : : :binary: :orclobjectguid: orcladuser:bin2b64(objectguid)

(objectguid)の値を検索する必要がある場合、これは必須です。

- tolower(): 文字列属性値を小文字に変換します。

firstname: : : :givenname: :inetorgperson: tolower(firstname)

- toupper(): 文字列属性値を大文字に変換します。

firstname: : : :givenname: :inetorgperson: toupper(firstname)

- trunc(str,char): 指定したcharが最初に出現する箇所以降の文字列を切り捨てます。

mail : : : : uid : : inetorgperson : trunc(mail,'@')

たとえば、ソースのmailがJohn.Doe@acme.comの場合、このルールによって、宛先のuid属性は、John.Doeという値になります。

- truncl(str, char): 指定したcharの最初の出現まで(最初の出現を含む)文字列を切り捨てます。次に例を示します。

mail : : : : uid : : inetorgperson : truncl(mail,'@')

- truncr(str, char): 文字列内の指定したcharの右側をすべて切り捨てます。次に例を示します。

mail : : : : uid : : inetorgperson : truncr(mail,'@')

- dnconvert(str): ドメイン・マッピングが使用される場合に、DNタイプ属性を変換します。
この例は、次のドメイン・マッピング・ルールを前提としています。

DomainRules
cn=srcdomain:cn=dstdomain:

次に例を示します。

uniquemember : : : groupofuniquenames : uniquemember : :groupofuniquenames : dnconvert(uniquemember)

この場合、ソースのuniquememberがcn=testuser1,cn=srcdomainの場合、宛先のuniquememberは、cn=test user1,cn=dstdomainになります。

- リテラル:

Userpassword: : :person: userpassword: :person: 'welcome1'

6.4.5 例: タグ付きファイル・インタフェース用のマッピング・ファイル

前述の説明に基づいて、ここではタグ付きファイル・インタフェースを使用して、Oracle Human Resourcesデータベース表からユーザー・エントリをインポートするためのマッピング・ファイルの例を示します。ソースはLDAP以外のディレクトリです。このサンプル・ファイルはインストール時に提供され、$ORACLE_HOME/ldap/odi/conf/oraclehragent.map.masterにあります。

DomainRules
NONLDAP:dc=myCompany,dc=com:uid=%dc=myCompany,dc=com
AttributeRules
firstname: : : :cn: :person
email : : : :cn: :person: trunc(email,'@')
email : 1 : :uid: :person:trunc(email,'@')
firstname,lastname: : : :cn: :person: firstname+","+lastname
lastname,firstname: : : :cn: :person: lastname+","+firstname
firstname,lastname: : : :sn: :person: lastname | firstname
EmployeeNumber: : : :employeenumber: :inetOrgperson
EMail: : : :mail: :inetOrgperson
TelephoneNumber1: : : :telephonenumber: :person
TelephoneNumber2: : : :telephonenumber: :person
TelephoneNumber3: : : :telephonenumber: :person
Address1: : : :postaladdress: :person
state: : : :st: :locality
street1: : : :street: :locality
zip: : : :postalcode: :locality
town_or_city: : : :l: :locality
Title: : : :title: :organizationalperson
#Sex: : : :sex: :person
###

前述のように、マッピング・ファイルは、キーワードおよびドメインと属性の一連のマッピング・ルール・エントリで構成されています。この例のマッピング・ファイルには、ドメイン・ルールNONLDAP:dc=myCompany,dc=com:cn=%,dc=myCompany,dc=comが含まれています。

- このルールは、ソース・ドメインがNONLDAPで、ソース・ドメインがないことを示しています。

- 宛先ドメイン(:dc=myCompany,dc=com)は、このプロファイルが処理するすべてのディレクトリ・エントリが、ドメインdc=myCompany,dc=comにあることを示しています。同期化を開始する前に、ドメインが存在することを確認してください。

- ドメイン・マッピング・ルール(:uid=%,dc=myCompany,dc=com)は、ソースからのデータが、このドメイン・マッピング・ルールで構成した識別名を持つディレクトリ内のエントリを参照することを示しています。この場合のuidは、常にNULL以外の値を持つ宛先属性の1つである必要があります。同期化するエントリに対応するデータがNULL値の場合、マッピング・エンジンは、そのエントリを無効と判断し、次のエントリに進みます。ディレクトリでエントリを正確に識別するには、uidが単一値であることも必要です。

- タグ付きファイルの場合、ソース・エントリは同期化対象のオブジェクトのタイプを示すオブジェクト・クラスを持ちません。SrcObjectClassフィールドは空白です。

- 宛先がOracleバックエンド・ディレクトリであるオブジェクトは、それぞれオブジェクト・クラスを持つ必要があります。

- emailは、マッピング・ファイル例では必須属性として指定されています。それは、uid属性がemail属性から導出されているためです。同期化を成功させるには、タグ付きファイルに指定されているすべての変更に、次のとおりemail属性を指定する必要があります。

Email : 1 : : :uid : : person : trunc(email,'@')

- 場合によっては、複数値属性の名前を使用して識別名のRDNを構成する必要があります。たとえば、cn=%,l=%,dc=myCompany,dc=com(cnは複数値属性)の識別名でエントリを構成する場合、DomainMappingRuleは、rdn,l=%,dc=myCompany,dc=com(rdnは、NULL値以外の宛先属性の1つ)のような形式になります。これをサポートする典型的なマッピング・ファイルは、次のような形式です。

DomainRules
NONLDAP:dc=us,dc=myCompany,dc=com:rdn,l=%,dc=us,dc=myCompany,dc=com
AttributeRules
firstname: : :cn: :person
email : : : :cn: :person: trunc(email,'@')
email : 1: : :rdn: :person: 'cn='+trunc(email,'@')
firstname,lastname: : : :cn: :person: firstname+","+lastname
lastname,firstname: : : :cn: :person: lastname+","+firstname
firstname,lastname: : : :sn: :person: lastname | firstname
EmployeeNumber: : : :employeenumber: :inetOrgperson
EMail: : : :mail: :inetOrgperson
TelephoneNumber1: : : :telephonenumber: :person
TelephoneNumber2: : : :telephonenumber: :person
TelephoneNumber3: : : :telephonenumber: :person
Address1: : : :postaladdress: :person
Address1: : : :postaladdress: :person
Address1: : : :postaladdress: :person
state: : : :st: :locality
street1: : : :street: :locality
zip: : : :postalcode: :locality
town_or_city: 2 : : :1: :locality
Title: : : :title: :organizationalperson
#Sex: : : :sex: :person
###

6.4.6 例: LDIFインタフェース用のマッピング・ファイル

統合プロファイルのサンプルは、Oracle Directory Integration Platformインストールの一部として作成されます。統合プロファイルのサンプルの作成に使用されるプロパティ・ファイルは、$ORACLE_HOME/ldap/odi/samplesディレクトリにあります。

注意:
接続されているOracle Databseのインポート・マッピング・ファイルのサンプルは、第9.4.2項「マッピング・ファイルの構成」を参照してください。

次にインポート・マッピング・ファイルの例を示します。

インポート・マッピング・ファイル例

DomainRules
dc=mycompany.oid,dc=com:dc=mycompany.iplanet,dc=com
AttributeRules
# Mapping rules to map the domains and containers
o: : :organization: o: :organization
ou: : :organizationalUnit: ou: : organizationalUnit
dc: : :domain:dc: :domain
# Mapping Rules to map users
uid : : :person: uid: :inetOrgperson
sn: : :person:sn: :person
cn: : :person:cn: :person
mail: :inetorgperson: mail: :inetorgperson
employeenumber: :organizationalPerson: employeenumber: :organizationalperson
c: : :country:c: :country
l: : :locality: l: :locality
telephonenumber: :organizationalPerson: telephonenumber: :organizationalperson
userpassword: : :person: userpassword: :person
uid: : :person: orcldefaultProfileGroup: :orclUserV2
# Mapping Rules to map groups
cn: : :groupofuniquenames:cn: :groupofuniquenames
member: : :groupofuniquenames:member: :orclgroup
uniquemember: : :groupofuniquenames:uniquemember: :orclgroup
owner: : :groupofuniquenames:owner: :orclgroup
# userpassword: :base64:userpassword: :binary:

この例では、ソース・ドメインと宛先ドメインの両方が、ドメイン・マッピング・ルール・セクションで指定されています。この例では、ソース・ドメインと宛先ドメインは同じです。ただし、コンテナが宛先ディレクトリにある場合は、異なる宛先ドメインを指定できます。

また、この例では、属性ルールがユーザー属性マッピング・ルールとグループ属性マッピング・ルールの2つのセクションに分かれています。マッピング・ルールにオブジェクト・クラスを指定すると、あるオブジェクトの特定の属性を一意にマップできます。

6.4.7 マッピング・ルールの更新

マッピング・ルールは、新規ルールの追加、既存ルールの変更またはorclodipAttributeMappingRules属性に指定されているマッピング・ルール・セットからの一部のルールの削除によって、カスタマイズできます。通常、これらの操作を実行するには、マッピング・ルールが指定されているファイルを指定するか、または使用するOracleバックエンド・ディレクトリのドキュメントの説明に従い、ldapsearchコマンドを使用してファイルの属性値を格納します。

6.4.7.1 エントリのマッピング・ルール・ファイルへの追加

新規エントリをマッピング・ルール・ファイルに追加するには、そのファイルを編集して、レコードをファイルに追加します。これには、次のようにします。

1. Oracleバックエンド・ディレクトリにマップする必要がある接続ディレクトリの属性名とオブジェクト・クラスを識別します。

2. Oracleバックエンド・ディレクトリ内の対応する属性名およびマップ先のオブジェクト・クラスを識別します。

3. 属性値に対して実行する必要がある変換を示すマッピング・ルール要素を生成します。

4. managesyncprofilesコマンドを使用して、属性マッピング・ルール・ファイルを同期プロファイルにロードします。
たとえば、ソース・ディレクトリ内のあるエントリの電子メール属性を宛先の固有識別子にマップする必要がある場合は、次のようになります。

Email:  :  : inetorgperson: uid: : person:

6.4.7.2 マッピング・ルール・ファイル内のエントリの変更

マッピング・ルール・ファイル内の変更するエントリを特定した後、属性値の変換に必要なマッピング・ルール要素を生成します。

6.4.7.3 エントリのマッピング・ルール・ファイルからの削除

マッピング・ルール・ファイル内の削除するエントリを特定した後、エントリをファイルから削除するか、エントリの前に番号記号(#)を付けてそのエントリをコメント化することができます。

関連項目:

- マッピング・ルール・ファイルの名前については、「ファイルの場所とネーミング」を参照してください。

- My Oracle Support(旧MetaLink)のNote 261342.1 「Understanding DIP Mapping Files」(http://metalink.oracle.com/)

6.5 カスタム・プラグインを使用したマッピングの拡張

カスタム・プラグインを使用してマッピング機能を拡張できます。新しいマッピング操作用のプラグインをサポートするために、oracle.ldap.odip.util.mapapi.IMapOperation Javaインタフェースが定義されています。このトピックには次の項が含まれ、マッピング機能を拡張するカスタム・プラグインに対するOracle Directory Integration Platformのサポートが説明されています。

- マッピング・プラグインの作成

- マッピング・プラグインの評価制約

- マッピング・プラグインの追加

- マッピング・プラグインのアプリケーション

- プラグインの使用例

6.5.1 マッピング・プラグインの作成

カスタム・プラグインを使用してマッピング機能を拡張するには、oracle.ldap.odip.util.mapapi.IMapOperationインタフェースを実装する必要があります。それには、evaluateメソッドを次のように実装することが必要です。

Vector evaluate(Vector operands);

operands引数はベクターです。operandsベクターの要素は、マッピング・ルールで指定されたプラグイン呼出しに基づいて、次のいずれかになります。

- 値のベクター(プラグインの引数として渡される属性)

- 文字列(文字列リテラルはプラグインの引数として渡される)

- 文字(文字リテラル)

戻り型はベクターです。このベクターのすべての要素は文字列またはバイト配列であることが必要です。単一の文字列を戻すには、サイズ1の新規ベクターを作成し、そのベクターに文字列を追加する必要があります。この制限は、複数値属性を許可するために強制されます。

次に例を示します。

cn,sn: : :person:description: :person:PLUGIN#MyPlugin(cn, sn, “Mr”)

プラグイン・クラスMyPluginは、Vector evaluate(Vector operands)メソッドを実装する必要があります。このマッピング・ルールのプラグイン呼出しにより、operandsの要素は次のようになります。

- 要素1は、cnのすべての値を含むベクターです(cnに1つの値しかない場合も含む)。

- 要素2は、snのすべての値を含むベクターです(snに1つの値しかない場合も含む)。

- 要素3は、文字列リテラル「Mr」です。

6.5.2 マッピング・プラグインの評価制約

- 属性に複数の値がある場合、対応するプラグインは、ベクターに格納されているすべての属性値に対して一度のみ呼び出されます。属性値ごとに呼び出されるわけではありません。

- 空の文字列リテラル(" ")または文字リテラル(' ')は無視されます。

- プラグイン呼出しに従って、evaluate()メソッドのVector operandsに含まれる各要素のタイプを識別し、適宜処理する必要があります。

- プラグインと既存のマッピング・ルールの演算子またはファンクションの組合せはサポートされません。たとえば、次の組合せはマッピング・ルールとしてサポートされません。

Plugin#MyPlugin(cn, sn) + givenanme
toupper(Plugin#(MyPlugin(cn,sn))
Plugin#TempPlugin1(cn) + Plugin#TempPlugin2(sn)

- 異なる属性ルールのマッピング・プラグイン呼出しを同じ呼出しシグネチャにすることをお薦めします。次の例は、Mypluginが異なる呼出しシグネチャを持つため、非常に間違いやすく、推奨されません。

sn: : :person:givenname: :person:PLUGIN#Myplugin(sn,"Mr")
cn: : :person:description: :person:PLUGIN#Myplugin(cn)

6.5.3 マッピング・プラグインの追加

マッピング・プラグインをOracle Directory Integration Platformに追加するには、次のようにします。

1. 実行中の場合は、Oracle Directory Integration PlatformをホストしているWebLogic管理対象サーバーを停止します。

2. マッピング・プラグインのJARファイルを、Oracle Directory Integration Platformアプリケーションが展開されたパスの/APP-INF/lib/ディレクトリにコピーします。次に例を示します。

MW_HOME/user_projects/domains/DOMAIN_NAME/servers/MANAGED_SERVER_NAME/tmp/
_WL_user/DIP_VERSION_NUMBER/RANDOM_CHARACTERS/APP-INF/lib/

3. Oracle Directory Integration PlatformをホストするWebLogic管理対象サーバーを起動します。

6.5.4 マッピング・プラグインのアプリケーション

この項では、マッピング・プラグインの様々なアプリケーションについて説明します。内容は次のとおりです。

- 新規のマッピング操作のサポート

- 複数のリテラル値のサポート

6.5.4.1 新規のマッピング操作のサポート

アプリケーションでは、マッピング・フレームワークで内部的にサポートされていない独自のマッピング操作を実装できます。

条件付きマッピングのサポート

条件付き属性マッピングのサポート

条件に基づく属性マッピングをサポートできます。たとえば、credential属性が存在する場合はorclisenabledをENABLEDに設定し、存在しない場合はorclisenabledをDISABLEDに設定するようにマッピング・ルールを作成できます。このロジックは、プラグインを実装してこの値を割り当てることでサポートできます。このマッピング・ルールは、次のようになります。

credential: : :UserType:orclisenabled::orcluserv2:PLUGIN#ConditionalAttrBasedOnPresence(credential)

すべてのカスタム・プラグインで、属性マッピング・ルールにPLUGIN#キーワードを含める必要があります(この場合はConditionalAttrBasedOnPresence)。

条件付き識別名マッピングのサポート

条件に基づくDNコンテナ・マッピングをサポートできます。たとえば、部門がSalesのユーザーをou=sales,dc=acme,dc=comにマップし、部門がITのユーザーをou=IT,dc=acme,dc=comにマップするとします。このマッピングをサポートするには、次のようにします。

- DomainRulesセクションに、次のような構成ルールを指定します。

NONLDAP:dc=acme,dc=com:cn=%,ou=%,dc=acme,dc=com

- AttributeRulesセクションに、ouをマップするためのプラグイン操作を含む次のようなルールを指定します。

department: : :UserType:ou: :orcluserv2:ConditionalOUMapping(department)

6.5.4.2 複数のリテラル値のサポート

現在のマッピング・フレームワークでサポートされるのは、属性に対して単一のリテラル値を指定することのみです。しかし、属性に複数のデフォルト値を指定できる場合は、複数のリテラル値を指定することが必要になります。たとえば、Microsoft Exchangeの場合、複数の値を指定できるshowInAddressBook属性が存在します。これも、プラグインを使用して実装できます。

6.5.5 プラグインの使用例

この項では、プラグインの使用例を示します。

例1: 属性マッピング・ルール

cn: : :person:initials: :person:PLUGIN#PluginSamp1(cn)

例1: 対応するプラグインの実装

Vector evaluate(Vector operands)
{
Vector all_cnValues = (Vector)operands.get(0);
Vector result =  new Vector();
….
….
//All the elements of this result must be strings.
return result;
}

例2: 属性マッピング・ルール

cn: : :person:givenname: :person:PLUGIN#Myplugin(cn,"Mr")

例2: 対応するプラグインの実装

Vector evaluate(Vector operands)
{
Vector all_cnValues = (Vector)operands.get(0);
String strOperand = (String)operands.get(1);
Vector result =  new Vector();

for(int i=0; i<all_cnValues.size(); i++)
{
String cnValue = (String) all_cnValues.get(i);
String givenNameNewValue = strOperand + cnValue;
result.add(givenNameNewVlaue);
}
//All the elements of this result must be strings.
return result;
}

例3: 属性マッピング・ルール

mail: : :inetorgperson:mail: :inetorgperson: Plugin#MyPlugin(mail, '@')

例3: 対応するプラグインの実装

Vector evaluate(Vector operands)
{
Vector all_mailValues = (Vector) operands.get(0);
Character charOperand = (Character) operands.get(1);
char charOperandValue = charOperand.charValue();
Vector result =  new Vector();
….
….
….
return result;
}

例4: 属性マッピング・ルール

cn,sn,mail: : :inetorgperson:description: :inetorgperson Plugin# MyPlugin(cn, sn, mail)

例4: 対応するプラグインの実装

Vector evaluate(Vector operands)
{
Vector all_cnValues = (Vector) operands.get(0);
Vector all_snValues = (Vector) operands.get(1);
Vector all_mailValues = (Vector) operands.get(2);

Vector result = new Vector();
…
…
…

return result;
}

6.6 一致フィルタの構成

デフォルトで、コネクタにより、同期用に構成されたコンテナ内のすべてのオブジェクトに対する変更が取得されます。しかし、ユーザーおよびグループに対する変更のみなど、特定のタイプの変更のみを同期化する場合があります。マッピング・ルールにより、エントリをあるディレクトリから別のディレクトリに変換する方法を指定できますが、ディレクトリ間で同期化されるオブジェクトをフィルタ処理することもできます。

接続ディレクトリからの変更をOracleバックエンド・ディレクトリにインポートする前に、同期プロファイルで変更を「接続されたディレクトリ一致フィルタ」(orclODIPConDirMatchingFilter)属性を使用してフィルタ処理できます。同様に、Oracleバックエンド・ディレクトリから接続ディレクトリにエクスポートする前に、変更を「OID一致フィルタ」(orclODIPOIDMatchingFilter)属性を使用してフィルタ処理できます。

どちらの属性の場合も、次の項で説明されているように、接続ディレクトリに対して、LDAP検索により増分変更を取得するか、または変更ログに変更を格納するかのいずれかのフィルタを指定できます。

- LDAP検索による変更のフィルタ処理

- 変更ログからの変更のフィルタ処理

6.6.1 LDAP検索による変更のフィルタ処理

変更ログをサポートしていない接続ディレクトリの場合、LDAP検索の実行によりエントリの最新のフットプリントが取得されます。objectclass=*を指定して実行されるLDAP検索では、所定のツリーまたはサブツリー内のエントリがすべて返されるため、同期に関係のあるオブジェクトのみを取得するには、LDAPフィルタ構文を使用してフィルタを指定する必要があります。たとえば、検索フィルタをorclOdipConDirMatchingFilter属性に割り当てることができます。フィルタは、searchfilter=LDAP_SEARCH_FILTERと指定します。

次の例では、組織単位、グループおよびユーザーを取得し、コンピュータは取得しないLDAP検索フィルタを作成します。

searchfilter=(|(objectclass=group)(objectclass=organizationalUnit)
(&(objectclass=user)(!(objectclass=computer))))

6.6.2 変更ログからの変更のフィルタ処理

変更ログに変更を格納する接続ディレクトリの場合、Oracle Directory Integration Platformに用意されている次の単純な演算子を使用すれば、「接続されたディレクトリ一致フィルタ」(orclODIPConDirMatchingFilter)または「OID一致フィルタ」(orclODIPOIDMatchingFilter)に一致フィルタを指定できます。

- =(等しい演算子)

- !(等しくない演算子)

注意:
LDAPまたはLDAP以外のディレクトリで、変更ログから増分変更が取得される場合は、前述の演算子を使用できます。
LDAP検索を使用して増分変更を取得する接続ディレクトリでは、前述の演算子を使用することもできますが、指定できるのは単一の式のみです。そうでない場合、検索は失敗します。

フィルタをsearchfilter=CHANGELOG_SEARCH_FILTERと指定します。

たとえば、次のフィルタを使用すると、プロファイルimp1またはプロファイルimp2によって変更が行われた場合、同期が行われません。

searchfilter=(|(!(modifiersname=orclodipagentname=imp1,cn=subscriber
profile,cn=changelog subscriber,cn=oracle internet
directory))(!(modifiersname=orclodipagentname=imp2,cn=subscriber
profile,cn=changelog subscriber,cn=oracle internet directory)))

変更を変更ログに格納する接続ディレクトリの場合、一致フィルタで同期化できるのは、変更ログに現れる属性についてのみです。変更ログにない属性を一致フィルタに含めると、検索操作は失敗します。このため、一致フィルタの使用は、変更ログに増分変更を格納する接続ディレクトリに限られます。

6.7 ファイルの場所とネーミング

表6-4に、同期時に使用される各種のファイルの場所を示します。デフォルトでは、ファイル・ベースのインタフェース(タグ付き/LDIF)が同期に使用される場合、次の場所でファイルの読取りと書込みが行われます。

表6-4 ファイルの場所と名前

ファイル

ファイル名

インポート・データ・ファイル

$ORACLE_HOME/ldap/odi/data/import/Profile_Name.dat

エクスポート・データ・ファイル

$ORACLE_HOME/ldap/odi/data/export/Profile_Name.dat

たとえば、Oracle Human Resourcesプロファイルのデータ・ファイル名はoraclehrprofile.datです。

7 ディレクトリ同期プロファイルの管理

この章では、ディレクトリ同期プロファイルの管理方法を説明します。内容は次のとおりです。

- Fusion Middleware Controlを使用した同期プロファイルの管理

- manageSyncProfilesを使用した同期プロファイルの管理

- 同期ステータス属性の変更

- 同期プロファイルでのNULL値の設定

7.1 Fusion Middleware Controlを使用した同期プロファイルの管理

この項では、Oracle Enterprise Manager Fusion Middleware Controlを使用して同期プロファイルを作成、変更および削除する方法について説明します。内容は次のとおりです。

- 同期プロファイルの作成

- 同期プロファイルの編集

- 同期プロファイルの有効化と無効化

- 同期プロファイルの削除

- DIPテスターを使用した同期プロファイルのトラブルシューティング

注意:
管理者以外の権限を持つユーザーは、Oracle Enterprise Manager Fusion Middleware Controlを使用して既存の同期プロファイルに関する情報を表示できますが、プロファイルの作成または編集を行うことはできません。

7.1.1 同期プロファイルの作成

この項では、Oracle Enterprise Manager Fusion Middleware Controlを使用して同期プロファイルを作成する方法について説明します。プロファイルを作成するときは、「接続テスト」機能を使用してソース・ホストへの接続をテストし、「すべてのマッピング・ルールの検証」機能を使用してマッピング・ルールをテストすることをお薦めします。エラー・メッセージが表示された場合は、プロファイル構成を修正する必要があり、これを行わないと、プロファイルの有効化とこのプロファイルを使用した同期の実行を行うことができなくなります。

Oracle Directory Integration Platformに同梱されているサンプル・マップ・ファイルを使用して同期プロファイルを作成すると、様々な警告メッセージが表示されます。警告が表示されても同期プロファイルは正しく機能するため、これらのメッセージは無視して構いません。警告メッセージが表示されないようにするには、Oracle Directory Integration Platformに同梱されているマップ・ファイルのデフォルト設定を、使用する環境にあわせて編集してからプロファイルを作成します。

Oracle Enterprise Manager Fusion Middleware Controlを使用して同期プロファイルを作成するには、次の手順を実行します。

1. Webブラウザを開き、使用している環境のOracle Enterprise Manager Fusion Middleware ControlのURLを入力します。Oracle Enterprise Manager Fusion Middleware ControlのURLの形式は、https://host:port/emです。

2. Oracle Enterprise Manager Fusion Middleware Controlにログインします。

3. 左のナビゲーション・パネルで、「Identity and Access」エントリをクリックするか展開し、続いて、同期プロファイルを作成するDIPコンポーネントを選択します。

4. 「DIPサーバー」メニューをクリックして「管理」を選択し、次に「同期プロファイル」をクリックします。
「同期プロファイルの管理」が表示されます。

5. 「作成」をクリックします。
「同期プロファイルを作成」ページが表示され、各種プロファイル設定に対応するタブが表示されます。次の各項で、「同期プロファイルを作成」ページの各タブのパラメータを説明します。

パラメータに値を設定したら、「同期プロファイルを作成」ページの「OK」をクリックして、プロファイルを作成します。「同期プロファイルの管理」ページにプロファイルが表示されます。

一般

「一般」タブには、プロファイルの一般設定を構成する次のパラメータがあります。

- プロファイル名: コネクタの名前をASCII文字のみを使用して指定します(ASCII以外の文字は「プロファイル名」ではサポートされていません)。指定した名前は、このコネクタ・プロファイルのDNのRDNコンポーネントとして使用されます。たとえば、プロファイル名MSAccessを指定すると、orclodipagentname=MSAccess,cn=subscriber profile, cn=changelog subscriber, cn=oracle internet directoryというコネクタ・プロファイルが作成されます。

- プロファイルのステータス: プロファイルを有効化するかどうか、無効化するかどうかを選択します。

- DIP-OIDの使用形式/DIP-OUDの使用形式/DIP-ODSEEの使用形式: このラベルは、同期化およびプロビジョニング用の1つのエンドポイントである、インストール済Oracleディレクトリ(Oracle Internet Directory、Oracle Universal DirectoryまたはOracle Directory Server Enterprise Editionのいずれか)を表します。Oracleディレクトリをソースまたは宛先のどちらのディレクトリとして使用するかを選択します。「ソース」を選択すると、ターゲットの接続ディレクトリからOracleバックエンド・ディレクトリに変更を取り込みます。「接続先」を選択すると、Oracleバックエンド・ディレクトリからターゲットの接続ディレクトリに変更を送信します。

- タイプ: 接続ディレクトリのタイプをリストから選択します。

注意:
標準以外のLDAPタイプのプロファイル(「データベース」または「カスタム」など)を選択した場合、以降の構成パラメータは異なります。たとえば、「タイプ」リストから「カスタム」を選択した場合は、Javaクラス名およびパッケージを指定する必要があります(例: com.comp.dip.integration.MyListener)。

- ホスト: 接続ディレクトリが稼働しているホスト。

- ポート: 接続ディレクトリが稼働しているポート。

- SSL設定: SSL設定を有効化するかどうか、無効化するかどうかを選択します。SSL設定を有効にする場合、正常に接続したり、ターゲット・ディレクトリへの接続をテストしたりするには、ターゲット・ディレクトリのルート証明書がOracle Directory Integration Platformキーストアにある必要があります。

- データベース・サービスID: 「タイプ」メニューから「データベース(JDBC)」を選択した場合は、データベースSIDを入力します。(注意: サービス名ではなく、SIDを入力します。)

- ユーザー名: コネクタ・エージェントが接続ディレクトリにアクセスするために使用するアカウントを指定します。たとえば、接続ディレクトリがデータベースの場合、アカウントはScottなどになります。接続ディレクトリが別のLDAP準拠ディレクトリの場合は、アカウントはcn=Directory Managerなどになります。

- パスワード: コネクタまたはエージェントが接続ディレクトリにアクセスするときに使用するパスワードを指定します。

- 接続テスト: 「接続テスト」機能を使用すると、ソース・ホストへの接続をテストできます。

マッピング

「マッピング」 タブでは、プロファイルの、ドメインおよび属性のマッピング・ルールやドメインおよび属性の除外リストを構成できます。

ドメイン・マッピング・ルールは、Oracleバックエンド・ディレクトリへのオブジェクトの同期元となるドメインまたはコンテナのマッピング・ルールです。ドメイン除外リストは、ブートストラップ時および同期時に除外するドメインを指定します。

属性マッピング・ルールは、管理されるオブジェクトの属性を対象とします。属性除外リストは、ブートストラップ時および同期時に除外する属性を指定します。

マッピング・ルールまたは除外リストを作成するには、作成するマッピング・ルールまたは除外リストのタイプに対応する「作成」をクリックし、パラメータの値を入力し、「同期プロファイルを作成」ページの上部で「OK」をクリックします。

注意:
マッピング・ルールを作成したら、「同期プロファイルを作成」ページの上部にある「すべてのマッピング・ルールの検証」ボタンを使用してマッピング・ルールをテストしてください。マッピング・ルールが有効でない場合、プロファイルを作成することはできません。

「ドメイン・マッピング・ルール」パラメータのリストと説明を次に示します。

- DIP-OIDコンテナ/DIP-OUDコンテナ/DIP-ODSEEコンテナ: このラベルは、同期化およびプロビジョニング用の1つのエンドポイントである、インストール済Oracleディレクトリ(Oracle Internet Directory、Oracle Universal DirectoryまたはOracle Directory Server Enterprise Editionのいずれか)を表します。これは、オブジェクトの同期先となる宛先コンテナの名前です。LDAP以外のソースとの同期の場合は、値NONLDAPを入力します。

- ソース・コンテナまたは宛先コンテナ: インポート・プロファイルを構成している場合、このパラメータは「ソース・コンテナ」という名前になります。エクスポート・プロファイルを構成している場合、このパラメータは「宛先コンテナ」という名前になります。このパラメータは、オブジェクトの同期元または同期先となるソース・コンテナまたは宛先コンテナの名前を特定します。LDAP以外のソースとの同期の場合は、値NONLDAPを入力します。

- DNマッピング・ルール: ソース・コンテナのエントリを宛先コンテナにマップする方法を決定する特定のマッピング・ルール。

ドメイン除外リスト・パラメータのリストと説明を次に示します。

- 除外するソース・コンテナ: このパラメータは、インポート・プロファイルを構成する場合に表示されます。値を入力するか(たとえば、OU=myou,OU=test,DC=mycompany,DC=com)、「参照」をクリックしてドメインを参照し、「ドメイン除外コンテナの作成」ダイアログ・ボックスで「OK」をクリックすることによって、ブートストラップと同期の際に除外するドメインを指定します。

- 除外するDIP-OIDコンテナ/除外するDIP-OUDコンテナ/除外するDIP-ODSEEコンテナ: このパラメータは、エクスポート・プロファイルを構成する場合に表示されます。値を入力するか(たとえば、OU=myou,OU=test,DC=mycompany,DC=com)、「参照」をクリックしてドメインを参照し、「ドメイン除外コンテナの作成」ダイアログ・ボックスで「OK」をクリックすることによって、ブートストラップと同期の際に除外するドメインを指定します。

「属性マッピング・ルール」パラメータのリストと説明を次に示します。

- ソースのオブジェクト・クラス: ソース・ディレクトリのオブジェクト・クラスを選択します。LDAP以外のソースとの同期では、このパラメータは適用されません。

- ソース属性: マッピング・ルールを適用するソース・ディレクトリの属性。LDAPソースとの同期の場合は、「単一の属性」オプションを選択して「属性」フィールドに適切な属性を入力します。LDAP以外のソースとの同期の場合は、「複数属性」オプションを選択して「複数値属性」フィールドに適切な属性を入力します。

- 必要なソース属性: ソース属性要件を有効または無効にします。

- DIP-OIDオブジェクト・クラス/DIP-OUDオブジェクト・クラス/DIP-ODSEEオブジェクト・クラス: 宛先オブジェクト・タイプまたは宛先オブジェクト・クラスを選択します。LDAPターゲットには、宛先オブジェクト・クラスを使用します。
宛先表: 宛先ディレクトリ・タイプが「データベース(JDBC)」の場合に、宛先表を選択します。

- DIP-OID属性/DIP-OUD属性/DIP-ODSEE属性: マッピング・ルールを適用する宛先属性の名前を選択します。
宛先列: 宛先ディレクトリ・タイプが「データベース(JDBC)」の場合に、宛先列を選択します。

- DIP-OID属性タイプ/DIP-OUD属性タイプ/DIP-ODSEE属性タイプ: 宛先ディレクトリの属性のタイプを入力します。

- 対応付けの式: 宛先属性値をソース属性値から導出する変換ルールを入力します。

「属性除外リスト」パラメータのリストと説明を次に示します。

- オブジェクト・クラス: 属性除外リストに追加する属性が含まれるオブジェクト・クラスを選択します。オブジェクト・クラスを選択すると、その属性が複数アドレスのフィールドに表示されます。

- 属性: 属性除外リストに追加する属性を選択します。

フィルタリング

「フィルタリング」タブには、プロファイルのフィルタリング設定を構成する次のパラメータがあります。

- ソースの一致フィルタ: 接続ディレクトリのエントリを一意に識別する属性を指定するか、searchfilter=ldap_search_filterの形式で接続ディレクトリのLDAP検索フィルタを指定します。

- 宛先一致ルール: Oracleバックエンド・ディレクトリのレコードを一意に識別する属性を指定します。この属性は、Oracleバックエンド・ディレクトリと接続ディレクトリを同期化するためのキーとして使用されます。

- 関連するプロファイル: 「関連するプロファイル」フィルタ設定は、一方のディレクトリで開始された変更が同じディレクトリに戻される、双方向同期でのループバック変更を防ぐために使用されます。インポート・プロファイルに対しては、関連付けられているエクスポート・プロファイルを「関連するプロファイル」フィールドに指定します。エクスポート・プロファイルに対しては、そのディレクトリからデータを同期するために使用するインポート・プロファイルを指定します。

注意:
プロファイルの関連付けを解除するには、「関連するプロファイル」設定を「1つ選択」に設定します。

拡張

「拡張」タブには、プロファイルの拡張設定を構成する次のパラメータがあります。

- スケジューリングの間隔(HH:MM:SS): 接続ディレクトリとOracleバックエンド・ディレクトリの同期の、試行間隔の時間数、分数および秒数を指定します。

- 最大再試行回数: 同期を停止するまでに同期を試行する回数の、最大数を指定します。デフォルトは5です。最初の再試行は最初の失敗の1分後に行われます。2回目の再試行は2回目の失敗の2分後に、後続の再試行はn回目の失敗のn分後に行われます。

- ログ・レベル: デバッグのロギング・レベルを指定します。同期されるエントリなど、すべての情報を記録するには、「すべてのレベル」を選択します。

- プライマリ表: このプロファイルのプライマリ表をリストから選択します。

- 最終変更番号: 同期が実行された変更の数を特定します。同期プロファイルを作成すると、「最終変更番号」パラメータはロックされ、値を入力できなくなります。
同期プロファイルを作成し、編集しようとすると、「最終変更番号」パラメータに対応する「編集して維持」という追加のオプションが利用可能になります。「編集して維持」オプションを選択(有効化)すると、「最終変更番号」パラメータの値を編集することができます。「編集して維持」オプションを有効にすると、「最終変更番号」がプロファイル内に維持されます。「編集して維持」オプションを有効にしない場合、「最終変更番号」の変更は維持されません。

警告:

「最終変更番号」の値を編集する場合、誤った値を設定すると、プロファイルの機能停止や、誤った同期操作の原因になりますので注意してください。

- 主キー: データベース表の名前を選択し、主キー列を入力して、同期する表の主キーを指定します。主キーが複数の列で構成されている場合は、各列の名前をカンマで区切って入力します。たとえば、id,name,dobとします。行を削除するには、削除する行にある赤色のxをクリックします。主キー・エントリを追加するには、「主キーの追加」をクリックします。

- 表リレーション: 「表リレーションの追加」をクリックして、プライマリ表とプロファイルに関係するその他すべての表の間の関係を定義します。「リレーション列」ボックスに、セカンダリ表とプライマリ表の間の関係を定義する列名を入力します。複数の列名を指定する必要がある場合は、カンマ区切りのリスト(たとえば、id,name)を使用します。

- 追加構成パラメータ: このセクションを使用すると、オプションの拡張構成パラメータを管理できます。拡張構成パラメータを作成するには、「追加」をクリックしてパラメータおよびその値を識別します。各拡張構成パラメータのリストと説明を次に示します。

- 全エントリのチェック: eDirectoryおよびOpenLDAPにのみ適用され、Novell eDirectoryまたはOpenLDAPの削除済エントリをOracleバックエンド・ディレクトリと同期化する方法を決定します。このパラメータにtrue値を指定すると、Oracle Directory Integration Platformでは、Oracleバックエンド・ディレクトリのエントリとNovell eDirectoryまたはOpenLDAPとの間で線形比較して削除済エントリを識別します。エントリがNovell eDirectoryまたはOpenLDAPに存在しない場合、そのエントリはOracleバックエンド・ディレクトリから削除されます。このパラメータにfalse値を指定すると、接続ディレクトリのエントリ数とOracleバックエンド・ディレクトリのエントリ数の差によって削除済エントリは同期化されます。削除済エントリ数が0以下の場合、同期化する削除済エントリはありません。しかし、削除済エントリ数が1以上の場合は、Oracle Directory Integration PlatformはOracleバックエンド・ディレクトリの各エントリをNovell eDirectoryまたはOpenLDAPと比較して同期化する削除済エントリを識別します。Oracle Directory Integration Platformでは、接続ディレクトリのエントリ数とOracleバックエンド・ディレクトリのエントリ数の差と同じ数の削除済エントリを検出するまでエントリの比較を続けます。パフォーマンスを向上させるには、このパラメータに false 値を指定します。

- 一意属性: eDirectoryおよびOpenLDAPにのみ適用され、エントリの検索に使用できるNovell eDirectoryまたはOpenLDAPの一意の属性を指定します。このパラメータには、Novell eDirectoryの場合は GUID 値、OpenLDAPの場合は entryuuid 値を指定します。

- 属性タイプ: eDirectoryおよびOpenLDAPにのみ適用され、UniqueAttributeパラメータのタイプを示します。このパラメータには、Novell eDirectoryの場合は Binary 値、OpenLDAPの場合は nonBinary 値を指定します。このパラメータは、マッピング・ファイルに定義されている属性に対応するOracleバックエンド・ディレクトリの属性を取得するために使用します。

- 時間デルタの検索: このパラメータは、タイムスタンプに基づいて同期を処理し、変更ログをサポートしないeDirectoryおよびOpenLDAPにのみ適用されます。「時間デルタの検索」によって、各同期サイクルの反復中に変更を処理する時間間隔が決定されます。デフォルト値は3600です。各同期サイクルで実行される反復の回数は、保留中の変更の数によって異なります。たとえば、「時間デルタの検索」パラメータが60に設定されていると、約1分間保留中の変更がある場合、同期に必要な反復は1回です。変更が3分間保留中である場合、同期に必要な反復は3回です。

注意:

- 1分当たりの変更数が少ない場合は、「時間デルタの検索」の値を増やすと、同期の効率が向上します。

- 「時間デルタの検索」パラメータに設定する値が、接続ディレクトリ・サーバーのLDAP検索制限を超えないことを確認してください。そうでない場合、同期時にエラーが発生して一部の変更が処理されないことがあります。

- デルタ・サイズの検索: このパラメータは、変更ログをサポートするディレクトリから変更をインポートする場合に適用されます。「デルタ・サイズの検索」によって、同期サイクルの各反復中に処理される増分変更の数が決定されます。デフォルト値は500です。各同期サイクルで実行される反復の回数は、保留中の変更の数によって異なります。たとえば、「デルタ・サイズの検索」パラメータに500の値が割り当てられていると、保留中の変更が498個ある場合、同期に必要な反復は1回です。ただし、保留中の変更が501個ある場合、同期には2回の反復が必要になります。場合によっては、このパラメータに割り当てる値を高くすると、同期の効率が向上します。ただし、指定する値が、接続ディレクトリ・サーバーのLDAP検索制限を超えないことを確認してください。そうでない場合、同期時にエラーが発生して一部の変更が処理されないことがあります。

注意:
「デルタ・サイズの検索」パラメータを変更する際、特に2000を超える値を指定する場合は、必ずデプロイを十分に分析し、テストしてください。

- エラーをスキップして次の変更に同期化: 同期中に変更を処理するときにOracle Directory Integration Platformでエラーを処理する方法が決まります。デフォルトでは、「エラーをスキップして次の変更に同期化」パラメータにfalseの値が割り当てられ、Oracle Directory Integration Platformはエラーが解決されるまで変更の処理を続行します。「エラーをスキップして次の変更に同期化」にtrueの値を指定すると、Oracle Directory Integration Platformはエラーの原因となる変更をスキップします。すべての障害が、$ORACLE_HOME/ldap/odi/log/profile_name.aud監査ログに記録されます。「エラーをスキップして次の変更に同期化」をtrueに設定する場合は、必ず定期的に監査ログで障害を確認してください。

- 検索件数の更新: 同期プロセス中に接続ディレクトリで実行する反復の最大回数を指定します。同期プロセスは、指定された回数の検索が実行されると停止し、次にスケジュールされた間隔に再開します。

- フィルタ時間の短縮: eDirectoryおよびOpenLDAPにのみ適用され、Oracleバックエンド・ディレクトリを実行しているコンピュータとNovell eDirectoryを実行しているコンピュータの間の時間差を指定します。Novell eDirectoryのコンピュータ上の時間がOracleバックエンド・ディレクトリのコンピュータの時間より早い場合、Oracleバックエンド・ディレクトリとNovell eDirectory間の同期が正しく機能しないため、このパラメータが必要になります。このパラメータには、2つのコンピュータ間の時間差と等しい値を秒単位で指定します。デフォルト値は0です。

- ライター: プロファイルにより同期のために使用されるライターを指定します。これは読取り専用の値で、情報提供目的でのみ使用されます。

- リーダー: プロファイルにより同期のために使用されるリーダーを指定します。これは読取り専用の値で、情報提供目的でのみ使用されます。

- 調整: このパラメータは変更しないでください。プロファイルにより調整処理のために使用されるクラスを指定します。このパラメータは、eDirectoryおよびOpenLDAPにのみ適用されます。これは読取り専用の値で、情報提供目的でのみ使用されます。

7.1.2 同期プロファイルの編集

Oracle Enterprise Manager Fusion Middleware Controlを使用して既存の同期プロファイルを編集するには、次のようにします。

1. Webブラウザを開き、使用している環境のOracle Enterprise Manager Fusion Middleware ControlのURLを入力します。Oracle Enterprise Manager Fusion Middleware ControlのURLの形式は、https://host:port/emです。

2. Oracle Enterprise Manager Fusion Middleware Controlにログインします。

3. 左のナビゲーション・パネルで、「Identity and Access」エントリをクリックするか展開し、続いて、編集するプロファイルを含むDIPコンポーネントを選択します。

4. 「DIPサーバー」メニューをクリックして「管理」を選択し、次に「同期プロファイル」をクリックします。「同期プロファイルの管理」が表示され、既存のプロファイルのリストが表示されます。

5. 編集するプロファイルをリストから選択して「編集」をクリックします。編集するプロファイルの「同期プロファイルの編集」画面が表示されます。

6. プロファイル設定を編集するには、「同期プロファイルの作成」の、各プロファイル・パラメータが記述されている「一般」、「マッピング」、「フィルタリング」および「拡張」の各項を参照してください。

注意:
「一般」タブの設定を編集してから、他のタブの設定を編集する必要があります。

7. 「同期プロファイルの編集」ページの「OK」をクリックして、更新したプロファイルを保存します。

7.1.3 同期プロファイルの有効化と無効化

Oracle Enterprise Manager Fusion Middleware Controlを使用して既存の同期プロファイルを有効化または無効化するには、次のようにします。

1. Webブラウザを開き、使用している環境のOracle Enterprise Manager Fusion Middleware ControlのURLを入力します。Oracle Enterprise Manager Fusion Middleware ControlのURLの形式は、https://host:port/emです。

2. Oracle Enterprise Manager Fusion Middleware Controlにログインします。

3. 左のナビゲーション・パネルで、「Identity and Access」エントリをクリックするか展開し、続いて、有効化または無効化するプロファイルを含むDIPコンポーネントを選択します。

4. 「DIPサーバー」メニューをクリックして「管理」を選択し、次に「同期プロファイル」をクリックします。「同期プロファイルの管理」が表示され、既存のプロファイルのリストが表示されます。

5. 既存のプロファイルのリストから、有効化または無効化するプロファイルを選択します。
プロファイルを有効化するには、「プロファイルの有効化」ボタンをクリックします。

プロファイルを無効化するには、「プロファイルの無効化」ボタンをクリックします。

7.1.4 同期プロファイルの削除

Oracleバックエンド・ディレクトリから直接同期プロファイルを削除しないでください。かわりに、Oracle Enterprise Manager Fusion Middleware Controlを使用して同期プロファイルを削除します。Oracleバックエンド・ディレクトリを使用して同期プロファイルを削除した場合、このプロファイルを再作成しようとすると、PROFILE_ALREADY_REGISTEREDメッセージが表示されます。

Oracle Enterprise Manager Fusion Middleware Controlを使用して同期プロファイルを削除するには、次の手順を実行します。

1. Webブラウザを開き、使用している環境のOracle Enterprise Manager Fusion Middleware ControlのURLを入力します。Oracle Enterprise Manager Fusion Middleware ControlのURLの形式は、https://host:port/emです。

2. Oracle Enterprise Manager Fusion Middleware Controlにログインします。

3. 左のナビゲーション・パネルで、「Identity and Access」エントリをクリックするか展開し、続いて、削除するプロファイルを含むDIPコンポーネントを選択します。

4. 「DIPサーバー」メニューをクリックして「管理」を選択し、次に「同期プロファイル」をクリックします。「同期プロファイルの管理」が表示されます。

5. 同期サーバーの管理ページで、削除するプロファイルを選択して「削除」をクリックします。コネクタ・プロファイルの削除の確認を要求するウィンドウが表示されます。

6. 「はい」をクリックしてプロファイルの削除を確認します。

7.1.5 DIPテスターを使用した同期プロファイルのトラブルシューティング

DIP同期プロファイル・テスター(DIPテスター)は、同期操作を実行し、テスト中に生成された詳細なログ・メッセージを返すことができるユーティリティです。DIPテスターを使用して同期プロファイルをテストし、プロファイル構成とマッピング・ルールがディレクトリ・データで予想どおりに動作していることを確認します。

DIPテスターは、LDAPからLDAPへのディレクトリベースの同期プロファイルでのみ動作します。DB/カスタムおよび他の非ディレクトリベースのプロファイルでは動作しません。

DIPテスターは、Enterprise Managerユーザー・インタフェース、またはWLSTを使用してコマンドラインから実行できます。

7.1.5.1 Enterprise Managerユーザー・インタフェースからのDIPテスターの実行

DIPテスターは、無効状態に設定されている同期プロファイルでのみ使用できます。

注意:
プロファイルを無効にすると、無効なステータスが有効になるまでに遅延が発生します。構成されたリフレッシュ間隔が経過した後にのみ(2分以上の間隔)、プロファイルは無効化されます。

プロファイルを無効化するには、ツールバーの「プロファイルの無効化」ボタンをクリックします。

Enterprise ManagerでDIPテスターを開くには、次のようにします。

1. 「DIPサーバー」メニューで「管理」→「同期プロファイル」を選択します。
「同期プロファイルの管理」ページが開きます。

2. テストするプロファイルの行をクリックして、プロファイルを選択します。

3. 「DIPテスター」の右側にある矢印をクリックして、次のメニューから選択します。

- プロファイルのダンプ - ポップアップ・ウィンドウを開いて、選択された同期プロファイルの詳細を表示し、プロファイルのコピーをサポート・チケットに追加できるようにします。

- テスターの起動 - DIPテスターを開きます。

テスト・モード

この項では、DIPテスター・ウィザードの3つの画面のうち、最初の画面である「テスト・モード」画面について説明します。

DIPテスターの操作モード - DIPテスターは、基本および拡張の2つのモードで実行できます。

- DIPテスターの事前構成済の設定を使用して同期タスクを迅速に実行するには、基本モードを選択します。同期タスクが実行され、テストからの同期ステータスおよびログ・メッセージがEnterprise Managerで返されます。
基本モードは、失敗した同期を迅速に再試行する必要がある場合に役立ちます。失敗した最後の変更を再試行するには、プロファイルを編集して「エラーをスキップして次の変更に同期化」をfalse、「検索件数の更新」を1、searchDeltaSizeを1にそれぞれ設定します。

注意:
デフォルト構成では、「エラーをスキップして次の変更に同期化」はfalseに設定されています。したがって、DIPテスターは失敗した操作をスキップしません。操作が失敗した場合にDIPテスターが次の操作に進むようにするには、「同期プロファイルの管理」ページを開いて「編集」をクリックし、「拡張」タブで「エラーをスキップして次の変更に同期化」をtrueに設定します。

- テスト・データのソースを指定して構成するには、詳細モードを選択します。テスト・データを指定するには、3つの方法があります。

- 変更番号を入力して、特定の変更の同期化をテストします。変更番号は、Active Directory、Oracle Internet Directory、Oracle Unified Directory、Oracle Directory Server Enterprise Edition、iPlanetおよびTivoliディレクトリでサポートされます。

- SourceDNを入力して、特定の変更の同期化をテストします。SourceDNは、eDirectoryおよびOpenLDAPディレクトリでサポートされています。

- LDIFデータを入力します。LDIFデータは、すべてのディレクトリ・ソースと互換性があります。

注意:
DIPテスターは、OpenLDAPまたはeDirectory LDAPサーバーの削除操作は処理できません。
他のLDAPサーバーでユーザーまたはグループの削除操作を処理する場合、LDIFの削除ファイルにはdn属性およびchangetype属性を含める必要があります。

次に例を示します。

dn: cn=userToDelete,cn=users,dc=comain
changetype: delete

選択したプロファイル情報 - テストする同期プロファイルに関する読取り専用の情報を含みます。この情報を確認して、画面の右上の角にある「次へ」をクリックし、ウィザードの手順2(「テスト・パラメータ」)に進みます。

表7-1 同期プロファイルのプロパティ、「基本プロパティ」

プロパティ

説明

プロファイル名

テストするプロファイルの名前。

同期化モード

同期の方向を示します。

「インポート」では、接続ディレクトリからOracleバックエンド・ディレクトリに変更が伝播されます。「エクスポート」では、Oracleバックエンド・ディレクトリから接続ディレクトリに変更が伝播されます。

プロファイルのステータス

チェック・ボックスが空の場合は、プロファイルが無効であることを示します。

表7-2 同期プロファイルのプロパティ、「ソースの詳細」または「宛先の詳細」

プロパティ

説明

タイプ

インポート・テストのレコードを供給するディレクトリ・タイプ(OpenLDAP、Microsoft Active Directory、Tivoli Directory Serverなど)。

ホスト

同期テストのソース・コンテナをホストするコンピュータの名前。

ポート

同期化ジョブの接続用に構成されたポート番号。

SSL設定

チェック・ボックスが空の場合は、SSLが無効であることを示します。

ユーザー名

プロファイルがソース・ディレクトリへの認証に使用するユーザー・アカウント。

表7-3 同期プロファイルのプロパティ、「拡張」

プロパティ

説明

最終変更番号

同期が実行された、変更ログ内の最新の変更番号を特定します。

エラーをスキップして次の変更に同期化

trueの場合は、エラーが発生した場合にプロファイルが同期ジョブを続行することを指定します。falseの場合、同期ジョブは中断されます。

この値を変更するには、同期プロファイルを編集して、「拡張」タブを選択し、「追加構成パラメータ」セクションでパラメータを編集します。

検索件数の更新

同期プロセス中に接続ディレクトリで実行する反復の最大回数を指定します。同期プロセスは、指定された回数の検索が実行されると停止します。

この値を変更するには、同期プロファイルを編集して、「拡張」タブを選択し、「追加構成パラメータ」セクションでパラメータを編集します。

テスト・パラメータ

この項では、DIPテスター・ウィザードの3つの画面のうち、2番目の画面である「テスト・パラメータ」画面について説明します。

DIPテスターを詳細モードで実行している場合は、テスト・データのソースを選択して構成します。特定の変更の同期化をテストするには、変更番号またはSourceDNを入力します。それ以外の場合は、LDIF(Lightweight Directory Interchange Format)文を使用して、同期指示を入力します。

DIPテスターを基本モードで実行している場合、オプションは事前構成済です。画面の右上の角にある「次へ」をクリックし、ウィザードの手順3(「オプションとテスト出力の確認)に進みます。

テスト・データの表示(オプション)。この参照機能は、DIPテスターを終了せずに変更ログ・データ、ソース・ディレクトリ・データおよび宛先ディレクトリ・データを表示できるように提供されています。DIPテスター内部のテスト・データを表示するには、ドロップダウン・メニューから次のオプションの1つを選択します。

- 変更ログ・エントリの表示 - 変更ログをサポートするディレクトリの場合は、変更ログを指定して「変更番号」ボックスに番号を入力します。変更番号はソースから取得します。

注意:
失敗した変更番号は、自動的に判別されません。かわりに、失敗した変更番号については監査ログを参照してください。

- ソース・ディレクトリ・エントリの表示 - テンプレートとして使用できる既存のソース・ディレクトリ・エントリを表示する場合に選択します。uSNChanged属性など、Active Directoryのソース・データを表示するにはこのオプションを使用する必要があります。
ドロップダウン・メニューの「ソース・コンテナ」の値は、プロファイルで設定されているドメイン・マッピング・ルールを使用して取得されます。

「ソースRDN」ボックスに値を入力します。

- 宛先ディレクトリ・エントリの表示 - テンプレートとして使用できる既存の宛先ディレクトリ・エントリを表示する場合に選択します。
ドロップダウン・メニューの「宛先コンテナ」の値は、プロファイルで設定されているドメイン・マッピング・ルールを使用して取得されます。

「宛先RDN」ボックスに値を入力します。

「テスト・データソース」メニューの「テスト・オプション」で、「変更番号」、「ソースDN」または「LDIFデータ」を選択し、テストする変更番号、SourceDNまたはLDIFコマンドを入力します。「次へ」をクリックし、ウィザードの手順3(「オプションとテスト出力の確認)に進みます。

オプションとテスト出力の確認

この項では、DIPテスター・ウィザードの3つの画面のうち、3番目の画面である「オプションとテスト出力の確認」画面について説明します。

注意:
同期テストはシミュレーションではありません。テストを開始すると、実際の同期操作が実行されます。詳細モードでDIPテスターを使用する場合は、注意して開始してください。

DIPテスターを詳細モードで実行している場合は、「テスト・オプションの確認」セクションを使用して、前の画面で入力した変更番号またはLDIFデータを確認します。DIPテスターを基本モードで実行している場合、このセクションでは事前構成済の設定が使用されます。

- 「テスト」をクリックすると、同期化テストが開始されます。

- 「プロファイルのダンプ」をクリックすると、選択した同期プロファイルの詳細がポップアップ・ウィンドウに書き込まれます。

注意:
ソース・ディレクトリ・エントリと宛先ディレクトリ・エントリの同期がすでに取れている場合、DIPテスターは同期操作が実行されなかったことを報告しません。かわりに、DIPテスターは「テストにパスしました」と報告しますが、これは両方のディレクトリのエントリおよび属性データが一致するためです。

「テスト出力」セクションには次の情報が表示されます。

- 結果 - 「テストにパスしました」または「テストが失敗しました」のいずれかです。

注意:
基本モードでDIPテスターを使用している場合、実際にはエラーが報告された場合でも、「テスト出力」セクションで「テストにパスしました」という結果が報告されることがあります。このため、「DIPテスターのログ・メッセージ」セクションを常にチェックして、このセクションでエラーが報告されていないことを確認する必要があります。

- ソース・エントリ詳細/宛先エントリ詳細 - テストにパスした場合、ソース・ディレクトリおよび宛先ディレクトリの実際のディレクトリ・データのテスト結果を表示します。

- エラー・メッセージ - テストが失敗した場合、テスト失敗の理由を報告するメッセージを表示します。

- DIPテスターのログ・メッセージ - 同期テスト中に生成された詳細なメッセージ。

7.1.5.2 WLSTコマンドライン・インタフェースからのDIPテスターの実行

コマンドラインからDIPテスターを実行するには、manageSyncProfilesコマンドを使用してtestProfileオプションを指定します。

操作モード

DIPテスター(testProfile)は、基本モードまたは詳細モードで実行できます。

- DIPテスターの事前構成済の設定を使用して同期タスクを迅速に実行するには、基本モードを使用します。同期タスクが実行され、テストからの同期ステータスおよびログ・メッセージが標準出力に返されます。
基本モードは、失敗した同期を迅速に再試行する必要がある場合に役立ちます。失敗した最後の変更を再試行するには、「エラーをスキップして次の変更に同期化」をfalseに設定し、「検索件数の更新」を1に設定します。

基本モードでDIPテスターを実行する場合は、-changenumberオプション、-sourcednオプションまたは-ldiffileオプションを含めないでください。

注意:
デフォルト構成では、「エラーをスキップして次の変更に同期化」はfalseに設定されています。したがって、DIPテスターは失敗した操作をスキップしません。操作が失敗した場合にDIPテスターが次の操作に進むようにするには、「エラーをスキップして次の変更に同期化」をtrueに設定します。

- テスト・データのソースを指定して構成する必要がある場合は、詳細モードを使用します。変更番号を入力して変更ログの特定の変更を実行するか、SourceDNを入力してeDirectoryまたはOpen LDAPディレクトリの特定の変更の同期をテストする、またはLDIFデータを入力することができます。
詳細モードでDIPテスターを実行する場合は、DIPテスターの実行時に-changenumberオプション、-sourcednオプションまたは-ldiffileオプションを含めます。

注意:
DIPテスターは、OpenLDAPまたはeDirectory LDAPサーバーの削除操作は処理できません。
他のLDAPサーバーでユーザーまたはグループの削除操作を処理する場合、LDIFの削除ファイルにはdn属性およびchangetype属性を含める必要があります。

次に例を示します。

dn: cn=userToDelete,cn=users,dc=comain
changetype: delete

詳細は、「DIPテスターのコマンドラインの例」を参照してください。

注意:
ソース・ディレクトリ・エントリと宛先ディレクトリ・エントリの同期がすでに取れている場合、DIPテスターは同期操作が実行されなかったことを報告しません。かわりに、DIPテスターは「テストにパスしました」と報告しますが、これは両方のディレクトリのエントリおよび属性データが一致するためです。

testProfileの構文および引数

manageSyncProfiles testProfile -h hostName -p port -D wlsuser -pf profileName [-changenumber number | -ldiffile file | -sourcedn sourcedn] [-ssl -keyStorePath path -keyStoreType type] [-help]

-h | -host

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Server。

-p | -port

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverのリスニング・ポート。

- D | -wlsuser

サーバーに接続するためのログインID。

-pf | -profile

プロファイル名。

-changenumber

Oracle Internet Directory、iPlanet、TivoliおよびActive Directoryなどのディレクトリから宛先に同期化される必要がある変更を表す変更ログ番号。

-sourcedn

eDirectoryおよびOpenLDAPなどのディレクトリから宛先に同期化される必要があるソース・エントリの識別名。

-ldiffile

ソースに適用されてから宛先に同期化されるLDIFデータを含むファイル。

- ssl

SSLを使用してコマンドを実行します。

- keyStorePath

トラスト・キーストアの場所。

- keyStoreType

キーストア・タイプ。値を指定しない場合は、デフォルトでjksに設定されます。

- help

testProfileコマンドのヘルプを提供します。

注意:
パスワードは、コマンド・パラメータとして渡すことができません。かわりに、必要に応じてシステムからパスワードの入力を要求されます。

DIPテスターのコマンドラインの例

DIPテスター基本モード

manageSyncProfiles testProfile -h <hostName> -p <port> -D <wlsuser> -pf <profileName>

DIPテスター詳細モード、変更番号を指定

manageSyncProfiles testProfile -h <hostName> -p <port> -D <wlsuser> -pf <profileName> [-changenumber <number>]

DIPテスター詳細モード、SourceDNを指定

manageSyncProfiles testProfile -h <hostName> -p <port> -D <wlsuser> -pf <profileName> [-sourcedn <sourcedn>]

DIPテスター詳細モード、LDIFファイルを指定

manageSyncProfiles testProfile -h <hostName> -p <port> -D <wlsuser> -pf <profileName> [-ldiffile <file>]

7.2 manageSyncProfilesを使用した同期プロファイルの管理

コマンドラインから同期プロファイルを作成および管理するには、manageSyncProfilesユーティリティを使用します。manageSyncProfilesユーティリティはORACLE_HOME/binディレクトリにあります。

注意:

- 最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。

- Oracle Directory Integration Platformコマンドのいずれかを実行するには、あらかじめWLS_HOME環境変数とORACLE_HOME環境変数を設定しておく必要があります。

- Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

このトピックには、次の項があります。

- manageSyncProfilesの構文

- manageSyncProfilesの属性

- manageSyncProfilesのタスクおよび例

7.2.1 manageSyncProfilesの構文

manageSyncProfiles

manageSyncProfiles {activate | deactivate | copy | deregister | get | isexists |
update | testProfile | validateProfile | validateMapRules | register |
updatechgnum | associateProfile | dissociateProfile | getAllAssociatedProfiles |
getAssociatedProfile | list } -h HOST -p PORT -D wlsuser [-ssl -keystorePath
PATH_TO_KEYSTORE -keystoreType TYPE] [-profile] [-newProfile]
[-associateProfile][-file] [-params 'prop1 val1 prop2 val2 ...']
[-conDirHost] [-conDirPort] [-conDirBindDn] [-mode] [-conDirType] [-conDirSSL]
[-profileStatus] [-help]

7.2.2 manageSyncProfilesの引数

操作

activate

-profileで指定されたプロファイルの状態をENABLEに変更します。

deactivate

-profileで指定されたプロファイルの状態をDISABLEに変更します。

copy

既存のプロファイルprofileをプロファイルnewProfileにコピーします。

deregister

既存のプロファイルをOracleバックエンド・ディレクトリから削除します。

get

プロファイルの詳細をOracleバックエンド・ディレクトリから取得します。

isexists

プロファイルprofileがOracleバックエンド・ディレクトリに存在するかどうかチェックします。

update

コマンド引数で指定されたプロファイル・プロパティを変更します。

testProfile

無効化されたプロファイルprofileの状態をTESTに変更して、プロファイルのテストをスケジュールし、プロファイルによって同期が正常に実行されることを確認します。testProfile操作でのmanageSyncProfilesコマンドの実行後、テストの結果は次のログ・ファイルで参照できますが、WL_DOMAIN_HOMEはOracle WebLogic Serverドメイン・ホームを表し、ORACLE_WEBLOGIC_MANAGEDSERVER_NAMEはOracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverの名前を表します。

WL_DOMAIN_HOME/servers/ORACLE_WEBLOGIC_MANAGED_SERVER_NAME/logs/ORACLE_WEBLOGIC_MANAGED_SERVER_NAME.log

注意:
testProfile操作は、ENABLE状態のプロファイルのテストをスケジュールすることはできません。

validateProfile

指定されたプロファイルの値の構文が正確かどうか検証します。

validateMapRules

指定されたマップ・ルールを検証します。

register

Oracleバックエンド・ディレクトリに新しいプロファイルを作成します。

updatechgnum

プロファイル内で前回適用された変更番号を最新の番号に更新します。

associateProfile

associateProfileNameをprofileNameに関連付けます。これは、ディレクトリ間で双方向の同期を行う場合に役立ちます。プロファイルを、別のプロファイルの関連プロファイルに指定することで、情報の逆流を防止できます。

dissociateProfile

profileNameに関連付けられているプロファイルを切り離します。

getAllAssociatedProfiles

orclodipassociatedprofile属性が-pfを使用して指定されたプロファイルに設定されている、すべてのプロファイルのリストを返します。たとえば、getAllAssociatedProfilesを-pf testとともに使用した場合、getAllAssociatedProfilesは、orclodipassociatedprofile属性がtestに設定されているすべてのプロファイルのリストを返します。

これは、プロファイルを削除する場合に役立ちます。これにより、プロファイルを削除する前に切り離す必要があるすべての関連付けのリストを取得できます。

getAssociatedProfile

-pfを使用して指定されたプロファイルの、orclodipassociatedprofile属性の値を返します。

list

Oracleバックエンド・ディレクトリに登録されているすべてのプロファイルを表示します。

オプション

-h | host

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverホスト。

-p | -port

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverのリスニング・ポート。

-D | wlsuser

Oracle WebLogic ServerのログインID。

注意:
Oracle WebLogic Serverのログイン・パスワードを要求されます。パスワードをコマンドライン引数として指定することはできません。最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。スクリプトからmanageSyncProfilesを実行する必要がある場合、Oracle WebLogic Serverパスワードを含むファイルから、入力をリダイレクトできます。ファイル権限を使用してファイルを保護し、不要になったら権限を削除します。manageSyncProfilesに複数のパスワードを入力する必要がある場合、接続ディレクトリ・バインドDNパスワード、Oracle WebLogic Serverログイン・パスワードの順で、ファイル内の別々の行に記載します。

-ssl

SSLモードでコマンドを実行します。

注意:
Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

-keystorePath

キーストアへのフルパス。

-keystoreType

-keystorePathで識別されるキーストアのタイプ。たとえば、-keystorePath jksまたは-keystorePath PKCS12などです。

-pf | -profile

操作の実行時に使用する同期プロファイルの名前。

-newpf | -newProfile

profileのコピーとなる新規プロファイルの名前。

-assopf

profileと関連付けられるプロファイルの名前。

-f | -file

プロパティが含まれているプロファイル・プロパティ・ファイルのフルパスおよびファイル名。

関連項目:
プロファイルのプロパティ・ファイルの例の詳細は、付録B「同期プロファイルのプロパティ・ファイルの例」を参照してください。

-params

prop1 val1 prop2 val2 ...(propはプロファイル・プロパティの名前、valはそのプロパティの新規の値)の形式で値を指定します。このキーワードは、プロファイルの変更のみに使用されます。必要な数のキー値を指定できます。prop1、prop2...で指定できるプロファイル・プロパティの名前は、付録B「同期プロファイルのプロパティ・ファイルの例」を参照してください。

-conDirHost

接続ディレクトリ・サーバーが稼働しているホスト。

-conDirPort

接続ディレクトリ・サーバーがリスニングするポート。

-conDirBindDn

接続ディレクトリ・サーバーのバインドDN。

注意:
接続ディレクトリのバインドDNパスワードを要求されます。パスワードをコマンドライン引数として指定することはできません。最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。スクリプトからmanageSyncProfilesを実行する必要がある場合、接続ディレクトリ・バインドDNパスワードを含むファイルから、入力をリダイレクトできます。ファイル権限を使用してファイルを保護し、不要になったら権限を削除します。manageSyncProfilesに複数のパスワードを入力する必要がある場合、接続ディレクトリ・バインドDNパスワード、Oracle WebLogic Serverログイン・パスワードの順で、ファイル内の別々の行に記載します。

-mode

使用する同期モードのマップ・ルール(importまたはexport)。

-conDirType

接続ディレクトリのタイプ。Oracle Internet DirectoryをOracleバックエンド・ディレクトリとして使用する場合、サポートされる値はActiveDirectory、EDirectory、iPlanet、OpenLDAP、ADAM、Tivoli、OIDおよびExchangeServer2003です。Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionをバックエンド・ディレクトリとして使用している場合、サポートされる値はIPLANETのみです。

-conDirSSL

接続ディレクトリ・サーバーへの接続に使用するSSLモードの値。

-prfSt | -profileStatus

プロファイルのステータスを表示します。list操作でのみ使用されます。

-help

コマンドの使用方法のヘルプを提供します。

7.2.3 manageSyncProfilesのタスクと使用例

manageSyncProfiles register -h myhost.mycompany.com -p 7005 -D login_ID \
-f /opt/ldap/odip/iPlImport.profile

manageSyncProfiles deregister -h myhost.mycompany.com -p 7005 \
-D login_ID -pf myProfile

manageSyncProfiles updatechgnum -h myhost.mycompany.com -p 7005 \
-D login_ID -pf myProfile

manageSyncProfiles activate -h myhost.mycompany.com -p 7005 \
-D login_ID -pf myProfile

manageSyncProfiles deactivate -h myhost.mycompany.com -p 7005 \
-D login_ID -pf myProfile

manageSyncProfiles get -h myhost.mycompany.com -p 7005 \
-D login_ID -pf myProfile

manageSyncProfiles testProfile -h myhost.mycompany.com -p 7005 \
-D login_ID -pf myProfile

manageSyncProfiles associateprofile -h myhost.mycompany.com -p 7005 \
-D login_ID -pf myProfile -assopf myProfile1

manageSyncProfiles dissociateprofile -h myhost.mycompany.com -p 7005 \
-D login_ID -pf myProfile

manageSyncProfiles getAllAssociatedProfiles -h myhost.mycompany.com -p 7005 \
-D login_ID -pf myProfile

manageSyncProfiles getAssociatedProfile -h myhost.mycompany.com -p 7005 \
-D login_ID -pf myProfile

manageSyncProfiles update -h myhost.mycompany.com -p 7005 \
-D login_ID -pf myProfile -f /opt/ldap/odip/iPlImport.profile

manageSyncProfiles validateMapRules -h myhost.mycompany.com -p 7005 \
-D login_ID -f /opt/ldap/odip/iPlImport.map -conDirHost server.example.com \
-conDirPort 8000 -conDirBindDn administrator@idm2003.net -mode IMPORT \
-conDirType IPLANET

manageSyncProfiles isexists -h myhost.mycompany.com -p 7005 -D login_ID \
-pf myProfile

manageSyncProfiles copy -h myhost.mycompany.com -p 7005 -D login_ID \
-pf myProfile -newpf yourProfile

manageSyncProfiles list -h myhost.mycompany.com -p 7005 -D login_ID -profileStatus

7.3同期ステータス属性の変更

同期プロセス中、サーバーはorcllastappliedchangenumber同期ステータス属性を常に更新します。同期ステータス属性は変更しないことをお薦めします。しかし、orcllastappliedchangenumber属性を更新する必要がある場合もあります。たとえば、なんらかの変更を再適用したり、特定のエントリの同期をスキップする必要がある場合などです。

Oracle Enterprise Manager Fusion Middleware Controlを使用するか、manageSyncProfilesコマンドとupdatechgnum引数を使用することによって、orcllastappliedchangenumber属性を変更できます。

Oracle Enterprise Manager Fusion Middleware Controlを使用してorcllastappliedchangenumber属性を変更するには、「同期プロファイルの編集」の手順を実行し、「拡張」タブで「最終変更番号」を設定します。

manageSyncProfilesコマンドとupdatechgnum引数を使用してorcllastappliedchangenumber属性を変更するには、「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

7.4 同期プロファイルでのNULL値の設定

プロファイルを手動で編集するときにプロファイルのプロパティ値をNULL(つまり、空白または空)に設定するには、NULL文字列(''など)を使用します。プロパティの行でのコメント(または、ハッシュ文字#)の使用は、その行が読み込まれないことのみを示し、プロパティの値はNULLに設定されません。

8 Oracle Directory Integration Platformにおけるディレクトリのブートストラップ

この章では、ディレクトリのブートストラップ(接続ディレクトリとOracleバックエンド・ディレクトリ間の初期のデータ移行)について説明します。同期プロセスでは接続ディレクトリとOracleバックエンド・ディレクトリ間のデータの移行も処理されるため、ディレクトリのブートストラップを実行する必要はありません。ただし、初期のデータ移行を同期プロセスに依存すると、特にデータの量が多い場合など、時間がかかる可能性があります。このため、初めてOracle Directory Integration Platformをデプロイする場合には、ディレクトリのブートストラップを実行します。

この章は、次の項目を含みます。

- syncProfileBootstrapを使用したディレクトリのブートストラップ

- SSLモードでのブートストラップ

関連項目:
バックエンド・ディレクトリとしてOracle Internet Directoryを使用する場合は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の他のディレクトリおよびデータ・リポジトリからのデータの移行に関する章を参照してください。

8.1 syncProfileBootstrapを使用したディレクトリのブートストラップ

接続ディレクトリとOracleバックエンド・ディレクトリの間でブートストラップするには、ORACLE_HOME/binディレクトリにあるsyncProfileBootstrapユーティリティを使用します。

注意:

- syncProfileBootstrapコマンドを使用することで、パラメータ・ファイルまたは完全に構成された統合プロファイルのいずれかを使用してブートストラップできます。このトピックでは、両方の方法について説明します。

- 接続されているOracle DatabaseとOracleバックエンド・ディレクトリの間でブートストラップを行うには、エクスポート・プロファイルdbexport.cfgを構成し、そのプロファイルを使用してブートストラップします。詳細は、第9.4.1項「追加構成情報ファイルの構成」を参照してください。

- 最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。

- Oracle Directory Integration Platformコマンドのいずれかを実行するには、あらかじめWLS_HOME環境変数とORACLE_HOME環境変数を設定しておく必要があります。

- Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

このトピックには、次の項があります。

- syncProfileBootstrapの構文

- syncProfileBootstrapの引数

- syncProfileBootstrapのタスクおよび例

- ブートストラップの推奨方法

- パラメータ・ファイルを使用したブートストラップ

- デフォルト統合プロファイルを使用した直接ブートストラップ

8.1.1 syncProfileBootstrapの構文

syncProfileBootstrap

syncProfileBootstrap -h HOST -p PORT -D wlsuser {-file FILENAME |-profile
-PROFILE_NAME} [-ssl -keystorePath PATH_TO_KEYSTORE -keystoreType TYPE]
[-loadParallelism INTEGER] [-loadRetry INTEGER][-help]

8.1.2 syncProfileBootstrapの引数

-h | -host

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Serverホスト。

-p | -port

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverのリスニング・ポート。

-D | wlsuser

Oracle WebLogic ServerのログインID。

注意:
Oracle WebLogic Serverのログイン・パスワードを要求されます。パスワードをコマンドライン引数として指定することはできません。最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。スクリプトからsyncProfileBootstrapを実行する必要がある場合、Oracle WebLogic Serverパスワードを含むファイルから、入力をリダイレクトできます。ファイル権限を使用してファイルを保護し、不要になったら権限を削除します。

-f | -file

ブートストラップ・プロパティ・ファイル。

-pf | -profile

操作の実行時に使用する同期プロファイルの名前。

-ssl

SSLモードでコマンドを実行します。

注意:
Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

-keystorePath

キーストアへのフルパス。

-keystoreType

-keystorePathで識別されるキーストアのタイプ。たとえば、-keystorePath jksまたは-keystorePath PKCS12などです。

-lp | -loadParallelism

Oracleバックエンド・ディレクトリへのロードが、複数のスレッドを使用してパラレルで実行されることを示します。たとえば、-loadparallelism 5は、5つのスレッドが作成され、各スレッドでOracleバックエンド・ディレクトリへのエントリのロードがパラレルで実行されることを意味します。

-lr | -loadRetry

宛先へのロードに失敗した場合に、そのエントリを不正なエントリとしてマークするまでに実行する再試行の回数。

-help

コマンドの使用方法のヘルプを提供します。

8.1.3 syncProfileBootstrapのタスクと使用例

manageSyncProfileBootstrap -h myhost.mycompany.com -p 7005 -D login_ID \
-pf myProfile -lp 5

manageSyncProfileBootstrap -h myhost.mycompany.com -p 7005 -D login_ID \
-f /opt/ldap/odip/bootstrap.properties -lr 3

8.1.4 ブートストラップの推奨方法

データのロード元のソース・ディレクトリに多数のエントリが含まれる場合は、LDIFファイルを使用すると、最も迅速で簡単にターゲット・ディレクトリをブートストラップできます。この場合、ソース・ディレクトリとターゲット・ディレクトリ間での読取りおよび書込み時に接続エラーが発生する可能性があるため、統合プロファイルを使用したブートストラップはお薦めしません。特殊文字は、統合プロファイルを使用したブートストラップでは適切にエスケープされないことがあるため、識別名に特殊文字が含まれる場合にもLDIFファイルの使用をお薦めします。

8.1.5 パラメータ・ファイルを使用したブートストラップ

このファイルのパラメータは、次のものを指定します。

- ソースおよび宛先のインタフェース・タイプ(LDIFおよびLDAP)

- 接続詳細および資格証明(LDAPの場合のみ有効)

- マッピング・ルール

ディレクトリ依存ツールを使用してソース・ディレクトリを読み取ることで、LDIFファイルによるブートストラップを行えます。

インストール時に、次のサンプル・パラメータ・ファイルが$ORACLE_HOME/ldap/odi/conf/ディレクトリにコピーされます。

- Ldp2ldp.properties

- Ldp2ldf.properties

- Ldf2ldp.properties

- Ldf2ldf.properties

これらのファイルには、ブートストラップにおける各パラメータの機能が記述されています。ブートストラップ用にツールを実行する場合は、ORACLE_HOMEとNLS_LANGが正しく設定されていることを確認してください。

ブートストラップは、中間ファイルの有無にかかわらず、サービス間で実行できます。ただし、大きいディレクトリの場合は、中間LDIFファイルが必要です。

8.1.5.1 LDIFファイルを使用しないブートストラップ

この方法は、エントリが次の状態の小さいディレクトリに使用することをお薦めします。

- 比較的少数

- フラット構造

- 非相互依存(グループ・エントリの作成はユーザー・メンバー・エントリの存在に依存する場合などとは異なり、この場合、エントリの作成は別のエントリの存在には依存しない)

この方法を使用する手順は、次のとおりです。

1. 適切なマッピング・ルールを持つマッピング・ファイルを作成します。マッピング・ファイルは、ブートストラップ・ファイル内のプロパティの1つです。同期用に定義されたマッピング・ルールと一致していることを確認してください。

2. ソースをLDAP、宛先タイプをLDIFと指定した必須の詳細情報を持つパラメータ・ファイルを作成します。サンプル・パラメータ・ファイルldp2ldf.propertiesは、$ORACLE_HOME/ldap/odi/samplesにあります。バイナリ属性が、SrcAttrTypeフィールドでバイナリとして指定されていることを確認します。

3. 次のように指定されている構成ファイルとともに、syncProfileBootstrapコマンドを実行します。

- ソースがLDAPディレクトリと指定されている。

- 宛先タイプがLDIFと指定されている。

4. NAME_OF_MANAGED_SERVER-diagnostic.logファイルでエラーがないかどうかを確認します。このファイルは、次の場所にあります。

MW_HOME/user_projects/domains/DOMAIN_NAME/servers/NAME_OF_MANAGED_SERVER/logs/NAME_OF_MANAGED_SERVER-diagnostic.log

5. bulkload.shコマンドまたはldapaddコマンドを使用して、Oracleバックエンド・ディレクトリにデータをアップロードします。

6. 同期を継続するには、次のようにmanageSyncProfilesコマンドのupdatechgnum操作を使用して最終変更番号を更新します。

manageSyncProfiles updatechgnum -h HOST -p PORT -D wlsuser \
-profile my_Import_Profile

8.1.5.2 LDIFファイルを使用したブートストラップ

この項では、LDIFファイルを使用してディレクトリをブートストラップする次の2つの方法について説明します。

- ディレクトリ依存ツールを使用してソース・ディレクトリを読み取ることによってLDIFファイルからブートストラップする方法

- syncProfileBootstrapコマンドを使用してバックエンド・ディレクトリにデータをロードすることによってLDIFファイルからブートストラップする方法

ディレクトリ依存ツールを使用してソース・ディレクトリを読み取ることによってLDIFファイルからブートストラップする方法

大きいディレクトリに対してはこの方法を使用することをお薦めします。この方法を使用する手順は、次のとおりです。

1. ディレクトリからLDIFファイルにデータをダウンロードします。使用するツールは、データのロード元のディレクトリによって異なります。Microsoft Active Directoryからブートストラップしている場合は、ldifdeコマンドを使用してデータをロードします。各エントリに必要なすべての属性をロードしてください。

2. 適切なマッピング・ルールを持つマッピング・ファイルを作成します。さらに同期を行う場合は、マッピング・ファイルが同期に使用されるものと同じであることを確認してください。

3. LDIFとしてのソースと宛先、およびその他の詳細情報を持つ宛先パラメータ・ファイルを作成します。サンプル・パスワード・ファイルは次の場所にあります。
$ORACLE_HOME/ldap/odi/conf/ldf2ldf.properties

4. ソースをLDIF、宛先タイプをLDIFと指定したパラメータ・ファイルとともに、syncProfileBootstrapコマンドを使用します。これによって、ソース・データが変換され、Oracle Internet Directoryで必要な新しいLDIFが作成されます。syncProfileBootstrapコマンドを次のように実行します。

syncProfileBootstrap -profile profile_name -loadParallelism threads -loadRetry retries

5. NAME_OF_MANAGED_SERVER-diagnostic.logファイルでエラーがないかどうかを確認します。このファイルは、次の場所にあります。

MW_HOME/user_projects/domains/DOMAIN_NAME/servers/NAME_OF_MANAGED_SERVER/logs/NAME_OF_MANAGED_SERVER-diagnostic.log

6. bulkload.shコマンドまたはldapaddコマンドを使用して、Oracleバックエンド・ディレクトリにデータをアップロードします。

7. 同期を継続するには、次のようにmanageSyncProfilesコマンドのupdatechgnum操作を使用して最終変更番号を更新します。

manageSyncProfiles updatechgnum -h HOST -p PORT -D wlsuser \
-profile my_Import_Profile

syncProfileBootstrapコマンドを使用してバックエンド・ディレクトリにデータをロードすることによってLDIFファイルからブートストラップする方法

この方法を使用する手順は、次のとおりです。

1. ディレクトリからLDIFファイルにデータをダウンロードします。使用するツールは、データのロード元のディレクトリによって異なります。Microsoft Active Directoryからブートストラップしている場合は、ldifdeコマンドを使用してデータをロードします。各エントリに必要なすべての属性をロードしてください。

2. 適切なマッピング・ルールを持つマッピング・ファイルを準備します。さらに同期を行う場合は、マッピング・ファイルが同期に使用されるものと同じであることを確認してください。

3. ソースをLDIF、宛先をLDAPと指定して、プロパティ・ファイルを作成します。

4. ソースをLDIF、宛先タイプをLDAP、宛先をOracle Internet Directoryと指定したパラメータ・ファイルとともに、syncProfileBootstrapコマンドを使用します。これによってソース・データが変換され、Oracle Internet Directory内に必要なエントリが作成されます。サンプル・プロパティ・ファイルldf2ldp.propertiesは、$ORACLE_HOME/ldap/odi/samplesにあります。

5. NAME_OF_MANAGED_SERVER-diagnostic.logファイルでエラーがないかどうかを確認します。このファイルは、次の場所にあります。

MW_HOME/user_projects/domains/DOMAIN_NAME/servers/NAME_OF_MANAGED_SERVER/logs/NAME_OF_MANAGED_SERVER-diagnostic.log

6. 同期を継続するには、次のようにmanageSyncProfilesコマンドのupdatechgnum操作を使用して最終変更番号を更新します。

manageSyncProfiles updatechgnum -h HOST -p PORT -D wlsuser \
-profile my_Import_Profile

8.1.6 デフォルト統合プロファイルを使用した直接ブートストラップ

ブートストラップは、同期用に構成された既存の統合プロファイルに依存します。この構成情報は、他のディレクトリに接続するために使用されます。

この方法を使用する場合は、ソース・ディレクトリを読取り専用モードに設定します。

プロファイルがインポート・プロファイルの場合は、接続ディレクトリ内の必須オブジェクトのフットプリントがOracleバックエンド・ディレクトリに作成されます。プロファイルがエクスポート・プロファイルの場合は、Oracleバックエンド・ディレクトリからの必須オブジェクトのフットプリントが接続ディレクトリ内に作成されます。

これらのエントリの作成中、統合プロファイルに指定されているとおり、識別名およびオブジェクト・レベルのマッピングが使用されます。エントリのアップロードに失敗した場合、この情報は、MW_HOME/user_projects/domains/DOMAIN_NAME/servers/NAME_OF_MANAGED_SERVER/logsディレクトリにあるNAME_OF_MANAGED_SERVER-diagnostic.logファイルに記録されます。

たとえば、Oracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)からOracle Internet Directoryにブートストラップする場合は、次の手順を実行します。

1. 「Oracle Directory Server Enterprise Editionとの拡張統合の構成」の方法に従うとインストールの一部として作成される、デフォルトの統合プロファイルiPlanetImportをカスタマイズします。

2. 次のコマンドを入力します。

syncProfileBootstrap -h HOST -p PORT -D wlsuser -profile iPlanetImport -loadParallelism 5 -loadRetry 3

3. NAME_OF_MANAGED_SERVER-diagnostic.logファイルでエラーがないかどうかを確認します。このファイルは、次の場所にあります。

MW_HOME/user_projects/domains/DOMAIN_NAME/servers/NAME_OF_MANAGED_SERVER/logs/NAME_OF_MANAGED_SERVER-diagnostic.log

syncProfileBootstrapコマンドを使用している場合は、ブートストラップ処理の後に、以降の同期化のためにlastchangenumber属性が初期化されます。

8.2 SSLモードでのブートストラップ

パラメータ・ファイルまたは統合プロファイルを使用すると、SSLモードでブートストラップできます。SSLモードでブートストラップする場合、Oracleバックエンド・ディレクトリ、接続ディレクトリまたはOracleバックエンド・ディレクトリと接続ディレクトリの両方のいずれかをSSLモードで実行できます。

パラメータ・ファイルからSSLモードでブートストラップするには、パラメータ・ファイルでodip.bootstrap.srcsslmode引数とodip.bootstrap.destsslmode引数にtrueまたはfalseの値を割り当てる必要があります。

統合プロファイルからブートストラップすると、デフォルトの統合プロファイルのodip.profile.condirurlに割り当てられた値を使用して、接続ディレクトリへのSSL接続が確立されます。

8.2.1 DIPキーストアへの信頼できる証明書の追加

SSLモードでブートストラップする場合、Directory Integration Platformのキーストアにサード・パーティのディレクトリの信頼できる証明書が格納されている必要があります。DIPは、SSLサーバー認証モードを使用してサード・パーティのディレクトリに接続します。

8.2.1.1 DIPキーストアへの信頼できる証明書の追加方法

ブートストラップをSSLモードで開始する前に次の手順を実行します。

1. keytoolコマンドを使用して物理的な場所に新しいJavaキーストアを作成し、このキーストアにサード・パーティのディレクトリの信頼できる証明書を追加します。
keytool -importcert -noprompt -trustcacerts -alias <ALIAS_NAME> -file <PATH_TO_CERTIFICATE_FILE> -keystore <PHYSICAL_LOCATION_OF_KEYSTORE> -storepass <KEYSTORE_PASSWORD>

2. Directory Integration PlatformアプリケーションでJavaキーストア(JKS)の場所(前の手順で作成)を構成します。
次のコマンドで、WLSはWebLogic Serverを表します。

$OH/bin/manageDIPServerConfig set -attr keystorelocation -val <FULL_PATH_TO_KEYSTORE> -h <WLS_HOST> -p <WLS_MANAGED_SERVER_PORT> -wlsuser <WLS_USER>

3. DIPが証明書を検証するのにCSFからパスワードを読み取ってキーストアを開くことができるように、CSF(資格証明ストア・フレームワーク)のパスワード資格証明を作成します。

1. 次のコマンドを実行します。
$MW_HOME/oracle_common/common/bin/wlst.sh

2. 次のコマンドを実行します。
connect('%WLSUSER%','%WLSPWD%', 't3://%HOST%:%ADMINSERVER_PORT%')

3. 次のWLSTコマンドを実行して資格証明を作成します。
createCred(map="dip", key="jksKey", user="cn=odisrv,cn=Registered Instances,cn=Directory Integration Platform,cn=products,cn=oraclecontext", password="<JKS_PASSWORD>", desc="DIP SSL JKS")

9 Oracle Databaseの表との同期

Oracle Enterprise Managerユーザー・インタフェースまたはWLSTコマンドライン・ユーティリティを使用して、Oracle Databaseインポートおよびエクスポート・プロファイルを構成できます。

- ユーザー・インタフェースを使用したプロファイルの作成および管理の詳細は、第7.1項「Fusion Middleware Controlを使用した同期プロファイルの管理」を参照してください。

- WLST manageSyncProfilesコマンド・ユーティリティを使用したプロファイルの作成および管理は、第7.2項「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

この章では、Oracle Database表に格納されているデータをOracleバックエンド・ディレクトリと同期するためにコマンドラインから変更できる、DBReader構成ファイルについて説明します。同期は、増分(たとえば、データベース表の行単位)またはすべてのデータベース表を一括で実行できます。

この章では、Oracleバックエンド・ディレクトリをOracle Databaseと同期するエクスポート・プロファイルを作成する場合に、コマンドラインから変更できるdbexport構成ファイルについても説明します。

注意:
データベースからOracleバックエンド・ディレクトリへの複数値属性の同期はサポートされません。
Oracle Directory Integration Platformアプリケーションでは、データベースの削除操作はサポートされていません。ただし、行がデータベースで削除されたときに必ずOracleバックエンド・ディレクトリのエントリを直接削除する外部トリガーを作成できます。そのようなトリガーの作成方法についての情報は、このドキュメントには含まれていません。

この章は、次の項目を含みます。

- 追加構成情報ファイルの準備

- マッピング・ファイルの準備

- ディレクトリ統合プロファイルの準備

- 例: リレーショナル・データベース表とバックエンド・ディレクトリの同期化

注意:
この章を読む前に、Oracle Directory Integration Platformの概要についての次の章をよく理解しておく必要があります。

- 第1章「Oracle Identity Management統合の概要」

- 第5章「Oracle Directory Synchronization Serviceの概要」

9.1 追加構成情報ファイルの準備

Oracle DatabaseのデータをOracleバックエンド・ディレクトリと同期するインポート・プロファイルを作成するには、$ORACLE_HOME/ldap/odi/confディレクトリにあるサンプル・ファイルDBReader.cfg.masterを開き、仕様に合わせて編集します。

Oracleバックエンド・ディレクトリのデータをOracle Databaseと同期するエクスポート・プロファイルを作成するには、$ORACLE_HOME/ldap/odi/confディレクトリにあるサンプル・ファイルdbexport.cfg.masterを開き、仕様に合わせて編集します。

追加構成情報ファイルの形式について

このファイルの構成では、正しい形式に従うことが非常に重要です。TAG名を使用して、各種セクションに分割します。各TAGセクションには、パラメータのリストとそれぞれの値を示します。通常のレイアウトは次のとおりです。

[TAG]
PARAMETER1: value
PARAMETER2: value

[TAG]
PARAMETER1: value
PARAMETER2: value\
VALUE continuation\
value continuation\
end of value continuation

[TAG]
PARAMETER1: value
PARAMETER2: value\
end of value continuation

DBReader.cfg.master構成ファイルについて

Oracle DatabaseからOracleバックエンド・ディレクトリへの同期の間、データベースからのデータの取得はDBReader.cfg.masterファイルによって管理されます。Oracle Directory Integration Platformに次の情報が提供されます。

- 実行するSELECT文

- 増分同期に使用される属性またはデータベース列のいずれか。通常、タイムスタンプを含む属性、または次のSQL文で増分データの取得に使用する必要がある変更順序番号のいずれかです。

DBReader.cfg.masterファイルは次のようになります。

[DBQUERY]
SELECT: SELECT\

EMPNO EmpNum,\
ENAME,\
REPLACE(EMAIL),'@ACME.COM','') UID,\
EMAIL,\
TELEPHONE,\
TO_CHAR(LAST_UPDATE_DATE,'YYYYMMDDHH24MISS') Modified_Date\

FROM\

EMPLOYEE\

WHERE\

LAST_UPDATE_DATE>TO_DATE (:Modified_Date,'YYYYMMDDHH24MISS')\

ORDER BY\
LAST_UPDATE_DATE

[SYNC-PARAMS]
CHANGEKEYATTRS: Modified_Date

SELECT文全体がSELECTパラメータの値として、タグDBQUERYで表されているセクションに入力されています。値が冗長なため、SELECT文の終わりまですべての行で値継続文字が最後の文字として入力されています。

SELECT文に存在するWHERE条件にも注意してください。WHERE条件はModified_Dateに基づいて変更を取得します。変更されたユーザー・レコードをOracleバックエンド・ディレクトリにコピーするには、WHERE句を更新してレコードを取得します。この例では、Modified_Dateが増分同期のキーです。これは日付であるため、文字列書式で指定する必要があります。

CHANGEKEYATTRSパラメータ値は、増分同期の実行中に使用される列の名前です。これらの列の値は、常にプロファイルのorclodipcondirlastappliedchgnum属性に格納されます。SELECT文が実行されるたびに、それに応じてこの属性の現在の値がSQL文に入力されます。これによって、データは常に増分取得されます。

CHANGEKEYATTRSに複数の列名(たとえばcolumn1:column2)がある場合、プロファイルのorclodipcondirlastappliedchgnum属性の値はvalue1~value2(value1はcolumn1、value2はcolumn2に対応)などとして格納されます。

列名は、属性値ペアとしてOracle Directory Integration Platformに取得された後、設定されたマッピング・ルールに従ってLDAP属性値にマッピングされます。このため、SELECT文で取得されたすべての列名は、式ではなく単純名である必要があります。たとえば、式REPLACE(EMAIL),'@ACME.COM','')を使用することはできますが、この式の値は、UIDとして取得されます。

プロファイルを作成する場合は、orclodipcondirlastappliedchgnum属性に値を設定する必要があります。この日付より後のすべての変更(この値より大きいLAST_UPDATE_DATEを持つ表内の行)が取得されます。たとえば、orclodipcondirlastappliedchgnum属性を20000101000000に設定すると、2000年1月1日以降のすべての従業員の変更が取得されます。

ORDER BY句があるため、戻されるすべてのデータベース行はLAST_UPDATE_DATEの順になります(つまり、取得され、ディレクトリに適用される変更は時間順になります)。最後の変更が取得され、適用されると、次の処理が行われます。

1. orclodipcondirlastappliedchgnum属性値が、取得された最後の行からModified_Dateに設定されます。

2. プロファイルが更新されます。

Oracle Directory Integration Platformは、プロファイルを再実行する場合、常に、すでに格納された値を使用します。

dbexport.cfg.master構成ファイルについて

dbexport.cfg.masterファイルでは、Oracle Databaseの構造が記述されます。Oracle Directory Integration Platformに次の情報が提供されます。

- プライマリ表。プロファイル内のその他すべての表が接続されるデータベース表。各dbexport.cfg.masterファイルに1つのプライマリ表が必要です。

- 主キー。同期する表の主キーを指定します。この構成に含まれるすべての表名に対して、主キーを定義する必要があります。
主キーが複数の列で構成されている場合は、各列の名前をカンマで区切って入力します。たとえば、id,name,dobとします。

- 表リレーション。接続属性を指定して、プライマリ表とプロファイルに含まれるその他すべての表の間の関係を定義します。サンプル・ファイルでは、idが接続属性となります。
必要に応じて、カンマ区切りリストを使用して複数の属性を指定します(たとえば、id,name)。

dbexport.cfg.masterファイルは次のようになります。

[INTERFACEDETAILS]
Writer: oracle.ldap.odip.gsi.DatabaseWriter
CheckAllEntries: null
SkipErrorToSyncNextChange: false
UpdateSearchCount: 100
SearchDeltaSize: 500

[SYNC-PARAMS]
PRIMARY_TABLE: table1

[PRIMARY-KEYS]
table1:id
table2:id

[TABLE-RELATIONS]
table1^table2:id

注意:
SkipErrorToSyncNextChangeパラメータでは、同期中の変更を処理しているときのエラーについて、Oracle Directory Integration and Provisioning Serverでの処理方法を決定します。デフォルトでは、SkipErrorToSyncNextChangeパラメータにはfalseの値が割り当てられ、エラーが解決されるまでOracle Directory Integration and Provisioning Serverで変更の処理が続行されることを意味します。SkipErrorToSyncNextChangeパラメータにtrueの値を割り当てると、Oracle Directory Integration and Provisioning Serverで、エラーの原因である変更がすべてスキップされます。すべての障害が、$ORACLE_HOME/ldap/odi/log/profilename.aud監査ログ・ファイルに記録されます。SkipErrorToSyncNextChangeパラメータにtrueの値を割り当てる場合は、必ず定期的に監査ログで障害を確認してください。

9.2 マッピング・ファイルの準備

DBReader.map.master構成ファイル

マッピング・ルールの構成の詳細は、「マッピング・ルールとその形式」の手順に従ってください。

dbexport.map.master構成ファイル

「マッピング・ルールとその形式」の説明を確認してください。次に、$ORACLE_HOME/ldap/odi/confディレクトリにあるサンプル・ファイルdbexport.map.masterを開き、仕様に合わせて編集します。

dbexport.map.master構成ファイルのマッピング・ルールの形式では、宛先オブジェクト・クラスおよび宛先属性のかわりに、宛先表の名前および宛先列の名前を指定します。

たとえば、サンプル・マップ・ルールは次のようになります。

uid:1::inetorgperson:id::table2:

この例では、uidがソース属性、inetorgpersonがソース・オブジェクト・クラスです。次に、idが宛先列、table2が宛先表の名前です。マップ・ファイルには、主キーとして指定されているすべての列を含める必要があり、それが必須の属性であることを指定する必要もあります。このマッピング・ルールの例では、uidソース属性の後にある:1によって、uidが必須の属性であることが示されています。

9.3 ディレクトリ統合プロファイルの準備

ディレクトリ統合プロファイルは、Oracle Enterprise Manager Fusion Middleware Controlユーザー・インタフェースを使用して作成できます。手順は、第7.1項「Fusion Middleware Controlを使用した同期プロファイルの管理」を参照してください。

Oracle Enterprise Manager Fusion Middleware Controlを使用する際には、manageSyncProfilesコマンドのupdate操作を使用して、追加構成情報ファイルとマッピング・ファイルをアップロードする必要があります。manageSyncProfilesコマンドの使用の詳細は、第7.2項「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

ディレクトリ統合プロファイルを構成するには、「Oracle Directory Integration Platformでのコネクタの登録」の指示に従います。ただし、次の注意事項があります。

- 「エージェントの実行コマンド」(orclodipAgentExeCommand)属性に値を設定しないでください。

- 「インタフェース・タイプ」(orclodipDataInterfaceType)属性をDBに設定します。

9.4 例: リレーショナル・データベース表とバックエンド・ディレクトリの同期化

この項では、リレーショナル・データベース表とOracleバックエンド・ディレクトリを同期化する方法について説明します。

注意:
Directory Integration Platformデータベース・プロファイルでは、削除操作はサポートされていません。ただし、行がデータベースで削除されたときに必ずOracleバックエンド・ディレクトリのエントリを直接削除する独立したトリガーを、DIPの外部に作成できます。そのようなトリガーの作成方法についての情報は、このドキュメントには含まれていません。

この項の内容は次のとおりです。

- 追加構成情報ファイルの構成

- マッピング・ファイルの構成

- ディレクトリ統合プロファイルの構成

- 追加構成情報ファイルとマッピング・ファイルのアップロード

- 同期プロセス

- 例に関する注意事項

この例では、従業員データを含む次のリレーショナル・データベース表がOracleバックエンド・ディレクトリと同期化されます。

EMPNO

ENAME

LAST_UPDATE_DATE

EMAIL

TELEPHONE

98357

JOHN DOE

2-JAN-2000

JOHN.DOE@ACME.COM

435-324-3455

98360

ROGER BECK

3-JUL-2001

ROGER.BECK@ACME.COM

435-324-3600

98365

JIMMY WONG

4-MAR-2001

JIMMY.WONG@ACME.COM

435-324-2390

98370

GEORGE TWINSLEY

6-FEB-2002

GEORGE.TWINSLEY@ACME.COM

435-324-9232

この例のサンプル・プロファイル(DBReader.properties)は、サンプルの構成ファイル、マッピング・ファイルとともに、$ORACLE_HOME/ldap/odi/confディレクトリにあります。

この例では、次のように仮定します。

- 表の名前は、Employeeです。

- プロファイル名は、TESTDBIMPORTです。

- データベース・レコードをディレクトリ・エントリと結合するには、従業員番号(EMPNO)が使用されます。この番号は、『Oracle Identity Managementユーザー・リファレンス』の属性リファレンスに関する章に説明されている「OID一致フィルタ」(orclOdipOIDMatchingFilter)属性に指定されています。

- この表は、データベース内のtestsync/testsyncpwdスキーマにあります。データベースはホストmachine.acme.comに存在し、データベース・リスナー・ポートは1526、SIDはiasdbです。データベースURLは、machine.acme.com:1526:iasdbです。

- 適切な読取り/書込み権限がこのプロファイル、つまりorclodipagentname=testdbimport,
cn=subscriber profile,
cn=changelog subscriber,
cn=oracle internet directoryに明示的に付与されています。

- プロファイルは、構成設定1内に作成されます。

9.4.1 追加構成情報ファイルの構成

この例では、「追加構成情報ファイルの準備」で説明した追加構成情報ファイルと同じファイルを使用します。

9.4.2 マッピング・ファイルの構成

この例のマッピング・ファイルの内容は次のとおりです。

DomainRules
NONLDAP:dc=testdbsync,dc=com:uid=%,dc=testdbsync,dc=com
AttributeRules
ename: : : :cn: :person
ename : : : :sn: :person
uid : : : :uid: :inetOrgperson:
EMail: : : :mail: :inetOrgperson
Telephone: : : :telephonenumber: :inetOrgperson
empnum: : : :employeenumber: :inetOrgperson

このマッピング・ファイルは次のことを指定しています。

- ディレクトリ・エントリはuid=%,dc=testdbsync,dc=comとして作成されます。パーセント記号(%)は、uidの実際の値のプレースホルダです。uidをマッピング・ルールに含め、マッピング後に値を持つようにする必要があります。存在しない場合、識別名の構成は失敗します。

- cnとsnの両方の属性は、enameと同じ値である必要があります。

- uid要素の値は、EMail接頭辞の値(電子メール・アドレス内のアット・マーク(@)文字より前の部分)になります。

- empnum属性は、ディレクトリ・エントリ内のemployeenumberになります。

- telephone属性は、ディレクトリ・エントリ内のtelephone numberになります。

9.4.3 ディレクトリ統合プロファイルの構成

この例のディレクトリ統合プロファイルには、表9-1に示す属性値が含まれます。これらの値が入ったサンプル統合プロファイルとそれに対応するマッピング・ファイルおよび構成ファイルが$ORACLE_HOME/ldap/odi/confディレクトリにあります。Oracle Enterprise Manager Fusion Middleware Controlを使用するか、「同期プロファイルの作成」の指示に従ってプロファイルを作成できます。

表9-1 TESTDBIMPORT用のディレクトリ統合プロファイル

属性

値

プロファイル名(odip.profile.name)

TESTDBIMPORT

同期モード(odip.profile.syncmode)

IMPORT

プロファイルのステータス(odip.profile.status)

ENABLE

エージェントの実行コマンド(odip.profile.agentexecommand)

NULL

拡張構成情報(odip.profile.configfile)

LDAP属性で個々に保持されない構成の詳細を保持します。

接続されたディレクトリ・アカウント(odip.profile.condiraccount)

testdbsync

接続されたディレクトリ・アカウントのパスワード(odip.profile.condirpassword)

testdbsyncpwd

接続されたディレクトリURL(odip.profile.condirurl)

machine.acme.com:1526:iasdb

インタフェース・タイプ(odip.profile.interface)

DB

マッピング・ファイル(odip.profile.mapfile)

マッピング・ルールの格納用属性。

OID一致フィルタ(odip.profile.oidfilter)

employeenumber

これは、一致を検索中、ディレクトリの検索にemployeenumberが使用されることを意味します。一致が検証されると、ディレクトリ・エントリが修正されます。それ以外の場合は、新しいエントリが作成されます。これは、orclOdipOIDMatchingFilter属性がデータベース内で一意なことを保証するためにも必要です。

データベース行が取得されると、Oracle Directory Integration Platformでは、ドメイン・ルールに従って、dc=testdbsync,dc=comドメインのディレクトリでemployeenumberを検索します。一致が検出された場合は、検索された行内の列の最新の値でそのエントリが更新されます。一致が検出されなかった場合は、列値のすべての属性を持つ新しいエントリがディレクトリ内に作成されます。

前回適用された変更番号(odip.profile.lastchgnum)

20000101000000

これは、プロファイルの最初の実行時に、4つすべての行を取得し同期することを意味します。その後は、表内のLAST_UPDATE_DATE列が最終更新時刻に更新した場合にのみ、行が取得されます。

9.4.4 追加構成情報ファイルとマッピング・ファイルのアップロード

manageSyncProfilesコマンドのupdate操作を使用して、追加構成情報ファイルとマッピング・ファイルを次のように更新します。

manageSyncProfiles update -h HOST -p PORT -D WLS_USER -pf PROFILE_NAME -file FILE_NAME

9.4.5 同期プロセス

この例では、同期プロセスの手順は、次のとおりです。

1. 「スケジューリングの間隔」(odip.profile.schedinterval)属性に指定された値が期限切れになるたびに、Oracle Directory Integration Platformは、TESTDBIMPORTプロファイル用に新しいプロファイル・スレッドを起動します。

2. プロファイル・スレッドは、追加構成情報を読み取ってSQLを準備し、実行します。

3. データベースから取得された行ごとに、マッピング・ルールがレコードに適用され、LDAP属性が作成されます。

4. 「OID一致フィルタ」(odip.profile.oidfilter)属性によって、Oracleバックエンド・ディレクトリ内に一致するエントリがあるかどうかをOracle Directory Integration Platformが判断します。一致するエントリがある場合は更新されます。ない場合は新しいエントリが作成されます。ディレクトリ操作の後、「前回適用された変更番号」(odip.profile.lastchgnum)属性が更新されます。

注意:
「OID一致フィルタ」(odip.profile.oidfilter)属性は、Oracle Unified Directory、Oracle Directory Server Enterprise EditionおよびOracle Internet Directoryをサポートします。

9.4.6 例に関する注意事項

行は、次の形式でデータベースから取得されます。

EmpNum: 98357
EName: JOHN DOE
UID: JOHN.DOE
EMAIL: JOHN.DOE@ACME.COM
TELEPHONE: 435-324-3455
Modified_Date: 20000102000000

このレコード上でマッピングが行われると、次の形式で出力されます。

dn: uid=john.doe,dc=testdbsync,dc=com
uid: JOHN.DOE
cn: JOHN DOE
sn: JOHN DOE
mail: JOHN.DOE@ACME.COM
employeenumber: 98357
telephonenumber: 435-324-3455
objectclass: person
objectclass: inetorgperson

dc=testdbsync,dc=comドメイン下のemployeenumber=98357フィルタを使用して、ディレクトリ内でサブツリー検索が行われます。検索結果が既存のエントリの場合は、そのエントリが更新されます。それ以外の場合は、新しいエントリが作成されます。「OID一致フィルタ」(odip.profile.oidfilter)属性がemployeenumberに設定されているため、取得されるすべてのデータベース・レコードにはその列があります。この場合は、employeenumberにマップされるEmpNumです。

マッピング・ファイル内のその他の属性で、SQLによって取得されるデータに含まれないもの(birthday属性など)は無視されます。

プロファイル・スレッドは、SQLからのすべての変更レコードを処理した後、次の属性の正しい値でディレクトリを更新します。

- 前回適用された変更番号(odip.profile.lastchgnum)

- 最終実行時間(orclOdipLastExecutionTime)

- 最終正常実行時間(orclOdipLastSuccessfulExecutionTime)

10 Oracle Human Resourcesとの同期

企業内の従業員データ用のプライマリ・リポジトリとしてOracle Human Resourcesを使用している場合は、Oracle Human ResourcesとOracleバックエンド・ディレクトリの間でデータを同期化する必要があることがあります。同期化には、Oracle Human Resourcesコネクタを使用します。

この章では、Oracle Human Resourcesコネクタを紹介し、そのデプロイ方法を説明します。内容は次のとおりです。

- Oracle Human Resourcesとの同期化の概要

- Oracle Human Resourcesからインポートできるデータ

- Oracle Human ResourcesとOracleバックエンド・ディレクトリ間の同期の管理

- 同期プロセス

- Oracle Human ResourcesからのOracleバックエンド・ディレクトリのブートストラップ

注意:
Oracle E-Business Suiteを含むOracle Human Resources環境と同期する場合、Oracle Directory Integration PlatformがサポートするOracle E-Business Suite統合ソリューションの使用をお薦めします。詳細は、第15章「Oracle E-Business Suiteとのプロビジョニング・データの統合」を参照してください。

関連項目:
Oracleバックエンド・ディレクトリと同期化できるOracle Human Resourcesのリリースを確認する場合は、使用するOracleバックエンド・ディレクトリのリリース・ノートを参照してください。

10.1 Oracle Human Resourcesとの同期化の概要

Oracle Human Resourcesコネクタを使用すると、従業員データのサブセットをOracle Human ResourcesからOracleバックエンド・ディレクトリにインポートできます。これには、事前パッケージ済の統合プロファイルおよびOracleバックエンド・ディレクトリとの通信を処理するOracle Human Resourcesエージェントの両方が含まれます。Oracle Enterprise Manager Fusion Middleware Controlを使用して、デプロイの要件を満たすように、事前パッケージ済の統合プロファイルをカスタマイズできます。

Oracle Human Resourcesコネクタは、Oracle Human Resourcesシステムから増分変更を抽出するように構成することによって、いつでも実行できるようにスケジュールできます。また、Oracle Human Resourcesの列名とOracleバックエンド・ディレクトリの属性の間のマッピングを設定および変更できます。

10.2 Oracle Human Resourcesからインポートできるデータ

表10-1は、Oracle Human Resourcesスキーマの表を示しています。選択した場合は、これらの属性のほとんどをOracle Internet Directoryにインポートできます。

表10-1 Oracle Human Resourcesスキーマの表

表名

コネクタ構成情報フィールドで使用される別名

PER_PEOPLE_F

PER

PER_ADDRESSES

PA

PER_PERIODS_OF_SERVICE

PPS

PER_PERSON_TYPES

PPT

Oracle Human Resourcesデータベースにappsアカウントでログインした場合は、これらの表はすべて参照できます。

属性は実行時に構成ファイルから追加または削除できるので、Oracle Human Resourcesコネクタは、必要な属性のみを選択して取得するSQL文を動的に作成します。

表10-2は、Oracle Human Resourcesのユーザー・インタフェースのフィールドの一部を示しています。これらのフィールドは、従業員データを追加または変更するときに表示されます。

表10-2 Oracle Human Resourcesのユーザー・インタフェースのフィールド

属性名

説明

フォーム/キャンバス/フィールド名

LAST_NAME

個人の姓

個人情報/氏名/姓

FIRST_NAME

個人の名

個人情報/氏名/名

TITLE

個人の役職

個人情報/氏名/タイトル

SUFFIX

サフィックス(Jr、Sr、Ph.Dなど)

個人情報/氏名/サフィックス

MIDDLE_NAME

ミドルネーム

個人情報/氏名/ミドルネーム

SEX

性別

性別リスト・ボックス

START_DATE

入社日

個人情報/入社日

DATE_OF_BIRTH

生年月日

個人情報/個人情報/生年月日

MARITAL_STATUS

婚姻区分

個人情報/個人情報/ステータス

NATIONAL_INDENTIFIER

米国居住者用社会保障番号

個人情報/識別情報/社会保障

EMPLOYEE_NUMBER

従業員番号

個人情報/識別情報/従業員

REGISTERD_DISABLED_FLAG

障害の有無のインジケータ

個人情報/個人情報/障害の有無

EMAIL_ADDRESS

電子メール・アドレス

個人情報/個人情報/Eメール

OFFICE_NUMBER

オフィス所在地

個人情報/オフィス所在地情報/オフィス

MAILSTOP

郵便物配達先

個人情報/オフィス所在地情報/郵便宛先

INTERNAL_LOCATION

事務所

個人情報/オフィス所在地情報/事業所

ADDRESS_LINE1

住所1

個人住所情報/住所1

ADDRESS_LINE2

住所2

個人住所情報/住所2

ADDRESS_LINE3

住所3

個人住所情報/住所3

TOWN_OR_CITY

市区町村

個人住所情報/市区

REGION_1

地域1

個人住所情報/郡

REGION_2

地域2

個人住所情報/都道府県

POSTAL_CODE

郵便番号

個人住所情報/郵便番号

COUNTRY

国

個人住所情報/国

TELEPHONE_NUMBER_1

電話番号1

個人住所情報/電話番号

TELEPHONE_NUMBER_2

電話番号2

個人住所情報/電話番号2

10.3 Oracle Human ResourcesとOracleバックエンド・ディレクトリ間の同期の管理

この項の内容は次のとおりです。

- タスク1: Oracle Human Resourcesコネクタのディレクトリ統合プロファイルの構成

- タスク2: Oracleバックエンド・ディレクトリと同期化される属性のリストの構成

- タスク3: Oracle Human Resourcesコネクタに関するマッピング・ルールの設定

- タスク4: Oracle Human ResourcesからOracleバックエンド・ディレクトリへの同期の準備

10.3.1 タスク1: Oracle Human Resourcesコネクタのディレクトリ統合プロファイルの構成

Oracle Human Resourcesコネクタとともにインストールされる事前パッケージ済の統合プロファイルを構成するには、第7章「ディレクトリ同期プロファイルの管理」を参照してください。

パッケージ済統合プロファイルの一部のパラメータでは、Human Resourcesコネクタとの統合に固有の値を指定する必要があります。Human Resourcesコネクタに固有のパラメータは、表10-3を参照してください。

表10-3 Oracle Human Resourcesコネクタ統合プロファイルに固有の属性

属性

説明

プロファイル名(odip.profile.name)

システム内でコネクタを識別するための一意の名前で、統合プロファイルを識別する識別名のRDNコンポーネントとして使用されます。名前に含めることができるのは、英数字のみです。この属性は必須で、変更できません。デフォルトの名前はOracleHRAgentです。

同期モード(odip.profile.syncmode)

Oracleバックエンド・ディレクトリと接続ディレクトリ間での同期の方向。

- IMPORTは接続ディレクトリからOracleバックエンド・ディレクトリへの変更のインポートを示します。

- EXPORTはOracleバックエンド・ディレクトリから接続ディレクトリへの変更のエクスポートを示します。

デフォルトはIMPORTです。

この属性は必須で、変更可能です。

注意: Oracle Internet Directory 11gリリース1(11.1.1)では、Oracle Human Resourcesに対するインポート操作のみがサポートされます。

実行情報

エージェントの実行コマンド
(odip.profile.agentexecommand)

Directory Integration Serverがコネクタの実行に使用する、コネクタ実行可能ファイルの名前と引数のリスト。

この属性は必須で、変更可能です。

デフォルトは次の値です。

odihragent OracleHRAgent  connect=hrdb \
login=%odip.profile.condiraccount \
pass=%odip.profile.condirpassword \
date=%orclODIPLastSuccessfulExecutionTime \

引数connect=hrdbの値は、Oracle Human Resourcesシステム・データベースの接続文字列に設定する必要があります。

接続されたディレクトリ・アカウント(odip.profile.condiraccount)

コネクタが同期で使用する、接続ディレクトリ内の有効なユーザー・アカウント。Human Resources Agentの場合のユーザー・アカウントは、Oracle Human Resourcesデータベース内の有効なユーザー識別子です。

関連項目: コマンドラインで引数を渡す一般的な使用方法は、第10章「Oracle Human Resourcesとの同期」を参照してください。

拡張構成情報(odip.profile.configfile)

コネクタをOracleバックエンド・ディレクトリに格納する構成情報。コネクタの起動時に、Directory Integration Serverによってコネクタに渡されます。この情報は属性として格納され、Directory Integration Serverはその内容を認識しません。

この属性に格納される値は、Oracle Human Resourcesからの同期が必要な(Oracle Human Resourcesコネクタについて)すべての属性を表します。

関連項目: 「タスク2: Oracleバックエンド・ディレクトリと同期化される属性のリストの構成」

Oracle Human Resourcesコネクタの場合、この属性は必須です。

接続されたディレクトリURL(odip.profile.condirurl)

接続ディレクトリのホストとポートの詳細情報です。host:port:sidの書式で入力する必要があります。

インタフェース・タイプ
(odip.profile.interface)

データ転送に使用するインタフェース。このインタフェースはタグ付きファイルの形式であるため、TAGGEDに設定されます。

注意: Oracle Human Resourcesプロファイルの場合、この属性は変更しないでください。

マッピング情報

マッピング・ルール
(odip.profile.mapfile)

マッピング・ルールを格納するための属性。Oracle Enterprise Manager Fusion Middleware Controlを使用して、ファイルにマッピング・ルールを格納します。Oracle Enterprise Manager Fusion Middleware Controlの使用方法は、第7章「ディレクトリ同期プロファイルの管理」を参照してください。

Oracle Human Resourcesの場合、この属性は必須で、変更可能です。

関連項目:

- 「マッピング・ルールとその形式」

- 「マッピング・ルールの構成」

接続されたディレクトリ一致フィルタ
(odip.profile.condirfilter)

Oracle Human Resources接続には使用されません。

OID一致フィルタ

(odip.profile.oidfilter)

この属性は、Oracleバックエンド・ディレクトリでのターゲット・エントリの検索に使用されるLDAPフィルタを指定します。Oracle Directory Integration Platformはこのフィルタを使用して、同期に必要なLDAP操作の種類を検出します。

employeenumber=%の形式で指定します。

これはオプションで、変更可能です。

ステータス情報

OID前回適用された変更番号(odip.profile.lastchgnum)

この属性は、すべてのエクスポート・プロファイルの基準で、Oracle Human Resourcesの同期には適用されません。

10.3.2 タスク2: Oracleバックエンド・ディレクトリと同期化される属性のリストの構成

デフォルトのOracle Human Resourcesプロファイルは、Oracle Human ResourcesからOracleバックエンド・ディレクトリに同期化される属性のデフォルト・リストを提供します。このリストはカスタマイズ可能で、属性を追加または削除できます。

デフォルトの属性リストは、統合プロファイルの一部としてorclodipAgentConfigInfo属性に格納されます。構成情報も、$ORACLE_HOME/ldap/odi/confディレクトリにあるoraclehragent.cfg.masterファイルに用意されています。

注意:
oraclehragent.cfg.masterファイルはバックアップとして機能するため、変更できません。

表10-4に、Oracle Human Resourcesの属性のデフォルト・リストの列を示します。

表10-4 デフォルトでOracleバックエンド・ディレクトリと同期化されるOracle Human Resourcesの属性

列

説明

ATTRNAME

出力データ・ファイルに生成される出力タグ。

COLUMN_NAME

この値の取得元になるデータベース列名。

TABLE_NAME

この値の取得元になるデータベース表名。

FORMAT

この属性の列データ型(ASCII、NUMBER、DATE)。

MAP

この属性をOracle Human Resourcesから抽出するかどうかのインジケータ。値Yは抽出されることを示し、値Nは抽出されないことを示します。

oraclehragent.cfg.masterファイルの内容は、次のとおりです。

ATTRNAME:COLUMN_NAME:TABLE_NAME:FORMAT:MAP
PersonId:person_id:PER:NUMBER:Y
PersonType:person_type_id:PER:NUMBER:Y
PersonTypeName:system_person_type:PPT:ASCII:Y
LastName:last_name:PER:ASCII:Y
StartDate:start_date:PER:DATE:Y
BirthDate:date_of_birth:PER:DATE:Y
EMail:email_address:PER:ASCII:Y
EmployeeNumber:employee_number:PER:NUMBER:Y
FirstName:first_name:PER:ASCII:Y
FullName:full_name:PER:ASCII:Y
knownas:known_as:PER:ASCII:Y
MaritalStatus:marital_status:PER:ASCII:Y
middleName:middle_names:PER:ASCII:Y
country:country:PA:ASCII:Y
socialsecurity:national_identifier:PER:ASCII:Y
Sex:sex:PER:ASCII:Y
Title:title:PER:ASCII:Y
suffix:suffix:PER:ASCII:Y
street1:address_line1:PA:ASCII:Y
zip:postal_code:PA:ASCII:Y
Address1:address_line1:PA:ASCII:Y
Address2:address_line2:PA:ASCII:Y
Address3:address_line3:PA:ASCII:Y
TelephoneNumber1:telephone_number_1:PA:ASCII:Y
TelephoneNumber2:telephone_number_2:PA:ASCII:Y
TelephoneNumber3:telephone_number_3:PA:ASCII:Y
town_or_city:town_or_city:PA:ASCII:Y
state:region_2:PA:ASCII:Y
Start_date:effective_start_date:PER:DATE:Y
End_date:effective_end_date:PER:DATE:Y
per_updateTime:last_update_date:PER:DATE:Y
pa_updateTime:last_update_date:PA:DATE:Y

10.3.2.1 同期化されるOracle Human Resourcesの追加属性の変更

同期化されるOracle Human Resourcesの属性を追加する手順は、次のとおりです。

1. oraclehragent.cfg.masterファイルをコピーし、Agent_Name.cfg以外の名前を付けます。これは、Oracle Directory Integration Platformがこの名前の構成ファイルを生成し、実行時に構成情報をOracle Human Resourcesエージェントに渡すのに使用するためです。

2. このファイルにレコードを追加することにより、Oracle Human Resourcesの同期化される属性を追加します。
これには、次の情報が必要です。

- 属性値の抽出元になるデータベース内の表名。これらの表は、表10-1に示されています。このファイルでは、同期に使用される4つの表に、省略された名前が使用されます。

- 表の列名。

- 列のデータ型。有効な値は、ASCII、NUMBERおよびDATEです。

また、列名に属性名を割り当てる必要もあります。これは、出力ファイル内でこの属性を識別するための出力タグとして動作します。このタグは、マッピング・ルール内でOracle Human Resourcesの属性とOracleバックエンド・ディレクトリの属性の間のルールを確立するために使用されます。

map列(レコード内の最後の列)が値Yに設定されていることを確認する必要もあります。

注意:
属性リストに新規属性を追加する場合は、orclodipAttributeMappingRules属性内に対応するルールを定義する必要があります。定義しない場合、Oracle Human Resourcesの属性は、Oracle Human Resourcesコネクタに抽出されてもOracleバックエンド・ディレクトリと同期化されません。

10.3.2.2 Oracle Human Resourcesの同期化される属性の除外

現在Oracle Internet Directoryと同期化されているOracle Human Resourcesの属性を除外するには、次の手順を実行します。

1. oraclehragent.cfg.masterファイルをコピーし、Agent_Name.cfg以外の名前を付けます。これは、Directory Integration Serverがこの名前の構成ファイルを生成し、実行時に構成情報をOracle Human Resourcesコネクタに渡すのに使用するためです。

2. 次のいずれか1つを行います。

- 属性リスト内の対応するレコードの前に番号記号(#)を付けてコメント化する。

- 列mapの値をNに設定する。

10.3.2.3 構成ファイルでのSQL SELECT文の構成による複雑な選択基準のサポート

前述のサポートされている属性の構成が、Oracle Human Resourcesデータベースからデータを抽出するには不十分な場合、Oracle Human Resourcesエージェントは、構成ファイル内にある事前構成済のSQL SELECT文を実行することもできます。構成ファイルには、このサポートを示すタグ(構成ファイル内の[SELECT])があります。

次の例は、Oracle Human Resourcesデータベースから情報の一部を取得するサンプルのSELECT文を示しています。SQL文を配置できるのは、[SELECT]タグの下のみです。BINDVARバインド変数は、増分変更を取得するために必要です。代入値によって、この変数の値(タイムスタンプ)がOracle Human Resourcesコネクタに渡されます。

SELECT文で取得されるすべての列式には列名を指定する必要であり、たとえば、REPLACE(ppx.email_address),'@ORACLE.COM','')はEMAILADDRESSとして取得されます。Oracle Human Resourcesコネクタは、REPLACE(ppx.email_address),'@ORACLE.COM'''式の結果としての属性値とともに、EMAILADDRESSを属性名として出力ファイルに書き出します。

次に構成ファイル内のSELECT文の例を示します。

[SELECT]

SELECT
REPLACE(ppx.email_address,'@ORACLE.COM','') EMAILADDRESS ,
UPPER(ppx.attribute26) GUID,
UPPER(ppx.last_name) LASTNAME,
UPPER(ppx.first_name) FIRSTNAME,
UPPER(ppx.middle_names) MIDDLENAME,
UPPER(ppx.known_as) NICKNAME,
UPPER(SUBSTR(ppx.date_of_birth,1,6)) BIRTHDAY,
UPPER(ppx.employee_number) EMPLOYEEID,
UPPER(ppos.date_start)  HIREDATE
FROM
hr_organization_units hou,
per_people_x ppx,
per_people_x mppx,
per_periods_of_service ppos
WHERE
pax.supervisor_id  = mppx.person_id(+)
AND pax.organization_id = hou.organization_id(+)
AND ppx.person_id = ppos.person_id
AND ppx.person_id = pax.person_id
AND ppos.actual_termination_date IS NULL
AND UPPER(ppx.current_employee_flag) = 'Y'
AND ppx.last_update_date >= (:BINDVAR,'YYYYMMDDHH24MISS')

10.3.3 タスク3: Oracle Human Resourcesコネクタに関するマッピング・ルールの設定

属性マッピング・ルールは、Oracle Directory Integration PlatformがOracle Human ResourcesとOracle Internet Directoryの間で属性を変換する方法を制御します。Oracle Directory Integration Platformが使用するマッピング・ルールはカスタマイズできます。

Oracle Human Resourcesエージェント・プロファイルにはデフォルトのマッピング・ファイルがあり、一連のマッピング・ルールはorclodipAttributeMappingRules属性に含まれます。この情報は、$ORACLE_HOME/ldap/odi/confディレクトリの下にあるoraclehragent.map.masterという名前のファイルにも格納されています。

注意:
oraclehragent.map.masterファイルは変更しないでください。これは、バックアップとして機能しているためです。

関連項目:
oraclehragent.map.masterファイルの内容およびマッピング・ルール・レコードの形式の説明は、「マッピング・ルールとその形式」を参照してください。

10.3.4 タスク4: Oracle Human ResourcesからOracleバックエンド・ディレクトリへの同期の準備

この項では、Oracle Human ResourcesからOracleバックエンド・ディレクトリへの同期の設定方法について説明します。

10.3.4.1 同期の準備

Oracle Human ResourcesとOracle Internet Directory間の同期を準備するには、次の手順に従います。

1. Oracle Human ResourcesコネクタとDirectory Integration Serverが、Oracle Human Resourcesコネクタの実行元であるホストにインストールされていることを確認します。

2. Oracle Human Resourcesシステムにアクセスするための情報を持っていることを確認します。これには次の情報があります。

- Oracle Human Resourcesシステムのデータベースへの接続文字列

- アクセス・アカウント

- パスワード

3. 「タスク1: Oracle Human Resourcesコネクタのディレクトリ統合プロファイルの構成」の説明に従って、Oracle Human Resourcesコネクタの統合プロファイルを構成します。次のような、統合プロファイルのすべての値が適切に設定されていることを確認します。

- Oracle Human Resourcesの属性リスト

- Oracle Human Resourcesの属性マッピング・ルール

- スケジューリング間隔

4. すべてを適切に設定した後、プロファイルのステータス属性をENABLEに設定します。この設定によって、Oracle Human Resourcesコネクタを実行する準備が完了していることを示します。

5. それぞれのホストでOracleディレクトリ・サーバーとOracle Human Resourcesが実行されていない場合、これらを起動します。

6. 準備が完了した後、まだこのホストでDirectory Integration Serverが実行されていない場合は、これを起動します。

10.4 同期プロセス

Oracle Human Resourcesシステム、Oracle Internet DirectoryおよびOracle Directory Integration Platformが実行され、Oracle Human Resourcesコネクタが有効になると、Oracle Directory Integration PlatformはOracle Human ResourcesシステムからOracle Internet Directoryへの変更の同期を自動的に開始します。そのプロセスは、次のとおりです。

1. 「最終実行時間」(orclodipLastExecutionTime)と「スケジューリングの間隔」(orclodipschedulinginterval)に指定されている値に従って、Oracle Directory Integration Platformは、Oracle Human Resourcesコネクタを起動します。

2. Human Resourcesエージェントは次のものを抽出します。

- 統合プロファイル内のorclodipLastSuccessfulExecutionTime属性に指定されている時間に基づいたOracle Human Resourcesシステムからのすべての変更

- プロファイル内のorclodipAgentConfigInfo属性に指定されている属性のみ

変更は、Oracle Human Resourcesのインポート・ファイル($ORACLE_HOME/ldap/odi/import/HR_Agent_Name.dat)に書き込まれます。

3. エージェントは、実行を完了した後、次のようなデータ・ファイルを作成します。

FirstName: John
LastName: Liu
EmployeeNumber: 12345
Title: Mr.
Sex: M
MaritalStatus: Married
TelephoneNumber: 123-456-7891
Mail: Jliu@my_company.com
Address: 100 Jones Parkway
City: MyTown

4. Oracle Directory Integration Platformは、次の動作により変更をOracleバックエンド・ディレクトリへインポートします。

- インポート・ファイルからの各変更レコードの読取り。

- 統合プロファイルの「マッピング・ルール」(orclodipAttributeMappingRules)に指定されているルールに基づいた、各変更レコードのLDAP変更エントリへの変換。

5. すべての変更内容がOracleバックエンド・ディレクトリにインポートされると、Oracle Human Resourcesコネクタは、インポート・ファイルをアーカイブ・ディレクトリ($ORACLE_HOME/ldap/odi/import/archive)に移動します。ステータスの属性である「最終実行時間」(orclodipLastExecutionTime)と「最終正常実行時間」(orclodipLastSuccessfulExecutionTime)を現在の時間に更新します。
インポート操作が失敗した場合は、「最終実行時間」(orclodipLastExecutionTime)属性のみが更新され、コネクタは「最終正常実行時間」(orclodipLastSuccessfulExecutionTime)属性に基づいてHuman Resourcesシステムからの変更の抽出を試行します。失敗の理由は、$ORACLE_HOME/ldap/odi/HR_Agent_Name.trcのトレース・ファイルに記録されます。

10.5 Oracle Human ResourcesからのOracleバックエンド・ディレクトリのブートストラップ

Oracle Human ResourcesからOracle Internet Directoryをブートストラップする方法は2つあります。

- Oracle Human Resourcesコネクタを使用する。統合プロファイルで、orclodipLastSuccessfulExecutionTime属性をOracle Human Resourcesがインストールされた時間よりも前に設定する。

- 外部ツールを使用して、Oracle Human ResourcesからOracle Internet Directoryにデータを移行する。

11 サード・パーティのメタディレクトリ・ソリューションとの同期

Oracleバックエンド・ディレクトリは、サポート対象のサード・パーティのメタディレクトリ・ソリューションとの同期を可能にするために変更ログを使用します。Oracle Directory Integration Platformには、サード・パーティのメタディレクトリ・ソリューション用のマッピング・サービスやスケジューリング・サービスは用意されていません。

この章では、変更ログ情報の生成方法およびサポートするソリューションでの変更ログ情報の使用方法について説明します。Oracleバックエンド・ディレクトリと同期化するためにサード・パーティのメタディレクトリ・ソリューションを有効化する方法を示します。

この章は、次の項目を含みます。

- 変更ログの概要

- Oracleバックエンド・ディレクトリと同期化するためのサード・パーティのメタディレクトリ・ソリューションの有効化

- 同期プロセス

- 変更サブスクリプション・オブジェクトの無効化と削除

11.1 変更ログの概要

Oracleバックエンド・ディレクトリは、各変更をエントリとして変更ログ・コンテナに記録します。サード・パーティのメタディレクトリ・ソリューションは、変更ログ・コンテナから変更を取得し、サード・パーティ・ディレクトリに適用します。これらの変更を取得するために、サード・パーティのメタディレクトリ・ソリューションはOracleバックエンド・ディレクトリの変更ログをサブスクライブする必要があります。

変更ログの各エントリには変更番号があります。サード・パーティのメタディレクトリ・ソリューションは、最後に適用した変更番号を記録しておき、その番号よりも大きい変更番号の変更のみをOracleバックエンド・ディレクトリから取得します。たとえば、サード・パーティのメタディレクトリ・ソリューションが取得した最後の変更の番号が250だった場合、それ以降の変更の番号は251以上になります。

注意:
サード・パーティのメタディレクトリ・ソリューションがOracleバックエンド・ディレクトリの変更ログでサブスクライブされず、ソリューションが最初に取得した変更番号が最後に適用した変更番号よりも2以上大きい場合、Oracleバックエンド・ディレクトリ変更ログ内の変更の一部が、すでにパージされています。この場合、サード・パーティのメタディレクトリ・ソリューションは、Oracleバックエンド・ディレクトリ全体を読み取り、そのコピーとOracleバックエンド・ディレクトリの情報とを同期化する必要があります。

関連項目:
ディレクトリ統合プロファイルの概念は、「Oracleディレクトリの同期に必要なコンポーネント」を参照してください。

11.2 Oracleバックエンド・ディレクトリと同期化するためのサード・パーティのメタディレクトリ・ソリューションの有効化

サード・パーティのメタディレクトリ・ソリューションがOracleバックエンド・ディレクトリから変更を取得できるようにするには、この項で説明するタスクを実行します。

- タスク1: 初期ブートストラップの実行

- タスク2: Oracleバックエンド・ディレクトリでのサード・パーティのメタディレクトリ・ソリューション用変更サブスクリプション・オブジェクトの作成

11.2.1 タスク1: 初期ブートストラップの実行

ローカル・ディレクトリとOracleバックエンド・ディレクトリ間のデータを同期化するためにディレクトリをブートストラップするには、次の手順を実行します。

1. Oracleバックエンド・ディレクトリに記録されている最後の変更番号を検索します。この番号は、DSEルート属性のlastChangeNumberにあります。
Oracleバックエンド・ディレクトリに記録されている最後の変更番号を検索するには、ldapsearchコマンドを使用します。次のコマンドを入力します。

ldapsearch -h host_name -p port_number -D binddn -q -s base \
-b "" 'objectclass=*' lastchangenumber

変更ログがすでにパージされているために変更エントリがない場合、取得される変更番号は0(ゼロ)になります。

2. ldifwriteコマンドを使用して、データをOracleバックエンド・ディレクトリからLDIFファイルにエクスポートします。

3. このLDIFファイルをクライアント・ディレクトリに適した形式に変換し、クライアント・ディレクトリにロードします。

注意:
Oracleバックエンド・ディレクトリの新規インストールでは、初期ブートストラップは不要です。この場合、新規にインストールしたOracleバックエンド・ディレクトリの現行の変更番号は0(ゼロ)です。

関連項目:
Oracleバックエンド・ディレクトリがOracle Internet Directoryである場合は、『Oracle Identity Managementユーザー・リファレンス』のOracle Internet Directoryデータ管理ツールの章のldifwriteに関する説明を参照してください。

11.2.2 タスク2: Oracleバックエンド・ディレクトリでのサード・パーティのメタディレクトリ・ソリューション用変更サブスクリプション・オブジェクトの作成

サード・パーティのメタディレクトリ・ソリューションをOracleバックエンド・ディレクトリと同期化できるようにするには、Oracleバックエンド・ディレクトリにそれに対する変更サブスクリプション・オブジェクトを作成する必要があります。この変更サブスクリプション・オブジェクトによって、Oracleバックエンド・ディレクトリに格納されている変更ログ・オブジェクトへのアクセス権限がサード・パーティのメタディレクトリ・ソリューションに付与されます。

11.2.2.1 変更サブスクリプション・オブジェクトの概要

Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合、変更サブスクリプション・オブジェクトは、次のコンテナの下にあるエントリです。

cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory

Oracle Unified DirectoryまたはOracle Directory Server Enterprise EditionがOracleバックエンド・ディレクトリである場合、変更サブスクリプション・オブジェクトは、次のコンテナの下にあるエントリです。

cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Directory Integration Platform, <suffix>

この変更サブスクリプション・オブジェクトは、サード・パーティのメタディレクトリ・ソリューションがOracleバックエンド・ディレクトリとバインドして変更を取得するための一意の資格証明を提供します。変更サブスクリプション・オブジェクトを補助オブジェクト・クラスorclChangeSubscriberと関連付けます。このオブジェクト・クラスには複数の属性がありますが、次の属性が必須です。

- userPassword
Oracleバックエンド・ディレクトリの変更ログ・オブジェクトにアクセスするときに、ディレクトリが使用するパスワード。

- orclLastAppliedChangeNumber
前回の同期で適用された変更番号。この属性によって、ディレクトリは、Oracleバックエンド・ディレクトリでの変更から未適用の変更のみを取得できます。

11.2.2.2 変更サブスクリプション・オブジェクトの作成

変更サブスクリプション・オブジェクトの作成には、ldapaddコマンドを使用します。次の例では、入力ファイルadd.ldifを使用して、次のコンテナの下でmy_change_subscription_objectという名前の変更サブスクリプション・オブジェクトの作成および有効化を行っています。

- Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合:

cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory

- Oracle Unified DirectoryまたはOracle Directory Server Enterprise EditionがOracleバックエンド・ディレクトリである場合:

cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Directory Integration Platform, <suffix>

orclLastAppliedChangeNumber属性は、初期ブートストラップ前のディレクトリにある現行の変更番号で、この例では250です。

- add.ldifファイルの編集(この例では、Oracle Internet Directoryがバックエンド・ディレクトリ):

dn: cn=my_change_subscription_object,cn=Subscriber Profile,
cn=ChangeLog Subscriber,cn=Oracle Internet Directory
userpassword: my_password
orclLastAppliedChangeNumber: 250
orclSubscriberDisable: 0
objectclass: orclChangeSubscriber
objectclass: top

- エントリの追加:

ldapadd -h my_host -D binddn -q -p PORT -f add.ldif

関連項目:
変更サブスクリプション・オブジェクトを一時的に無効にする方法、または削除する方法については、「変更サブスクリプション・オブジェクトの無効化と削除」を参照してください。

11.3 同期プロセス

この項の内容は次のとおりです。

- 接続ディレクトリで初めてOracleバックエンド・ディレクトリから変更を取得する方法

- 接続ディレクトリでOracleバックエンド・ディレクトリ内のorclLastAppliedChangeNumber属性を更新する方法

11.3.1 接続ディレクトリで初めてOracleバックエンド・ディレクトリから変更を取得する方法

次の例では、my_change_subscription_objectという名前の変更サブスクリプション・オブジェクトを持つ接続ディレクトリがOracleバックエンド・ディレクトリから変更を取得します。

ldapsearch -h my_host -D binddn -q -p PORT -b "cn=changeLog" -s one
(&(objectclass=changeLogEntry)
(changeNumber >= orclLastAppliedChangeNumber )
( ! (modifiersname =cn=my_change_subscription_object,cn=Subscriber Profile,
cn=ChangeLog Subscriber,cn=Oracle Internet Directory ) ) )

ディレクトリが初めて変更を取得する場合、orclLastAppliedChangeNumberの値は「タスク2: Oracleバックエンド・ディレクトリでのサード・パーティのメタディレクトリ・ソリューション用変更サブスクリプション・オブジェクトの作成」で設定した番号です。

フィルタ内の(!(modifiersname=client_bind_dn))引数によって、Oracleバックエンド・ディレクトリからは、接続ディレクトリ自体で行われた変更は返されません。

11.3.2 接続ディレクトリでOracleバックエンド・ディレクトリ内のorclLastAppliedChangeNumber属性を更新する方法

Oracleバックエンド・ディレクトリから変更を取得した後、接続ディレクトリはOracleバックエンド・ディレクトリ内の対応する変更サブスクリプション・オブジェクトのorclLastAppliedChangeNumber属性を更新します。これによって、Oracleバックエンド・ディレクトリは接続ディレクトリで適用済の変更をパージできます。また、これによって、接続ディレクトリは適用済の変更を無視して、最新の変更のみを取得できます。

次の例では、接続ディレクトリにmy_change_subscription_objectという名前の変更サブスクリプション・オブジェクトがあり、前回適用した変更番号が121の入力ファイルmod.ldifを使用します。この接続ディレクトリでは、Oracleバックエンド・ディレクトリ内の対応する変更サブスクリプション・オブジェクトのorclLastAppliedChangeNumberを次のように更新します。

1. mod.ldifファイルの編集:

dn: cn=my_change_subscription_object,cn=Subscriber Profile,
cn=ChangeLog Subscriber,cn=Oracle Internet Directory
changetype:modify
replace: orclLastAppliedChangeNumber
orclLastAppliedChangeNumber: 121

2. ldapmodifyコマンドを使用した編集済mod.ldifファイルのロード:

ldapmodify -h host -D binddn -q -p port -f mod.ldif

関連項目:
Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合、変更番号に応じた変更のパージの詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のガベージ・コレクションに関する章を参照してください。

11.4 変更サブスクリプション・オブジェクトの無効化と削除

既存の変更サブスクリプション・オブジェクトは、一時的に無効にすることも、削除することもできます。この項の内容は次のとおりです。

- 変更サブスクリプション・オブジェクトの無効化

- 変更サブスクリプション・オブジェクトの削除

11.4.1 変更サブスクリプション・オブジェクトの無効化

サード・パーティのメタディレクトリ・ソリューションにある既存の変更サブスクリプション・オブジェクトを一時的に無効にする場合は、orclSubscriberDisable属性を1に設定します。次の例では、入力ファイルmod.ldifを使用して、変更サブスクリプション・オブジェクトを無効にします。

- mod.ldifファイルの編集(この例では、Oracle Internet Directoryがバックエンド・ディレクトリ):

dn: cn=my_change_subscription_object,cn=Subscriber Profile,
cn=ChangeLog Subscriber,cn=Oracle Internet Directory
changetype: modify
replace: orclSubscriberDisable
orclSubscriberDisable: 1

- エントリの変更:

ldapmodify -h my_ldap_host -D binddn -q -p PORT -v -f mod.ldif

11.4.2 変更サブスクリプション・オブジェクトの削除

変更サブスクリプション・オブジェクトの削除には、ldapdeleteコマンドを使用します。次のコマンドを入力します(この例では、Oracle Internet Directoryがバックエンド・ディレクトリです)。

ldapdelete -h ldap_host -D binddn -q -p ldap_port
"cn=my_change_subscription_object,cn=Subscriber Profile,
cn=ChangeLog Subscriber,cn=Oracle Internet Directory"

第IV部

Oracle Directory Integration Platformによるプロビジョニング

この部では、プロビジョニングと、アプリケーションがユーザー・エントリまたはグループ・エントリ、あるいは追跡の必要な属性に対する変更を受信するために使用するプロセスに関する概念やコンポーネントについて説明します。次の章が含まれます:

- 第12章「Oracle Directory Integration Platformでのプロビジョニングの概要」

- 第13章「プロビジョニング統合アプリケーションのデプロイ」

- 第14章「Oracleプロビジョニング・イベント・エンジンの概要」

- 第15章「Oracle E-Business Suiteとのプロビジョニング・データの統合」

12 Oracle Directory Integration Platformでのプロビジョニングの概要

11gリリース1(11.1.1)では、異なる使用例について最適化された2つの補完的プロビジョニング製品が提供されています。

- Oracle Identity Manager: ディレクトリ、データベース、メインフレーム、独自のテクノロジ、フラット・ファイルなどを含む高度な異種テクノロジによる複合環境の管理を目的として設計されたエンタープライズ・プロビジョニング・プラットフォームです。Oracle Identity Managerでは、豊富な一連の監査およびコンプライアンス機能とともに、フル装備のワークフローおよびポリシー機能を提供します。

- Oracle Directory Integration Platform(Identity Managementインフラストラクチャのコンポーネント): ディレクトリ中心の環境でディレクトリ同期だけでなくプロビジョニング・タスクも実行するように設計されたメタディレクトリ・テクノロジです。Oracle Directory Integration Platformは、ディレクトリや互換性のあるOracle製品で構成される、より同質的な環境を管理できるように設計されています。Oracle Directory Integration Platformでは、データ同期を使用してプロビジョニング・タスクを実行し、ワークフローやフル機能のポリシー・エンジンが不要な場合には小規模なデプロイ・フットプリントを提供します。

注意:
Oracle Directory Integration Platformのプロビジョニング機能を使用するには、Oracle Internet Directoryをバックエンド・ディレクトリとして使用する必要があります。

この章では、Oracle Directory Integration Platformプロビジョニングについて説明します。この章の内容は、次のとおりです。

- プロビジョニングの概要

- Oracle Directory Integration Platform Serviceの構成要素

- プロビジョニング概念の概要

- プロビジョニング方式の概要

- Oracle Internet Directoryバックエンド・ディレクトリのユーザー・プロファイルの構成

- プロビジョニング・フローの概要

- 管理権限の委任方法

関連項目:

- 『Oracle Fusion Middleware Oracle Identity Managementアプリケーション開発者ガイド』のプロビジョニング統合アプリケーションの開発に関する章

12.1 プロビジョニングの概要

プロビジョニングとは、ユーザー、グループ、およびその他のオブジェクトに対し、エンタープライズ環境で使用する可能性のあるアプリケーションや他のリソースへのアクセスを提供するプロセスです。プロビジョニング統合アプリケーションとは、プロビジョニング・イベント用に、Oracle Internet Directoryバックエンド・ディレクトリにプロビジョニング統合プロファイルが登録されているアプリケーションです。アプリケーション固有のディレクトリにあるすべてのユーザー・エントリをOracle Internet Directoryバックエンド・ディレクトリのエントリと同期化するだけでなく、特定のアプリケーションをプロビジョニングしてエントリの一部のみに関する通知を受信することが可能です。たとえば、Oracle Human Resources用のディレクトリには、通常、企業のすべての従業員に関するデータが含まれており、一般的にはそのデータすべてをOracle Internet Directoryバックエンド・ディレクトリと同期します。ただし、他のアプリケーション(Oracle Emailなど)をプロビジョニングして、メンバーが特定グループに加入するか、そのグループから脱退した場合にのみ通知を受けることも可能です。

Oracle Identity Managementのデプロイでアプリケーションにユーザー・アカウントをプロビジョニングするには、まずそのアカウントをOracle Internet Directoryバックエンド・ディレクトリに作成しておく必要があります。ユーザー・アカウントは、次のツールまたは方法を使用してOracleバックエンド・ディレクトリに作成します。

- Oracle Internet Directoryプロビジョニング・コンソール

- Directory Integrationアシスタントのbulkprov操作

- 他のOracleディレクトリおよびサード・パーティ・ディレクトリとの同期

- LDAPコマンドライン・ツール

Oracle Directory Integration Platform Serviceは、Oracle Internet Directoryバックエンド・ディレクトリでのユーザー・エントリの作成方法にかかわらず、任意のエントリに対して起動できます。ただし、Oracleバックエンド・ディレクトリにユーザー・エントリを作成すれば、Oracle Identity Management環境のすべてのアプリケーションにアクセスできるわけではありません。ユーザー・アカウントは、管理者が手動でプロビジョニングするか、アプリケーションのプロビジョニング・ポリシーに従って自動でプロビジョニングする必要があります。アプリケーションのデフォルト・プロビジョニング・ポリシーは、次のいずれかです。

- すべてのユーザーをプロビジョニングします。

- ユーザーをプロビジョニングしません。

- プロビジョニング・ポリシーの評価後にユーザーをプロビジョニングします。

プロビジョニング・ポリシーは、エンタープライズ環境ごとの要件に全面的に依存します。たとえば、ある組織では、すべてのユーザーを電子メール・アプリケーションにアクセスできるようプロビジョニングする一方で、人事管理アプリケーションにアクセス可能なプロビジョニング・ユーザーを制限することが可能です。

12.2 Oracle Directory Integration Platform Serviceの構成要素

Oracle Directory Integration Platform Serviceの構成要素は、次のとおりです。

- Oracle Directory Integration Platform。

関連項目:
第4章「Oracle Directory Integration Platformの操作」

- ユーザーをプロビジョニングする各プロビジョニング統合アプリケーションのプロビジョニング統合プロファイル。oidprovtoolを使用してプロビジョニング統合プロファイルを作成します。

関連項目:
oidprovtoolの詳細は、「oidprovtoolを使用したプロビジョニング・プロファイルの管理」を参照してください。

12.3 プロビジョニング概念の概要

この項では、Oracle Directory Integration Platformプロビジョニングでアプリケーションがどのようにプロビジョニングされるかについて説明します。内容は次のとおりです。

- 同期プロビジョニング

- 非同期プロビジョニング

- プロビジョニングのデータ・フロー

12.3.1 同期プロビジョニング

プロビジョニング統合アプリケーションでは、Oracle Internet Directoryバックエンド・ディレクトリまたは接続リポジトリでユーザー情報を管理できます。Oracle Internet Directoryでユーザー情報を管理するアプリケーションでは、データ・アクセスJavaプラグインを使用して、Oracle Internet Directoryに変更が発生するたびにユーザー・エントリを作成、変更および削除できます。

関連項目:
データ・アクセスJavaプラグインの詳細は、『Oracle Fusion Middleware Oracle Identity Managementアプリケーション開発者ガイド』を参照してください。

データ・アクセスJavaプラグインは、LDAPコマンドライン・ツールなどのOracle Identity Managementから、直接起動できます。このため、データ・アクセスJavaプラグインを使用してプロビジョニングできるアプリケーションは同期的にプロビジョニングされ、個別のプロビジョニング・イベントをOracle Directory Integration Platformからアプリケーションに送信する必要はありません。データ・アクセスJavaプラグインは、Oracle Directory Integration PlatformにSUCCESSまたはFAILUREのいずれかを返します。実行ステータスSUCCESSがデータ・アクセスJavaプラグインに返される場合、プロビジョニング・ステータスも返され、特定のプロビジョニング統合アプリケーション用にOracle Internet Directoryのユーザーのプロビジョニング・ステータス属性に記録されます。ステータスFAILUREが新しいユーザー割当てリクエストに返される場合、ユーザーのプロビジョニング・ステータスは、値PROVISIONING_FAILUREに割り当てられます。プロビジョニング・ステータスのリストの詳細は、「Oracle Internet Directoryのプロビジョニング・ステータス」を参照してください。

同期プロビジョニングは、次のプロセスに従って行われます。

1. 次のソースのいずれかに基づいて、Oracle Internet Directoryに新規ユーザー・エントリが作成されます。

- Oracle Enterprise Managerユーザー・インタフェース

- Directory Integrationアシスタントによるバルク・プロビジョニング

- 接続されているOracleディレクトリおよびサード・パーティ・ディレクトリとの同期

2. 新規ユーザー・エントリを作成したOracle Identity Managementコンポーネントは、データ・アクセスJavaプラグインを起動します。

3. データ・アクセスJavaプラグインは、アプリケーションに新規ユーザー・アカウントをプロビジョニングします。

図12-1に、LDAPコマンドライン・ツールを使用してアプリケーションが同期的にプロビジョニングされる場合のプロセスを示します。

図12-1 LDAPコマンドライン・ツールによる同期プロビジョニング

LDAPコマンドライン・ツールを使用した同期プロビジョニングは、次のプロセスに従います。

1. LDAPコマンドライン・ツールにより、Oracle Internet Directoryバックエンド・ディレクトリに新しいユーザー・エントリが作成されます。

2. 次にスケジュールされた同期間隔で、Oracle Directory Integration Platformは、プロビジョニングの必要な新規ユーザー・エントリがOracle Internet Directoryに存在することを確認します。

3. Oracle Directory Integration Platformは、データ・アクセスJavaプラグインを起動します。

4. データ・アクセスJavaプラグインは、アプリケーションに新規ユーザー・アカウントをプロビジョニングします。

12.3.2 非同期プロビジョニング

Oracle Directory Integration Platformは、PL/SQLイベントをプロビジョニング統合アプリケーションに伝播した後、このアプリケーションがイベントを処理するためにPL/SQLプラグインを実行します。PL/SQLプラグインの実行は、アプリケーション・リポジトリ内で発生し、任意のOracle Identity Managementコンポーネントのアドレス空間では発生しません。プロビジョニングは、任意のOracle Identity ManagementのコンポーネントではなくPL/SQLプラグインによって処理されるため、PL/SQLプラグインを実装するプロビジョニング統合アプリケーションは、非同期的にプロビジョニングされます。PL/SQLプラグインは、Oracle Directory Integration PlatformにSUCCESSまたはFAILUREのステータスを返します。ステータスSUCCESSがPL/SQLプラグインに返される場合、プロビジョニング・ステータスも返され、特定のプロビジョニング統合アプリケーション用にOracle Internet Directoryのユーザーのプロビジョニング・ステータス属性に記録されます。ステータスFAILUREが新しいユーザー割当てリクエストに返される場合、ユーザーのプロビジョニング・ステータスは、値PROVISIONING_FAILUREに割り当てられます。プロビジョニング・ステータスのリストの詳細は、「Oracle Internet Directoryのプロビジョニング・ステータス」を参照してください。

非同期プロビジョニングは、次のプロセスに従って行われます。

1. 次のソースのいずれかに基づいて、Oracle Internet Directoryに新規ユーザー・エントリとアプリケーション固有のユーザー・プリファレンスを含む関連エントリが作成されます。

- Oracle Enterprise Managerユーザー・インタフェース

- provProfileBulkProvコマンドによるバルク・プロビジョニング

- 接続されているOracleディレクトリおよびサード・パーティ・ディレクトリとの同期

2. 次にスケジュールされた同期間隔で、Oracle Directory Integration Platformは、プロビジョニングの必要な新規ユーザー・エントリがOracle Internet Directoryに存在することを確認します。

3. Oracle Directory Integration PlatformからPL/SQLプラグインにプロビジョニング・イベントが送信されます。

図12-2に、LDAPコマンドライン・ツールを使用してアプリケーションが非同期的にプロビジョニングされる場合のプロセスを示します。

図12-2 LDAPコマンドライン・ツールによる非同期プロビジョニング

図12-2に示されているとおり、LDAPコマンドライン・ツールを使用した非同期プロビジョニングは、次のプロセスに従います。

1. LDAPコマンドライン・ツールを使用して、Oracle Internet Directoryバックエンド・ディレクトリに新しいユーザー・エントリが作成されます。

2. 次にスケジュールされた同期間隔で、Oracle Directory Integration Platformは、プロビジョニングの必要な新規ユーザー・エントリがOracle Internet Directoryに存在することを確認し、アプリケーション固有のユーザー・プリファレンスを含む関連エントリを作成します。

3. Oracle Directory Integration PlatformからPL/SQLプラグインにプロビジョニング・イベントが送信されます。

12.3.3 プロビジョニングのデータ・フロー

プロビジョニングが同期的か非同期的かにかかわらず、アプリケーションでは、プロビジョニング・インテリジェンス機能を拡張してビジネス・ポリシーを実装するために、プレデータ・エントリ・プラグインとポストデータ・エントリ・プラグインを起動できます。どちらのプラグインも、Oracle Internet Directoryプロビジョニング・コンソールなどのOracle Identity Managementコンポーネントや、provProfileBulkProvコマンドによるバルク・プロビジョニングによって起動されます。

プレデータ・エントリ・プラグインは、プロビジョニング・ポリシーに基づいてフィールドの移入を行います。このプラグインの主な目的は、アプリケーションにユーザーをプロビジョニングするかどうかを決定することです。たとえば、財務管理アプリケーションにはマネージャのみをプロビジョニングするというポリシーを持つ組織の場合、プレデータ・エントリ・プラグインを使用することで、どのユーザー・エントリをプロビジョニングするかを判別できます。共通のユーザー属性はこのプラグインの起動時にすでに移入されているため、プロビジョニングの決定を行うための十分な情報がすでに存在していることになります。

ポストデータ・エントリ・プラグインは、主に、ユーザーによって入力された共通属性とアプリケーション固有属性に関するデータを検証します。プロビジョニングを続けるためには、このプラグインでの検証に成功する必要があります。

図12-3に、プレデータ・エントリおよびポストデータ・エントリ・プラグインを使用したプロビジョニングのデータ・フローを示します。

図12-3 プロビジョニングのデータ・フロー

「図12-3 プロビジョニングのデータ・フロー」の説明

図12-3に示されているとおり、プロビジョニングのデータ・フローは、次のプロセスに従います。

1. ベース・ユーザー情報が作成されます。

2. プレデータ・エントリ・プラグインが起動し、ポリシーに基づいてフィールドの移入が行われます。

3. ポストデータ・エントリ・プラグインが起動し、ユーザーが入力したデータが検証されます。

4. プロビジョニング方式に応じて、非同期または同期プロビジョニング・プロシージャが起動します。

12.4 プロビジョニング方式の概要

この項では、Oracle Identity Managementでユーザーをプロビジョニングする手順について説明します。内容は次のとおりです。

- 外部ソースから同期化されたユーザーのプロビジョニング

- LDAPコマンドライン・ツールで作成されたユーザーのプロビジョニング

- provProfileBulkProvツールを使用したバルク・プロビジョニング

- オンデマンド・プロビジョニング

- アプリケーション・ブートストラップ

12.4.1 外部ソースから同期化されたユーザーのプロビジョニング

Oracle Internet Directoryが中央リポジトリとして使用され、エンタープライズ・ユーザー・エントリが接続ディレクトリからOracle Internet Directoryバックエンド・ディレクトリに同期化される場合、各ユーザー・アイデンティティは、プロビジョニング統合アプリケーションごとのデフォルト・プロビジョニング・ポリシーに従って自動的にプロビジョニングされます。

12.4.2 LDAPコマンドライン・ツールで作成されたユーザーのプロビジョニング

オラクル社、または標準のLDAPコマンドライン構文を利用するサード・パーティ・ベンダーによって開発された任意のツールを使用して、Oracle Internet Directoryにユーザー・エントリを作成できます。外部ソースから同期化されたユーザー・エントリの場合と同様に、LDAPコマンドライン・ツールまたはその他の方法によって作成されたユーザー・エントリは、プロビジョニング統合アプリケーションごとのデフォルト・プロビジョニング・ポリシーに従ってプロビジョニングされます。

12.4.3 provProfileBulkProvツールを使用したバルク・プロビジョニング

ORACLE_HOME/binディレクトリにあるprovProfileBulkProvユーティリティを使用して、プロビジョニング・プロファイルのために、LDIFファイルからOracle Internet Directoryへの初期のデータ移行を実行します。

注意:

- 最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。

- Oracle Directory Integration Platformコマンドのいずれかを実行するには、あらかじめWLS_HOME環境変数とORACLE_HOME環境変数を設定しておく必要があります。

- Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

12.4.3.1 provProfileBulkProvの構文

provProfileBulkProv

provProfileBulkProv -h HOST -p PORT -D wlsuser -file LDIF_FILE -realm REALM_DN
[-ssl -keystorePath PATH_TO_KEYSTORE -keystoreType TYPE]
[-encoding INPUT_ENCODING] [-help]

12.4.3.2 provProfileBulkProvの引数

-h | -host

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Serverホスト。

-p | -port

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverのリスニング・ポート。

-D | -wlsuser

Oracle WebLogic ServerのログインID。

注意:
Oracle WebLogic Serverのログイン・パスワードを要求されます。パスワードをコマンドライン引数として指定することはできません。最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。スクリプトからprovProfileBulkProvを実行する必要がある場合、Oracle WebLogic Serverパスワードを含むファイルから、入力をリダイレクトできます。ファイル権限を使用してファイルを保護し、不要になったら権限を削除します。

-f | -file

移行されるデータを含むLDIFファイル。

-realm

ユーザーがプロビジョニングされるレルム。

-ssl

SSLモードでコマンドを実行します。

注意:
Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

-keystorePath

キーストアへのフルパス。

-keystoreType

-keystorePathで識別されるキーストアのタイプ。たとえば、-keystorePath jksまたは-keystorePath PKCS12などです。

-encoding

入力ファイル・エンコーディング。

-help

コマンドの使用方法のヘルプを提供します。

12.4.3.3 provProfileBulkProvのタスクと使用例

provProfileBulkprov -h myhost.mycompany.com -p 7005 -D login_ID \
-f /opt/ldap/odip/users.ldif -realm cn=aaaa,ou=bbbb,dc=cccc

12.4.4 オンデマンド・プロビジョニング

オンデマンド・プロビジョニングは、ユーザーがアプリケーションにアクセスし、そのアプリケーションのリポジトリにユーザーの情報が存在しない場合に発生します。アプリケーションは、デフォルト・プロビジョニング・ポリシーに基づいてユーザー・アカウントをプロビジョニングするかどうかを決定します。リポジトリにユーザー・アカウントをプロビジョニングした後、アプリケーションは、Oracle Internet Directoryバックエンド・ディレクトリのユーザー・エントリのプロビジョニング・ステータスを更新します。

12.4.5 アプリケーション・ブートストラップ

Oracle Directory Integration Platform Serviceは、新規登録されたアプリケーションにOracle Internet Directoryのすべての既存ユーザー・エントリを通知し、各既存ユーザー・エントリをアプリケーションの新規ユーザーであるかのようにプロビジョニングします。

12.5 Oracle Internet Directoryバックエンド・ディレクトリのユーザー・プロファイルの構成

この項では、Oracle Internet Directoryバックエンド・ディレクトリのユーザー・プロファイルの構成について説明します。内容は次のとおりです。

- ディレクトリ情報ツリーのプロビジョニング・エントリの構成

- ユーザー・プロビジョニング・ステータスの概要

12.5.1 ディレクトリ情報ツリーのプロビジョニング・エントリの構成

Oracle Directory Integration Platformプロビジョニングは、個人情報と、ユーザーがプロビジョニングされる様々なアプリケーション用の設定を含む属性で構成されるディレクトリ情報ツリー(DIT)のユーザー・プロファイルに依存します。Oracle Directory Integration Platform Serviceのこれらのユーザー属性は、次のように分類されます。

- すべてのユーザー・エントリで使用されるベース属性

- ユーザーがアプリケーションにプロビジョニングされる場合にのみ使用されるアプリケーション固有属性

ベース・ユーザー属性は、主にorganizationalPersonやinetOrgPersonなどの標準LDAPオブジェクト・クラスに属し、氏名、電子メール・アドレスおよび電話番号を含む個人の詳細情報で構成されます。ベース・ユーザー属性は、orclUserV2補助クラスに属するOracleアプリケーション固有の属性でも構成されます。

Oracle Internet Directoryバックエンド・ディレクトリは、ベース属性およびアプリケーション固有属性の両方のプライマリ・リポジトリです。両方のタイプの属性は、各ユーザーのプロファイルに格納されています。ただし、アプリケーションは、プロビジョニング・イベント通知サービスで更新されるユーザー属性をキャッシュできます。図 12-4に示すように、ユーザー属性はDITの2つの場所に格納されています。ベース・ユーザー・エントリ(inetorgpersonおよびorcluserv2に属す属性を含む)は、cn=users,Realm DNに格納されます。各ユーザー・エントリのプロビジョニング・ステータスも、ベース・ユーザー・エントリに格納されています。アプリケーション固有の属性は、アプリケーション・コンテナの個別のエントリに存在します。アプリケーション固有の属性定義に関連するLDAPスキーマおよびオブジェクト・クラスは、インストール処理またはアップグレード処理で作成されます。アプリケーション固有の属性は補助オブジェクト・クラスで修飾されるため、エントリのアプリケーション固有のユーザー・プロパティの検索が有効になります。デフォルトでは、アプリケーション固有のエントリは、cn=User Properties, cn=Application Type, cn=Products,cn=OracleContext, Realm DNコンテナにorclOwnerGUID=GUID of the Base Userとして格納されています。一部のアプリケーションは、自身のアプリケーション属性を管理してデータ・アクセスJavaプラグインを実装します(詳細は、「プロビジョニング概念の概要」で説明しています)。Oracle Directory Integration Platformサービスは、ベース・ユーザー属性またはアプリケーション固有の属性が変更される場合、常にこのプラグインを起動します。

図12-4 ベース・ユーザー属性とアプリケーション固有属性

「図12-4 ベース・ユーザー属性とアプリケーション固有属性」の説明

12.5.2 ユーザー・プロビジョニング・ステータスの概要

この項では、Oracle Internet Directoryのユーザー・プロビジョニング・ステータスについて説明します。内容は次のとおりです。

- Oracle Internet Directoryのプロビジョニング・ステータス

- プロビジョニング・ステータスの遷移

- アップグレードと共存プロビジョニング・ステータス

- プロビジョニング・ステータスと例外処理

12.5.2.1 Oracle Internet Directoryのプロビジョニング・ステータス

Oracleプロビジョニング・サービスでは、プロビジョニング統合アプリケーションごとに、Oracle Internet Directoryにユーザーのプロビジョニング・ステータスが記録されます。プロビジョニング・ステータスは、Oracle Directory Integration Platform、provProfileBulkProvコマンドによるバルク・プロビジョニング、またはプロビジョニング統合アプリケーションによって設定されます。表12-1に、プロビジョニング・ステータスのリストを示します。

表12-1 Oracle Internet Directoryのプロビジョニング・ステータス

内部ステータス

GUIステータス

説明

プロビジョニング・ステータス

PROVISIONING_REQUIRED

保留

プロビジョニングが必要です。このステータスは、管理者が選択するか、アプリケーションのプロビジョニング・ポリシーに従って設定されます。このステータスにより、ユーザーがプロビジョニングされているかどうかが決定することに注意してください。

PROVISIONING_IN_PROGRESS

進行中

プロビジョニングが進行中です。スケジュールされた間隔でアプリケーションによりプロビジョニングが実行される場合、現行のステータスがこのステータスであれば、ユーザーはアプリケーションにアクセスできます。アプリケーションでは、ユーザーをオンデマンドでプロビジョニングすることが可能です。

PROVISIONING_SUCCESSFUL

成功

プロビジョニングに成功しました。このステータスは、Oracle Directory Integration Platform、provProfileBulkProvコマンドによるバルク・プロビジョニング、またはプロビジョニング統合アプリケーションによって自動的に更新されます。

PROVISIONING_NOT_REQUIRED

リクエストなし

プロビジョニングは必要ありません。このステータスは、管理者が選択するか、アプリケーションのプロビジョニング・ポリシーに従って設定されます。このステータスにより、ユーザーが今後プロビジョニングされるかどうかが決定することに注意してください。

PROVISIONING_FAILURE

失敗

プロビジョニングに失敗しました。このステータスは、Oracle Directory Integration Platform、provProfileBulkProvコマンドによるバルク・プロビジョニング、またはプロビジョニング統合アプリケーションによって自動的に更新されます。このステータスである場合、ユーザーはアプリケーションにアクセスできません。

プロビジョニング解除ステータス

DEPROVISIONING_REQUIRED

プロビジョニング解除が保留中です

プロビジョニング解除が必要です。このステータスである場合、ユーザーはまだプロビジョニングされています。

DEPROVISIONING_IN_PROGRESS

プロビジョニング解除が進行中です

プロビジョニング解除が進行中です。

DEPROVISIONING_SUCCESSFUL

正常にプロビジョニング解除されました

プロビジョニング解除に成功しました。このステータスである場合、ユーザーはアプリケーションにアクセスできません。

DEPROVISIONING_FAILURE

プロビジョニング解除に失敗しました

プロビジョニング解除に失敗しました。このステータスである場合、ユーザーはまだプロビジョニングされています。

アップグレード・ステータス

PENDING_UPGRADE

アップグレードが保留中です

プロビジョニングのアップグレードが保留中です。

UPGRADE_IN_PROGRESS

アップグレードが進行中です

プロビジョニングのアップグレードが進行中です。

UPGRADE_FAILURE

アップグレードに失敗しました

プロビジョニングのアップグレードに失敗しました。

各アプリケーションのプロビジョニング・ステータスは、ユーザー・エントリのorclUserApplnProvStatus属性に格納されます。この属性は、Oracle Internet Directoryで索引付けされており、検索可能です。プロビジョニング統合アプリケーションごとに、サブタイプのorclUserApplnProvStatus属性が作成されます。たとえば、次の文には、電子メール・アプリケーションとスケジュール・アプリケーションに対するユーザーのプロビジョニング・ステータスが格納されています。電子メール・アプリケーションに対するユーザーのプロビジョニング・ステータスはPROVISIONING_SUCCESSですが、スケジュール・アプリケーションに対するプロビジョニング・ステータスはPROVISIONING_FAILUREです。

orclUserApplnProvStatus;CORP-MAIL_E-MAIL:PROVISIONING_SUCCESS
orclUserApplnProvStatus;CORP-SCHEDULE_CALENDAR:PROVISIONING_FAILURE

アプリケーションのユーザーのプロビジョニング・ステータスについての追加情報はorclUserApplnProvStatusDesc属性に格納され、各アプリケーションのプロビジョニングの失敗アカウントはorclUserApplnProvFailureCount属性に格納されています。orclUserApplnProvStatus属性と同様に、個別のorclUserApplnProvStatusDesc属性およびorclUserApplnProvFailureCount属性は、各プロビジョニング統合アプリケーション用に作成されます。orclUserApplnProvStatusDesc属性の書式はorclUserApplnProvStatus属性と同じですが、次のように、タイムスタンプおよび説明文がアプリケーション名およびタイプに追加されます。

orclUserApplnProvStatusDesc;CORP-MAIL_E-MAIL:20040101010101^Missing employee ID

orclUserApplnProvStatus、orclUserApplnProvStatusDescおよびorclUserApplnProvFailureCount属性は、オプション属性としてorclUserProvStatusオブジェクト・クラスに格納されます。

12.5.2.2 プロビジョニング・ステータスの遷移

表12-2に、有効なプロビジョニング・ステータスの遷移を示します。

表12-2 Oracle Internet Directoryでの有効なプロビジョニング・ステータスの遷移

内部ステータス

GUIステータス

有効な遷移元

プロビジョニング・ステータス

PROVISIONING_REQUIRED

保留

初期不明状態

DEPROVISIONING_SUCCESSFUL

PROVISIONING_IN_PROGRESS

進行中

PROVISIONING_REQUIRED

PROVISIONING_SUCCESSFUL

成功

PROVISIONING_REQUIRED

PROVISIONING_IN_PROGRESS

PROVISIONING_FAILURE

PROVISIONING_NOT_REQUIRED

リクエストなし

初期不明状態

PROVISIONING_FAILURE

失敗

PROVISIONING_REQUIRED

PROVISIONING_IN_PROGRESS

プロビジョニング解除ステータス

DEPROVISIONING_REQUIRED

プロビジョニング解除が保留中です

PROVISIONING_SUCCESSFUL

DEPROVISIONING_IN_PROGRESS

プロビジョニング解除が進行中です

PROVISIONING_SUCCESSFUL

DEPROVISIONING_SUCCESSFUL

正常にプロビジョニング解除されました

DEPROVISIONING_REQUIRED

DEPROVISIONING_IN_PROGRESS

DEPROVISIONING_FAILURE

DEPROVISIONING_FAILURE

プロビジョニング解除に失敗しました

DEPROVISIONING_REQUIRED

DEPROVISIONING_IN_PROGRESS

図12-5に、有効なプロビジョニング・ステータスの遷移を示します。

図12-5 有効なプロビジョニング・ステータスの遷移

「図12-5 有効なプロビジョニング・ステータスの遷移」の説明

12.5.2.3 アップグレードと共存プロビジョニング・ステータス

Oracle Identity Management 11gリリース1(11.1.1)では、Oracle Internet Directory内の1つのユーザー・エントリが、複数のLDAPエントリによって物理的に示されることがあります。ベース・ユーザー・エントリ以外に、プロビジョニング統合アプリケーションごとに複数の独立したLDAPエントリが存在する可能性があります。

Oracle Identity Managementの通常のアップグレードでは、複数の中間層は同時にアップグレードされません。つまり、Oracle Identity Managementのアップグレード後も、旧バージョンの中間層とアップグレード・バージョンの中間層を同時に実行する必要がある場合があります。中間層をアップグレードすると、アプリケーションのメタデータ・リポジトリに格納されていたユーザーのアプリケーション固有データは、すべて必要に応じて移行されます。Oracle Directory Integration Platformは、アップグレード前からOracle Internet Directoryバックエンド・ディレクトリに存在しているユーザー・エントリごとに新規ユーザー・イベントを起動し、各ユーザー・エントリにPENDING_UPGRADEというプロビジョニング・ステータスを割り当てます。新規ユーザー・エントリが、古い中間層や一部のサポートされない手順(標準のLDAP SDKを使用した既存アプリケーションなど)によって作成されると、プロビジョニング・ステータス属性は失われます。この場合も、Oracle Directory Integration Platformは、新規ユーザー・イベントを起動し、各ユーザー・エントリにPENDING_UPGRADEというプロビジョニング・ステータスを割り当てます。

イベントを受信したプロビジョニング統合アプリケーションは、ユーザーがプロビジョニングされているかどうかを示すレスポンスをOracle Directory Integration Platformに返します。Oracle Directory Integration Platformは、そのレスポンスに従ってユーザー・エントリのプロビジョニング・ステータスを更新します。

12.5.2.4 プロビジョニング・ステータスと例外処理

ユーザー・インタフェースで作成されたか、外部データソースを使用した同期を通して作成された新しいユーザー・エントリが、特定のアプリケーションでユーザーをプロビジョニングするための十分な情報を含まない場合、プロビジョニングは失敗する場合があります。プロビジョニングは、その他の様々な理由で失敗する可能性もあります。Oracle Directory Integration Platform Serviceは、ユーザー・プロビジョニングの失敗を例外として識別します。アプリケーションがUSER_ADDイベントに失敗のステータスで応答する場合、Oracle Directory Integration Platformは常にユーザーのプロビジョニング・ステータスをPROVISIONING_FAILUREに変更します。次に、Oracle Directory Integration Platformは、この失敗を新しいユーザーの場合と同様にアプリケーションに通知します。これは、プロビジョニング要求の再試行として機能します。ユーザーのプロビジョニング・ステータスは、ユーザー・インタフェースに表示されます。管理者は問題の修正に必要な変更を行うことができ、プロビジョニングは自動的に再試行されます。これによって、プロビジョニングが同期的な場合にデータ・アクセス・プラグインが起動されます。一方、プロビジョニングが非同期的な場合はイベントが伝播されます。この一連のステップはユーザーが正常にプロビジョニングされない間再試行されます。

12.6 プロビジョニング・フローの概要

この項では、様々なプロビジョニング・シナリオでの情報および制御のフローについて説明します。内容は次のとおりです。

- Fusion Middleware Controlを使用したプロビジョニング・プロファイルの表示および編集

- 外部ソースからのユーザー・プロビジョニング

12.6.1 Fusion Middleware Controlを使用したプロビジョニング・プロファイルの表示および編集

11gリリース1(11.1.1)の時点では、次の手順に従って、Oracle Enterprise Manager Fusion Middleware Controlを使用してプロビジョニング・プロファイルを表示および編集します。

1. Webブラウザを開き、使用している環境のOracle Enterprise Manager Fusion Middleware ControlのURLを入力します。Oracle Enterprise Manager Fusion Middleware ControlのURLの形式は、https://host:port/emです。

2. Oracle Enterprise Manager Fusion Middleware Controlにログインします。

3. 左のナビゲーション・パネルで、「Identity and Access」エントリをクリックするか展開し、続いて、表示または編集するプロファイルを含むDIPコンポーネントを選択します。

4. 「DIPサーバー」メニューから「管理」→「プロビジョニング・プロファイル」を選択します。「プロビジョニング・プロファイルの管理」画面が表示され、既存のプロビジョニング・プロファイルが表示されます。
表示されるプロビジョニング・プロファイルの属性を変更するには、「表示」→「列」をクリックして、表示または非表示にする属性を選択します。また、「表示」→「列の並替え」をクリックすると、プロビジョニング・プロファイルの列を並べ替えることができます。

プロビジョニング・プロファイルを有効または無効にするには、適切なプロファイルをクリックして「有効化」または「無効化」をクリックします。

プロビジョニング・プロファイルを編集するには、編集するプロファイルをクリックして「編集」をクリックします。プロファイルの属性が表示されます。必要に応じて設定を編集し、「OK」をクリックして変更を保存します。表12-3に、プロビジョニング・プロファイルのフィールドおよび説明を示します。

表12-3 プロビジョニング・プロファイルのフィールド

フィールド名

説明

プロファイル名

編集するプロファイルの名前。作成後にプロファイル名を編集することはできません。このフィールドは、編集するプロファイルを識別するためにのみ提供されています。

アプリケーション名

プロビジョニング・プロファイルが適用されるアプリケーションの名前。

プロファイルのバージョン

プロビジョニング・プロファイルのバージョン。

アプリケーションからOIDへ

アプリケーションとOracleバックエンド・ディレクトリ間の関係において、プロビジョニング・プロファイルを「構成済」または「有効」に設定するためのオプション。

OIDからアプリケーションへ

アプリケーションとOracleバックエンド・ディレクトリ間の関係において、プロビジョニング・プロファイルを「構成済」または「有効」に設定するためのオプション。

スケジュール済の間隔(HH: MM: SS)

接続ディレクトリとアプリケーションとOracle Internet Directoryバックエンド・ディレクトリ間の関係のプロビジョニングの、試行間隔の時間数、分数および秒数を指定します。

最終実行

前回のプロビジョニング試行のステータス(「成功」または「失敗」)および実行時間を表示します。

12.6.2 外部ソースからのユーザー・プロビジョニング

デプロイでは、多くの場合サード・パーティのエンタープライズ・ユーザー・リポジトリなどの外部ソースからユーザーをプロビジョニングすると予想されます。このようなタイプのデプロイでは、サード・パーティ・リポジトリによってOracle Internet Directoryバックエンド・ディレクトリがブートストラップされます。Oracle Directory Integration Platformでは、Oracle Internet Directoryと接続リポジトリ間の継続的な同期を提供します。接続ユーザー・リポジトリの例には、Human Resourcesや、Microsoft Active Directory、Oracle Directory Server Enterprise Edition(旧称Sun Java System Directory Server)、Novell eDirectory、IBM Tivoli Directory ServerおよびOpenLDAPなどのLDAPディレクトリがあります。

Oracle Directory Synchronization Serviceにより、Oracle Internet Directoryにユーザー・エントリが作成されます。外部ソースから取得される情報は、様々なアプリケーションにユーザーをプロビジョニングするには不十分である可能性があるため、アプリケーション情報の作成にはアプリケーションのデフォルトが使用されます。

Oracle Directory Synchronization Serviceでは、次のようにユーザーが作成されます。

1. Oracle Directory Synchronization Serviceは、アプリケーションで指定されたプロビジョニング・ポリシーを評価し、ユーザーをアプリケーションにプロビジョニングするかどうかを決定します。

2. Oracle Directory Synchronization Serviceは、アプリケーションに登録されているその他のプラグインを評価します。

3. Oracle Directory Integration Platform Serviceは、PL/SQLプラグインまたはデータ・アクセスJavaプラグインを起動して、ユーザー情報をアプリケーションに送信します。

4. イベント・インタフェースの使用により、アプリケーションからユーザーのプロビジョニング・ステータスが返されます。

5. Oracle Directory Integration Platform Serviceは、アプリケーション用のユーザーのプロビジョニング・ステータスを更新します。

12.7 管理権限の委任方法

Oracle Delegated Administration Servicesの管理権限は、各管理者に委任される権限によって異なります。管理者は、次のシナリオで説明されているように、ユーザーの管理およびプロビジョニング、またはアプリケーションの管理を行う権限を付与されるか、またはこれらの権限の組み合わせたものを付与されます。

- プロビジョニング管理モデル

注意:
Oracle Directory Integration Platform 11gリリース1(11.1.1)は、Oracle Delegated Administration Servicesリリース10.1.4.3.0以上をサポートしており、相互運用できます。

12.7.1 プロビジョニング管理モデル

次のタイプのプロビジョニング情報は、Oracle Internet Directoryバックエンド・ディレクトリで管理されます。

- ベース・ユーザー情報。

- アプリケーション固有情報。

- 各プロビジョニング統合アプリケーションのユーザー・プロビジョニング・ステータス。この情報は、ベース・ユーザー・エントリに格納されますが、個別に管理されます。

管理者とユーザーには、それぞれ次のタイプの権限が必要です。

- 管理者は、ベース・ユーザー属性とアプリケーション固有情報を管理するための権限が必要です。

- ユーザーは、自分自身のベース属性とアプリケーション固有情報を管理するための権限が必要です。

管理権限を保持するユーザー・アカウントは、cn=User Provisioning Admins,cn=Groups,cn=OracleContextというグループ・エントリによって示されます。アプリケーション固有情報を管理するため、アプリケーションでは、cn=User Provisioning Admins,cn=Groups,cn=OracleContextグループに権限を付与する必要があります。アプリケーションですでに管理権限を保持するグループを定義している場合は、その権限を保持するグループのメンバーとしてこのグループを追加する必要があります。

13 プロビジョニング統合アプリケーションのデプロイ

この章では、Oracleプロビジョニング・サービスを使用してプロビジョニング統合アプリケーションをデプロイする方法について説明します。内容は次のとおりです。

- プロビジョニング統合アプリケーションのデプロイの概要

- oidprovtoolを使用したプロビジョニング・プロファイルの管理

- プロビジョニング用のアプリケーションの登録

- アプリケーションのプロビジョニング・プロパティの構成

関連項目:

- 第4章「Oracle Directory Integration Platformの操作」

13.1プロビジョニング統合アプリケーションのデプロイの概要

Oracleプロビジョニング・サービスでプロビジョニング統合アプリケーションをデプロイするには、一般的に次の手順を実行します。

1. Oracle Internet DirectoryとOracle Directory Integration Platformをインストールします。

2. ユーザー情報をOracle Internet Directoryにロードします。

関連項目:
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』

3. Oracle Directory Integration Platformを起動します。

4. アプリケーションをインストールし、oidprovtoolを使用して各アプリケーションのプロビジョニング・プロファイルを作成します。詳細は、「oidprovtoolを使用したプロビジョニング・プロファイルの管理」を参照してください。

5. 「プロビジョニング用のアプリケーションの登録」で説明されている手順に従い、アプリケーション登録を構成します。

6. 「アプリケーションのプロビジョニング・プロパティの構成」で説明されている手順に従い、アプリケーション・プロビジョニングを構成します。

7. 各アプリケーションについて、プロビジョニング・イベント伝播のステータスを定期的に監視します。これは、Oracle Enterprise Manager Fusion Middleware Controlを使用して実行できます。

関連項目:
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のディレクトリの記録、監査および監視に関する章

13.2 oidprovtoolを使用したプロビジョニング・プロファイルの管理

プロビジョニングによって、たとえば、ユーザーまたはグループに関する情報の変更など、ディレクトリの変更をアプリケーションに確実に通知できます。このような変更は、アプリケーションでプロセスやリソースに対するユーザー・アクセスを許可するかどうかに影響を及ぼすことがあります。

プロビジョニング対象のアプリケーションをインストールする場合、ORACLE_HOME/binディレクトリにあるoidprovtoolコマンドを使用して、プロビジョニング統合プロファイルを作成する必要があります。

oidprovtoolを使用して、次の作業を行えます。

- 新しいプロビジョニング・プロファイルの作成。新しいプロビジョニング・プロファイルを作成し、Oracle Directory Integration Platformが処理できるように、有効化状態に設定します。

- 既存のプロビジョニング・プロファイルの無効化。

- 無効化されたプロビジョニング・プロファイルの有効化。

- 既存のプロビジョニング・プロファイルの変更。

- 既存のプロビジョニング・プロファイルの削除。

- 指定されたプロビジョニング・プロファイルの現行ステータスの取得。

- 既存のプロビジョニング・プロファイル内にあるすべてのエラーの消去。

oidprovtoolユーティリティは、ツールのコール元から、プロビジョニング・プロファイル・エントリの場所とスキーマ詳細を保護します。コール元から見ると、アプリケーションとレルムの組合せにより、プロビジョニング・プロファイルが一意に特定されます。システムには、各アプリケーションのレルムごとに存在できるプロビジョニング・プロファイルは1つのみであるという制約があります。

プロファイルが作成されると、modify操作を使用してモード(INBOUND、OUTBOUNDまたはBOTH)を変更することはできません。モードを変更するには、プロファイルを削除してから作成しなおす必要があります。

Oracle Directory Integration Platformサーバーは、Oracle Internet Directoryにおけるプロビジョニング・プロファイルの構成変更(プロビジョニング・プロファイルの作成、変更および削除を含む)を自動的に監視します。このため、プロビジョニング・プロファイルを手動で有効または無効にする必要はありません。

注意:
セキュリティを向上させるため、要求されないかぎり、oidprovtoolコマンドでパスワードを入力しないでください。

13.2.1 oidprovtoolの構文

oidprovtool

oidprovtool operation=[create|modify] ldap_host=oid_hostname ldap_port=port
ldap_user_dn="bindDN" ldap_user_password=password
[profile_mode=INBOUND|OUTBOUND|BOTH]
application_dn="DN" application_type=type [application_name=name]
[application_display_name=display name] organization_dn=DN
[application_isdasvisible=TRUE|FALSE] [manage_application_defaults=TRUE|FALSE]
[enable_bootstrap=TRUE|FALSE]  [user_data_location=DN]
[default_provisioning_policy=PROVISIONING_REQUIRED|PROVISIONING_NOT_REQUIRED]
interface_name=SCHEMA.PACKAGE [interface_type=PLSQL|JAVA]
interface_version=1.1|2.0|3.0] interface_connect_info=connection_string
schedule=number_seconds lastchangenumber=number
max_prov_failure_limit=number
max_events_per_schedule=number max_events_per_invocation=number
event_mapping_rules="OBJECT_TYPE:FILTER:DOMAIN"
event_permitted_operations="OBJECT:DOMAIN:OPERATION(attributes,...)"
event_subscription="USER|GROUP:DOMAIN:OPERATION(attributes,...)"
max_events_per_schedule=number max_retries=number profile_group=number
profile_status=ENABLED | DISABLED profile_debug=debug_level

oidprovtool {operation=enable|disable|delete|status|reset}
application_dn=DN [organization_dn=DN] [ldap_host=oid_hostname] [ldap_port=port]
[ldap_user_dn=bindDN] [ldap_user_password=password] [profile_debug=debug_level]

13.2.2 oidprovtoolの引数

operation=create | modify | enable | disable | delete | status | reset

必須。oidprovtoolを使用して実行する操作。一度に1つの操作のみ実行できます。操作は次のとおりです。

- create: 新しいプロビジョニング・プロファイルを作成します。

- modify: 既存のプロビジョニング・プロファイルの指定されたプロパティを変更します。

- enable: プロビジョニング・プロファイルを有効化します。

- disable: プロビジョニング・プロファイルを無効化します。

- delete: プロビジョニング・プロファイルを削除します。

- status: 指定されたプロビジョニング・プロファイルの現行のステータスを表示します。

- reset: プロビジョニング・プロファイルのすべてのエラーを消去します。

ldap_host=oid_hostname

オプション。Oracle Internet Directoryサーバーのホスト名。指定しない場合、ローカル・ホストの名前が使用されます。

ldap_port=port

オプション。Oracle Internet DirectoryのLDAPリスニング・ポート。デフォルトは389です。

ldap_user_dn=bindDN

必須。スーパーユーザーまたはプロビジョニング・サブスクリプション操作の実行に十分な権限を持つユーザーのDN。デフォルトは、cn=orcladminです。

ldap_user_password=password

オプション。ディレクトリへのバインドに使用するユーザー・パスワード。コマンドラインでパスワードを指定しない場合、パスワードの入力を求められます。入力を求められたときにパスワードを入力するのがセキュリティのベスト・プラクティスです。

profile_mode=OUTBOUND | INBOUND | BOTH

create操作専用のオプション。プロビジョニング・イベントの方向。デフォルトはOUTBOUND(Oracle Internet Directoryからアプリケーションへデータがプロビジョニングされる)です。

application_dn=DN

必須。プロビジョニング・サブスクリプションが属するアプリケーションの識別名。アプリケーションDNと組織DNの組合せにより、プロビジョニング・プロファイルが一意に識別されます。たとえば、ポータルのアプリケーションDNは次のように指定します。

"orclApplicationCommonName=PORTAL,cn=Portal,cn=Products,cn=OracleContext"

application_type=type

必須。プロビジョニングするアプリケーションのタイプ。

application_name=name

オプション。プロビジョニングするアプリケーションの名前。指定しない場合、application_dnに割り当てた識別名がデフォルトになります。

application_display_name=name

オプション。プロビジョニングするアプリケーションの表示名。指定しない場合、application_nameに割り当てた値がデフォルトになります。

organization_dn=DN

オプション。指定しない場合、デフォルト・アイデンティティ管理レルムがデフォルトになります。プロビジョニング・サブスクリプションが属する組織の識別名です(dc=company,dc=comなど)。アプリケーションDNと組織DNの組合せにより、プロビジョニング・プロファイルが一意に識別されます。

application_isdasvisible=TRUE | FALSE

オプション。アプリケーションをOracle Internet Directoryプロビジョニング・コンソールにプロビジョニング統合アプリケーションとして表示するかどうかを決定します。デフォルト値はTRUE。

manage_application_default=TRUE | FALSE

オプション。Oracle Internet Directoryプロビジョニング・コンソールでアプリケーションのデフォルト値を管理するかどうかを決定します。デフォルト値はTRUE。

enable_bootstrap=TRUE | FALSE

オプション。アプリケーションのプロビジョニング統合プロファイルを作成する前に Oracle Internet Directory に存在していたユーザーのプロビジョニング・イベントをアプリケーションが受信すべきかどうかを示します。デフォルト値は、FALSEです。

user_data_location=DN

オプション。アプリケーション固有のユーザー情報を格納するコンテナのDNを指定します。

default_provisioning_policy=PROVISIONING_REQUIRED | PROVISIONING_NOT_REQUIRED

オプション。アプリケーションのデフォルト・プロビジョニング・ポリシーを指定します。デフォルト値はPROVISIONING_REQUIREDです。

interface_name=SCHEMA.PACKAGE

create操作またはmodify操作で必須。PLSQLパッケージのデータベース・スキーマ名。値の書式は(schema.package_name)で、たとえば、ポータルのスキーマおよびPLSQLパッケージの情報は次のように指定します。

interface_name=PORTAL.WWSEC_OID_SYNC

interface_version=1.1 | 2.0 | 3.0

インタフェース・プロトコルのバージョン。許可されている値は1.1、2.0または3.0です。デフォルト値は2.0です。

interface_type=PLSQL | JAVA

オプション。イベントの伝播先となるインタフェースのタイプ。デフォルトはPLSQLです。

interface_connect_info=connection_string

create操作またはmodify操作で必須。Oracle Databaseに接続してイベントを伝播するには、接続文字列の形式として次のいずれかを使用します。

- DBURL=ldap://ldaphost:ldapport/service:username:password(推奨)

- host:port:sid:username:password

- DBSVC=service:username:password

schedule=number_seconds

create操作およびmodify操作専用のオプション。このプロファイルの実行と実行の間の秒数。デフォルトは3600で、プロファイルが1時間ごとに実行されるようにスケジュールされます。

lastchangenumber=number

OUTBOUNDイベントのcreateおよびmodify操作でのみオプション。Oracle Internet Directoryの最終変更番号であり、この番号より後の適切なすべてのイベントがアプリケーションにプロビジョニングされます。デフォルトは、最新の現行変更番号です。

max_prov_failure_limit=number

オプション。Oracleプロビジョニング・システムがユーザーのプロビジョニングを試行する回数を決定します。デフォルトは1です。

max_events_per_schedule=number

create操作およびmodify操作専用のオプション。プロビジョニング・プロファイルの1回の実行の間に、Oracle Directory Integration Platformサーバーがアプリケーションに送信するイベントの最大数。デフォルトは100です。

max_events_per_invocation=number

create操作およびmodify操作専用のオプション。インタフェースの起動1回当たり、パッケージ化してターゲットに送信できるイベントの最大数。

event_mapping_rules="OBJECT_TYPE:FILTER:DOMAIN"

INBOUNDイベントのcreateおよびmodify操作でのみ必須。このルールは、アプリケーションから(オプションのフィルタ条件を使用して)受け取ったオブジェクト・タイプをOracle Internet Directoryのドメインにマップします。プロビジョニング・プロファイルには、複数のマッピング・ルールを定義できます。

次の例は、2つのマッピング・ルールを示しています。1番目のルールでは、地域属性がアメリカに等しい(l=AMERICA)従業員オブジェクト(EMP)が、ドメインl=AMER,cn=users,dc=company,dc=comにマップされます。2番目のルールでは、フィルタ条件なしで、従業員オブジェクト(EMP)がドメインcn=users,dc=company,dc=comにマップされます。

event_mapping_rules="EMP:l=AMERICA:l=AMER,cn=users,dc=company,dc=com"
event_mapping_rules="EMP::cn=users,dc=company,dc=com"

event_permitted_operations="OBJECT:DOMAIN:OPERATION(attributes,...)

INBOUNDイベントのcreateおよびmodify操作でのみ必須。このプロパティを使用して、Oracle Directory Integration Platformサービスへの送信をアプリケーションに許可するイベントのタイプを定義します。1つのプロビジョニング・プロファイルに複数の許可操作を定義できます。

たとえば、ユーザー・オブジェクトが追加または削除されたときや特定の属性が変更されたときに、アプリケーションがイベントを送信するのを許可する場合、次の3つの操作が許可されていることになります。

event_permitted_operations="USER:dc=mycompany,dc=com:ADD(*)"
event_permitted_operations="USER:dc=mycompany,dc=com:MODIFY(cn,sn,mail,password)"
event_permitted_operations="USER:dc=mycompany,dc=com:DELETE(*)"

event_subscription="USER | GROUP:DOMAIN:OPERATION(attributes,...)"

OUTBOUNDイベントのcreateおよびmodify操作でのみ必須。このプロパティを使用して、Oracle Directory Integration Platformサービスからアプリケーションに送信するイベントのタイプを定義します。1つのプロビジョニング・プロファイルに複数のイベント・サブスクリプションを定義できます。

たとえば、ユーザーまたはグループ・オブジェクトが追加または削除されたときに、常にディレクトリ統合サーバーからアプリケーションにイベントを送信する場合、次の4つのイベント・サブスクリプションがあることになります。

event_subscription="GROUP:dc=mycompany,dc=com:ADD(*)"
event_subscription="GROUP:dc=mycompany,dc=com:DELETE(*)"
event_subscription="USER:dc=mycompany,dc=com:ADD(*)"
event_subscription="USER:dc=mycompany,dc=com:DELETE(*)"

max_events_per_schedule=number

create操作およびmodify操作専用のオプション。1回のスケジュールでプロビジョニングするイベントの最大数。デフォルトは100です。

max_retries=number

create操作およびmodify操作専用のオプション。失敗したイベントを再試行する回数。デフォルトは5です。

profile_group=number

createおよびmodify操作でのみ必須。プロファイルのグループ番号。デフォルトはDEFAULTです。この引数は、異なるOracle Directory Integration Platform Serverインスタンスを使用して様々な選択グループを実行する場合に発生するスケーラビリティの問題に対処するために必要です。

profile_status=ENABLED | DISABLED

create操作でのみ必須。プロファイルの有効化または無効化を指定します。デフォルトはENABLEDです。

profile_debug=debug_level

必須。プロファイルのデバッグ・レベル。

13.2.3 oidprovtoolのタスクと使用例

oidprovtoolを使用して、次のタスクを実行できます。

- プロビジョニング・プロファイルの作成

- プロビジョニング・プロファイルの変更

- プロビジョニング・プロファイルの削除

- プロビジョニング・プロファイルの無効化

13.2.3.1 プロビジョニング・プロファイルの作成

次の例は、Oracle Internet Directoryで維持されているユーザー情報とグループ情報に対する更新をポータルに認識させる、新しいプロビジョニング・プロファイルを作成します。

例:

oidprovtool operation=create ldap_host=myhost.mycompany.com ldap_port=389 \
ldap_user_dn="cn=orcladmin" application_dn="orclApplicationCommonName=PORTAL,cn=Portal,cn=Products,cn=OracleContext" \
organization_dn="dc=us,dc=mycompany,dc=com" interface_name=PORTAL.WWSEC_OID_SYNC \
interface_type=PLSQL interface_connect_info=myhost:1521:iasdb:PORTAL:password \
schedule=360 event_subscription="USER:dc=us,dc=mycompany,dc=com:DELETE" \
event_subscription="GROUP:dc=us,dc=mycompany,dc=com:DELETE" \
event_subscription="USER:dc=us,dc=mycompany,dc=com:MODIFY(orclDefaultProfileGroup,userpassword)" \
event_subscription="GROUP:dc=us,dc=mycompany,dc=com:MODIFY(uniqueMember)" \
profile_mode=OUTBOUND

13.2.3.2 プロビジョニング・プロファイルの変更

次の例では、Portalアプリケーションの既存のプロビジョニング・プロファイルを変更します。ユーザー・エントリの変更時にプロビジョニングされる属性のイベント・サブスクリプションを変更します。

例:

oidprovtool operation=modify ldap_host=myhost.mycompany.com ldap_port=389 \
ldap_user_dn="cn=orcladmin" application_dn="orclApplicationCommonName=PORTAL,cn=Portal,cn=Products,cn=OracleContext" \
organization_dn="dc=us,dc=mycompany,dc=com" \
subscription="USER:dc=us,dc=mycompany,dc=com:MODIFY(orclDefaultProfileGroup,userpassword,mail,cn,sn)"

13.2.3.3 プロビジョニング・プロファイルの削除

次の例は、ポータル・アプリケーションのプロビジョニング・プロファイルを無効化します。

例:

oidprovtool operation=delete ldap_host=myhost.mycompany.com ldap_port=389 \
ldap_user_dn="cn=orcladmin" application_dn="orclApplicationCommonName=PORTAL,cn=Portal,cn=Products,cn=OracleContext" \
organization_dn="dc=us,dc=mycompany,dc=com"

13.2.3.4 プロビジョニング・プロファイルの無効化

次の例は、ポータル・アプリケーションのプロビジョニング・プロファイルを無効化します。

例:

oidprovtool operation=disable ldap_host=myhost.mycompany.com ldap_port=389 \
ldap_user_dn="cn=orcladmin" application_dn="orclApplicationCommonName=PORTAL,cn=Portal,cn=Products,cn=OracleContext" \
organization_dn="dc=us,dc=mycompany,dc=com"

13.3 プロビジョニング用のアプリケーションの登録

アプリケーションをインストールし、oidprovtoolを使用してそのプロビジョニング・プロファイルを作成したら、次の手順を実行してプロビジョニングのためにアプリケーションを登録する必要があります。

1. 初回のプロビジョニング登録を実行してプロビジョニング統合プロファイルを作成します。Oracle Directory Integration Platform Serviceはプロビジョニング統合プロファイルを使用してプロビジョニング統合アプリケーションを識別します。

2. Oracle Directory Integration Platform Serviceに対して、アプリケーション固有属性とデフォルト値を設定し、アプリケーションにユーザーをプロビジョニングする際に属性が必須であるかどうかを指定します。

3. プロビジョニング統合アプリケーションで必要なプラグインを登録します。ビジネス・ポリシーを施行するためにアプリケーションが使用する、アプリケーション固有のプラグインを含めることができます。

注意:
Oracle Directory Integration Platform Service では、複数インスタンス・アーキテクチャをサポートするアプリケーションのインスタンス・レベルでのプロビジョニングをサポートしていません。同一アプリケションのインスタンスを複数インストールした場合、Oracle Directory Integration Platform Service は各インスタンスを個別のプロビジョニング統合アプリケーションとして処理します。

ユーザー作成時、管理者はユーザー属性を特定のプロビジョニング統合アプリケーションに割り当てることができます。アプリケーションにプロビジョニングされるユーザーごとに、アプリケーション固有の属性がOracle Internet Directoryに格納されます。パフォーマンスを向上させるために、プロビジョニング統合アプリケーションは通常、Oracle Internet Directoryからユーザー属性を取得するのではなく、ユーザー属性のローカル・コピーをキャッシュしています。データ・アクセスJavaプラグインを使用する同期的な方法、またはPL/SQLプラグインを使用する非同期的な方法のいずれかで、ユーザー作成、ユーザー削除および属性変更がアプリケーションに通知されます。

登録により、アプリケーションの一意のアイデンティティがOracle Internet Directoryに作成されます。Oracleアプリケーションは通常、repository.jarファイル(Oracleアプリケーション・サーバーによってデフォルトで$ORACLE_HOME/jlibディレクトリにインストールされる)にあるリポジトリAPIを使用して、プロビジョニングのために自身を登録します。リポジトリAPIは、Oracle Internet Directoryにアプリケーション・エントリを作成する場合だけでなく、アプリケーションを権限グループに追加する場合にも使用できます。

登録APIを使用できないOracle以外のアプリケーション用に、LDAPコマンドおよびLDIFテンプレートを使用してOracle Internet Directoryにアプリケーションのアイデンティティを作成できます。cn=Products,cn=OracleContextまたはcn=Products, cn=OracleContext, Realm DNにアプリケーションのコンテナを作成します。アプリケーション・アイデンティティの作成先コンテナは、そのアプリケーションが単一のレルムまたは複数のレルムのどちらでユーザーに使用可能であるかによって異なります。ほとんどの場合、アプリケーションが特定のOracle Internet Directoryアイデンティティ管理レルムのアイデンティティ管理ポリシーによってバインドされないように、cn=Products, cn=OracleContextコンテナにアプリケーション・アイデンティティを作成する必要があります。

同じアプリケーションの複数のインスタンスをインストールできます。プロビジョニング統合アプリケーションの新しいインスタンスをインストールすると、アプリケーション・アイデンティティ・コンテナに新しいインスタンス用の個別のエントリが作成されます。一部の構成設定はインスタンス固有ですが、それ以外の設定は同じアプリケーションの複数のインスタンス全体で共有されます。たとえば、Oracleファイルと類似しているアプリケーションを考えてみます。各インスタンスが他のインスタンスから独立している環境で、Oracleファイルの複数のインスタンスをデプロイできます。各インスタンスを個別のプロビジョニング統合アプリケーションとして定義します。アプリケーションの複数のインスタンスで、ユーザーをプロビジョニングすることもできます。

アプリケーションの最初のインスタンスをインストールするときに、次の例に示すエントリをOracle Internet Directoryに作成する必要があります。この例では、cn=Products, cn=OracleContextコンテナにアプリケーション・アイデンティティを作成し、アプリケーション名およびタイプはそれぞれFiles-App1およびFILESとしています。

dn: cn=FILES,cn=Products,cn=OracleContext
changetype: add
objectclass: orclContainer
dn: orclApplicationCommonName=Files-App1,cn=FILES,cn=Products,cn=OracleContext
changetype: add
objectclass: orclApplicationEntityorclappfullname: Files Application Instance 1
userpassword: password
description: This is a test application instance.
protocolInformation: protocol information
orclVersion: 1.0
orclaci: access to entry by group="cn=odisgroup,cn=DIPAdmins,cn=Directory
Integration Platform,cn=Products,cn=OracleContext" (browse,proxy) by
group="cn=User Provisioning Admins,cn=Groups,cn=OracleContext" (browse,proxy)
orclaci: access to attr=(*) by group="cn=odisgroup,cn=DIPAdmins,cn=Directory
Integration Platform,cn=Products,cn=OracleContext" (search,read,write,compare) by
group="cn=User Provisioning Admins,cn=Groups,cn=OracleContext"
(search,read,write,compare)

アプリケーションの2番目のインスタンスをインストールするときに、次の例に示すエントリをOracle Internet Directoryに作成する必要があります。この例でも、cn=Products, cn=OracleContextコンテナにアプリケーション・アイデンティティを作成し、アプリケーション名はFiles-App2としています。

dn: orclApplicationCommonName=Files-App2,cn=FILES,cn=Products,cn=OracleContext
changetype: add
objectclass: orclApplicationEntityorclappfullname: Files Application Instance 2
userpassword: password
description: This is a test Appliction instance.
protocolInformation: protocol information
orclVersion: 1.0
orclaci: access to entry by group="cn=odisgroup,cn=DIPAdmins,cn=Directory
Integration Platform,cn=Products,cn=OracleContext" (browse,proxy) by
group="cn=User Provisioning Admins,cn=Groups,cn=OracleContext" (browse,proxy)
orclaci: access to attr=(*) by group="cn=odisgroup,cn=DIPAdmins,cn=Directory
Integration Platform,cn=Products,cn=OracleContext" (search,read,write,compare) by
group="cn=User Provisioning Admins,cn=Groups,cn=OracleContext"
(search,read,write,compare)

プロビジョニング統合アプリケーションをOracle Internet Directoryに正常に登録した後、そのアプリケーションを様々な権限グループに追加することが必要な場合があります。表13-1には、Oracle Internet Directoryの共通権限グループが記載されています。

表13-1 Oracle Internet Directoryの共通権限グループ

グループ

説明

OracleDASCreateUser

ユーザー作成

OracleDASEditUser

ユーザー編集

OracleDASDeleteUser

ユーザー削除

OracleDASCreateGroup

グループ作成

OracleDASEditGroup

グループ編集

OracleDASDeleteGroup

グループ削除

次のLDIFファイルでは、すべてのレルムにおけるユーザー作成権限をFiles-App1アプリケーションに付与しています。

dn:cn=OracleCreateUser,cn=Groups,cn=OracleContext
changetype: modify
add: uniquemember
uniquemember: orclApplicationCommonName=Files-App1,cn=FILES,cn=Products,cn=OracleContext

13.4 アプリケーションのプロビジョニング・プロパティの構成

プロビジョニング統合アプリケーションを登録した後、そのプロパティを構成する必要があります。各アプリケーションのプロビジョニング・プロファイルは、自身のプロビジョニング構成プロパティを保持しています。プロビジョニング統合アプリケーションは、プロパティを使用して次のタイプのメタデータを格納します。

- アプリケーション・アイデンティティ情報

- アイデンティティ・レルム情報

- デフォルト・アプリケーション・プロビジョニング・ポリシー

- アプリケーション属性プロパティとデフォルト値

- アプリケーション・プロビジョニング・プラグイン

- アプリケーション・イベント・インタフェース情報

- アプリケーション・イベント伝播情報

Oracle Directory Integration Platformプロビジョニングでは、1.1、2.0および3.0の3つのバージョンのプロビジョニング・プロファイルをサポートしています。バージョン3.0のプロビジョニング・プロファイルは、Oracle Identity Management 11gリリース1(11.1.1)でのみ使用できます。別のアプリケーションでは、別のバージョンのプロビジョニング・プロファイルをサポートします。たとえば、多くのOracleアプリケーションでは、バージョン2.0のみサポートしています。一方、Oracle Collaboration Suiteではバージョン3.0のプロビジョニング・プロファイルをサポートしています。プロビジョニング・プロファイルのバージョン間の主な違いは、次のとおりです。

- バージョン1.1および2.0のプロビジョニング・プロファイルをサポートするアプリケーションのプロビジョニングは、oidprovtoolユーティリティを含めて単一ステップの処理です(詳細は、『Oracle Identity Managementユーザー・リファレンス』のOracle Directory Integration Platformツールに関する章で説明しています)。一方、バージョン3.0のプロビジョニング・プロファイルをサポートするアプリケーションのプロビジョニングは、複数のステップです(詳細は、『Oracle Fusion Middleware Oracle Identity Managementアプリケーション開発者ガイド』の集中管理ユーザー・プロビジョニングJava APIリファレンスに関する章で説明しています)。

- Oracle Directory Integration Platformプロビジョニングでは、バージョン3.0のプロビジョニング・プロファイルをサポートするアプリケーションのユーザー・プロビジョニング・ステータスのみが管理されます。

関連項目:
『Oracle Fusion Middleware Oracle Identity Managementアプリケーション開発者ガイド』の集中管理ユーザー・プロビジョニングJava APIリファレンスに関する章

14 Oracleプロビジョニング・イベント・エンジンの概要

この章では、Oracleプロビジョニング・イベント・エンジンについて説明します。内容は次のとおりです。

- Oracleプロビジョニング・イベントとは

- Oracleプロビジョニング・イベント・エンジンの操作

14.1 Oracleプロビジョニング・イベントとは

Oracleプロビジョニング・イベント・エンジンは、Oracle Internet Directoryのユーザー・エントリを対象に実行された操作に応じて、USER_ADD、USER_MODIFYおよびUSER_DELETEイベントを送信します。ユーザーは、ベース・ユーザーおよびアプリケーション固有ユーザーの情報を含む複数のエントリで示されるため、アプリケーションでは、イベントにおいてすべての属性にサブスクライブできます。

ベース・エントリまたはアプリケーション・エントリが更新されると、ユーザー・イベントも送信されます。ただし、管理者がアプリケーションからユーザーをプロビジョニング解除するようにリクエストすると、USER_MODIFYイベントがDEPROVISIONING_REQUIREDというプロビジョニング・ステータスとともにアプリケーションに送信されるため、アプリケーション・エントリが削除された場合はイベントが送信されません。アプリケーションがSUCCESSという値を返すことによってイベントを確認すると、アプリケーション・エントリはOracle Directory Integration Platformによって削除されます。

プロビジョニング・ステータスの変更通知を受信するには、アプリケーションでorclUserApplnProvStatus;Application_Name属性にサブスクライブする必要があります。たとえば、CORP_EMAILというアプリケーションのプロビジョニング・ステータスの変更にサブスクライブするには、アプリケーションでorclUserApplnProvStatus;CORP-EMAIL属性にサブスクライブする必要があります。

14.2 Oracleプロビジョニング・イベント・エンジンの操作

Oracleプロビジョニング・イベント・エンジンは、Oracle Internet Directoryで有効に定義されたオブジェクトに対する追加、変更および削除操作からイベントを生成します。Oracleプロビジョニング・イベント・エンジンでは、イベントを生成するために、オブジェクト定義とイベント生成ルールが使用されます。このイベント生成モデルは、カスタム・オブジェクトとカスタム・イベント生成ルールを定義できるため、拡張性を備えています。Oracleプロビジョニング・イベント・エンジン、オブジェクト定義およびイベント生成ルールについては、次の項目で説明します。

- カスタム・イベント・オブジェクト定義の作成

- カスタム・イベント生成ルールの定義

14.2.1 カスタム・イベント・オブジェクト定義の作成

表14-1に、イベントの生成が可能なオブジェクトを識別するために使用できるプロパティを示します。

表14-1 イベント・オブジェクトのプロパティ

プロパティ

説明

ObjectName

オブジェクトを識別する一意の名前を割り当てます。

ObjectCriteria

オブジェクトを識別するためのLDAPオブジェクト・クラスを指定します。

MustAttributeCriteria

オブジェクトの識別に必要な追加の属性を指定します。

OptionalAttributeCriteria

オブジェクトの識別に必要となる可能性のあるオプションの属性を指定します。

FilterAttributeCriteria

イベントの伝播時に送信しない属性をリストします。

表14-2に、Oracleプロビジョニング・イベント・エンジンでイベントを生成できる定義済オブジェクトを示します。

表14-2 事前定義されたイベント・オブジェクト

オブジェクト名

有効なオブジェクト・クラス値

Entry

*

User

orclUserV2, inetorgperson

Identity

orclUserV2, inetOrgPerson

Group

groupOfUniqueNames, orclGroup, orclPrivilegeGroup, groupOfNames

Subscription

orclServiceSubscriptionDetail

Subscriber

orclSubscriber

注意:
イベント・オブジェクトのメタデータは、cn=Object Definitions,cn=Directory Integration Platform,cn=Products,cn=OracleContextコンテナに格納されます。

14.2.2 カスタム・イベント生成ルールの定義

イベント生成ルールは、XML形式で指定します。イベント生成ルールのDTDは、次のとおりです。

<?xml version='1.0' ?>
<!DOCTYPE EventRuleSet [
<!ELEMENT ChangeType (#PCDATA)>
<!ELEMENT Rule  (#PCDATA)>
<!ELEMENT EventName  (#PCDATA)>
<!ELEMENT ResEvent (Rule*, EventName)>
<!ELEMENT EventRule (ChangeType, ResEvent*)>
<!ELEMENT EventRuleSet (EventRule*) >
]>

このDTDの要素定義は、次のとおりです。

- EventRuleSetルート要素は、個々のイベント・オブジェクトのイベント・ルールのセットを識別します。

- EventRuleSetルート要素には、EventRule要素のリストが含まれます。

- 各EventRule要素は、ChangeType要素に割り当てられた値に応じて変化します。

- ChangeTypeおよびRule要素は、アプリケーションに伝播されるイベント名を決定します。

表14-3に、Oracleプロビジョニング・イベント・エンジンでサポートされるイベント定義を示します。

表14-3 サポートされるイベント定義

オブジェクト名

変更タイプ

ルール

イベント名

USER

追加

OrclApplnUserProvStatus=PENDING_UPGRADE

USER_ADD

追加

OrclApplnUserProvStatus=PROVISIONING_REQUIRED

USER_ADD

変更

OrclApplnUserProvStatus= PENDING_UPGRADE

USER_ADD

OrclApplnUserProvStatus=PROVISIONING_REQUIRED

USER_ADD

OrclApplnUserProvStatus=PROVISIONING_FAILURE

USER_ADD

OrclApplnUserProvStatus=DEPROVISIONING_REQUIRED

USER_MODIFY

OrclApplnUserProvStatus=PROVISIONING_IN_PROGRESS

USER_MODIFY

OrclApplnUserProvStatus=PROVISIONING_SUCCESSFUL

USER_MODIFY

削除

OrclApplnUserProvStatus=PROVISIONING_IN_PROGRESS

USER_DELETE

OrclApplnUserProvStatus=PROVISIONING_SUCCESSFUL

USER_DELETE

OrclApplnUserProvStatus=DEPROVISIONING_REQUIRED

GROUP

追加

GROUP_ADD

変更

GROUP_MODIFY

削除

GROUP_DELETE

IDENTITY

追加

IDENTITY_ADD

変更

IDENTITY_MODIFY

削除

IDENTITY_DELETE

ENTRY

追加

ENTRY_ADD

変更

ENTRY_MODIFY

削除

ENTRY_DELETE

SUBSCRIPTION

追加

SUBSCRIPTION_ADD

変更

SUBSCRIPTION_MODIFY

削除

SUBSCRIPTION_DELETE

SUBSCRIBER

追加

SUBSCRIBER_ADD

変更

SUBSCRIBER_MODIFY

削除

SUBSCRIBER_DELETE

注意:
サポートされるイベント・オブジェクトのメタデータは、cn=Event Definitions,cn=Directory Integration Platform,cn=Products,cn=OracleContextコンテナに格納されます。

15 Oracle E-Business Suiteとのプロビジョニング・データの統合

Oracle Internet Directory 11gリリース1(11.1.1)では、Oracle Directory Integration Platform Serviceを使用して、ユーザー・アカウントおよびその他のユーザー情報をOracle E-Business Suiteから同期化できます。

Oracle Directory Integration Platform Serviceを使用してOracle E-Business Suiteからユーザー・アカウントなどのユーザー情報を同期させる方法の詳細は、次を参照してください。

- Oracle E-Business Suiteドキュメント。Oracle E-Business Suiteドキュメントには、次のOracle Technology Networkからアクセスできます。
http://www.oracle.com/technology/index.html

- My Oracle Support(旧MetaLink: http://metalink.oracle.com/)からアクセスできる、次のノート。

- 233436.1—「Installing Oracle Application Server 10g with Oracle E-Business Suite Release 11i」

- 261914.1—「Integrating Oracle E-Business Suite Release 11i with Oracle Internet Directory and Oracle Application Server Single Sign-On」

- 233436.1—「Installing Oracle Application Server 10g with Oracle E-Business Suite Release 11i」

第V部

サード・パーティ・ディレクトリとの統合

この部では、様々なサード・パーティ・アイデンティティのディレクトリとの統合に関係する概念、コンポーネントおよび手順について説明します。次の章が含まれます:

- 第16章「接続ディレクトリ統合の概念と考慮事項」

- 第17章「接続ディレクトリとの同期の構成」

- 第18章「Microsoft Active Directoryとの統合」

- 第19章「Oracle Password Filter for Microsoft Active Directoryのデプロイ」

- 第20章「Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)との統合」

- 第21章「IBM Tivoli Directory Serverとの統合」

- 第22章「Novell eDirectoryまたはOpenLDAPとの統合」

- 第23章「接続ディレクトリとの統合の管理」

16 接続ディレクトリ統合の概念と考慮事項

この章では、Oracle Identity Managementと接続ディレクトリとの統合の基本概念と、統合プロセスの一環として行う様々な決定について説明します。

注意:
この章を読む前に、次の資料の内容を理解しておく必要があります。

- 『Oracle Fusion Middleware Guide to Delegated Administration for Oracle Identity Management』

この章は、次の項目を含みます。

- 接続ディレクトリ統合の概念とアーキテクチャ

- 統合環境の計画

- Microsoft Active Directory統合の概念

- Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)統合の概念

- IBM Tivoli Directory Server統合の概念

- Novell eDirectoryおよびOpenLDAP統合の概念

- Oracle Directory Integration Platform 11gリリース1(11.1.1)での接続ディレクトリ統合の制限事項

関連項目:
接続ディレクトリとの同期に関する特定の実装の詳細は、次の各章を参照してください。

- 第17章「接続ディレクトリとの同期の構成」

- 第18章「Microsoft Active Directoryとの統合」

- 第19章「Oracle Password Filter for Microsoft Active Directoryのデプロイ」

- 第20章「Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)との統合」

- 第21章「IBM Tivoli Directory Serverとの統合」

- 第22章「Novell eDirectoryまたはOpenLDAPとの統合」

- 第23章「接続ディレクトリとの統合の管理」

16.1 接続ディレクトリ統合の概念とアーキテクチャ

すべてのOracleコンポーネントは、Oracle Identity Managementと統合することによって、セキュリティが集中管理されます。環境内でOracleバックエンド・ディレクトリとその他のディレクトリ(Microsoft Active Directoryなど)の両方を使用する場合、コネクタを使用して2つのシステムを統合し、それらのデータを同期化できます。コネクタとは、あらかじめパッケージされた接続ソリューションで、これを使用するとOracleバックエンド・ディレクトリを接続ディレクトリと同期化できます。

この項では、Oracle Identity Managementと接続ディレクトリの統合に必要なOracleコンポーネントとアーキテクチャについて説明します。内容は次のとおりです。

- その他のディレクトリとの統合に関するOracle Identity Managementコンポーネント

- 接続ディレクトリとの同期用のOracleバックエンド・ディレクトリ・スキーマ要素

- 接続ディレクトリとの統合におけるディレクトリ情報ツリー

注意:
各Oracleバックエンド・ディレクトリ(Oracle Internet Directory、Oracle Unified DirectoryおよびOracle Directory Server Enterprise Edition)との統合に関して保証されているディレクトリおよびサーバーの詳細は、「Oracle Identity Management Certification Information」を参照してください。
「Oracle Identity Management Certification Information」には、次に示すOracle Technology NetworkのWebサイトからアクセスできます。

http://www.oracle.com/technology/index.html

16.1.1 その他のディレクトリとの統合に関するOracle Identity Managementコンポーネント

この項では、Oracle Identity Managementとその他のディレクトリとの統合に使用される次のコンポーネントについて説明します。

- Oracleバックエンド・ディレクトリ

- Oracle Directory Integration Platform

- Oracle Delegated Administration Service

- Oracle Application Server Single Sign-On

- 外部認証プラグイン

関連項目:
Oracle Internet Directoryとサード・パーティ・ディレクトリとの統合に使用されるツールの詳細は、第3章「Oracle Directory Integration Platformの管理」を参照してください。

Oracleバックエンド・ディレクトリ

Oracleバックエンド・ディレクトリはOracleコンポーネントとサード・パーティ・アプリケーションがユーザー・アイデンティティおよび資格証明を格納してアクセスするリポジトリです。Oracleディレクトリ・サーバーを使用し、ユーザーが入力した資格証明をOracleバックエンド・ディレクトリに格納されている資格証明と比較してユーザーを認証します。資格証明がOracleバックエンド・ディレクトリではなく接続ディレクトリに格納されている場合でも、Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合は、ユーザーは認証されます。この場合、Oracle Internet Directoryは、接続ディレクトリ・サーバーに対してユーザーを認証する外部認証プラグインを使用します。(Oracle Unified DirectoryまたはOracle Directory Server Enterprise EditionがOracleバックエンド・ディレクトリである場合は、外部認証プラグインは使用できません。)

関連項目:
Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合、セキュリティの詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のセキュリティに関する章を参照してください。

Oracle Directory Integration Platform

Oracle Directory Integration Platformは、Oracle Identity Managementの一部としてインストールされます。これをOracleバックエンド・ディレクトリと同じホストで実行するようにも、異なるホストで実行するようにも構成できます。

Oracle Directory Integration Platformでは、次の処理が可能です。

- Oracleバックエンド・ディレクトリ(Oracle Internet Directory、Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionのいずれか)とその他の接続ディレクトリおよびユーザー・リポジトリとの間の同期化。

- Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合のOracleコンポーネント用自動プロビジョニング・サービス。

Oracle Directory Integration Platformには、Oracleバックエンド・ディレクトリを他のLDAPディレクトリまたはデータ・ストアと同期化するためのコネクタが含まれています。Oracle Directory Integration Platform統合コネクタを使用すると、次のことができます。

- 接続ディレクトリとの一方向または双方向いずれかの同期を構成します。

注意:
双方向のパスワードの同期は、バックエンド・ディレクトリがOracle Internet Directoryである場合にのみサポートされます。Oracle Directory Integration Platformでは、Oracle Unified Directoryバックエンド・ディレクトリまたはOracle Directory Server Enterprise Editionバックエンド・ディレクトリから接続ディレクトリへのパスワードの同期はサポートされません。
接続ディレクトリからOracle Unified Directoryバックエンド・ディレクトリまたはOracle Directory Server Enterprise Editionバックエンド・ディレクトリのいずれかへの一方向のパスワードの同期はサポートされます。

- 同期化属性の特定のサブセットの指定これを行うには、適切なマッピング・ルールを構成します(実行時に変更可能)。

関連項目:
属性マッピング・ルールの構成については、「属性レベル・マッピング」を参照してください。

Oracle Delegated Administration Services

Oracle Delegated Administration Servicesは、事前定義済みのWebベース・ユニットで、ユーザーのかわりにディレクトリ操作を実行します。他の管理者およびエンド・ユーザーに特定の機能を委任することができるため、ディレクトリ管理者はディレクトリ管理のルーチン・タスクをあまり実行する必要がありません。ユーザー・エントリの作成、グループ・エントリの作成、エントリの検索、ユーザー・パスワードの変更など、ディレクトリ対応アプリケーションで必要なほとんどの機能が提供されます。ディレクトリでアプリケーション・データを管理するには、Oracle Internet Directoryセルフ・サービス・コンソール(Oracle Delegated Administration Servicesに基づくツール)を使用します。Oracle Internet Directoryですぐに使用できる状態になっています。または、Oracle Delegated Administration Servicesを使用して、アプリケーション・データを管理するための独自のツールを開発できます。

関連項目:
『Oracle Fusion Middleware Guide to Delegated Administration for Oracle Identity Management』

Oracle Application Server Single Sign-On

OracleAS Single Sign-On Serverを使用すると、ユーザーは1回のみのログインで、WebベースのOracleコンポーネントにアクセスできます。

注意:
OracleAS Single Sign-On Serverを使用するには、バックエンド・ディレクトリがOracle Internet Directoryである必要があります。Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionのいずれかがバックエンド・ディレクトリである場合、シングル・サインオンはサポートされません。

Oracleコンポーネントは、ログイン機能をOracleAS Single Sign-On Serverに委任します。初めてOracleコンポーネントにログインする場合は、そのコンポーネントによってOracleAS Single Sign-On Serverにログインがリダイレクトされます。OracleAS Single Sign-On Serverでは、ユーザーが入力した資格証明を、Oracle Internet Directoryに格納されている資格証明と比較します。資格証明の検証後、OracleAS Single Sign-On Serverにより、現行セッション中、ユーザーが使用を認可されているすべてのコンポーネントに対するユーザー・アクセス権が付与されます。

Oracle Application Server Single Sign-Onを使用すると、Microsoft Windows環境でのネイティブ認証が有効になります。ユーザーは、Windows環境にログインすると、自動的にOracleコンポーネントにアクセスできるようになります。OracleAS Single Sign-On Serverが、ユーザーのKerberos資格証明を使用してユーザーをOracle環境に自動的にログインさせます。

関連項目:
OracleAS Single Sign-On Serverの詳細は、Oracle Enterprise Single Sign-On Suite Plus管理者ガイドを参照してください。

外部認証プラグイン

外部認証プラグイン(Microsoft Active Directory外部認証プラグインなど)は、Oracle Internet Directoryで使用でき、これを使用すると、ユーザーはMicrosoft Windows資格証明を使用してOracle環境にログインできます。(Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionでは、外部認証プラグインは使用できません。)外部認証プラグインがインストールされていれば、Oracleディレクトリ・サーバーにより起動されます。このプラグインにより、接続ディレクトリでユーザーの資格証明が検証されます。検証が正常に実行された場合は、Oracleディレクトリ・サーバーからOracleAS Single Sign-On Serverに通知されます。

16.1.2 接続ディレクトリとの同期用のOracleバックエンド・ディレクトリ・スキーマ要素

Oracleバックエンド・ディレクトリには、接続ディレクトリ(Microsoft Active Directoryなど)に固有の属性に対応するスキーマ要素が含まれています。スキーマ要素は、Oracle Directory Integration Platformにより接続ディレクトリと同期化されるバックエンド・ディレクトリ・オブジェクトを識別します。

この章の次の各項では、これらのスキーマ要素について説明します。

- 第16.3.4項「Microsoft Active Directory用のOracleバックエンド・ディレクトリ・スキーマ要素」

- 第16.4.2項「Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)用のOracle Internet Directoryスキーマ要素」

- 第16.5.2項「IBM Tivoli Directory Server用のOracleバックエンド・ディレクトリ・スキーマ要素」

- 第16.6.2項「Novell eDirectory用のOracleバックエンド・ディレクトリ・スキーマ要素」

- 第16.6.3項「OpenLDAP用のOracleバックエンド・ディレクトリ・スキーマ要素」

16.1.3 接続ディレクトリとの統合におけるディレクトリ情報ツリー

この項の内容は次のとおりです。

- Oracle Internet Directoryのレルムの概要

- デプロイの計画

- 例: 単一の接続ディレクトリ・ドメインとの統合

関連項目:

- ディレクトリ情報ツリーの詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のディレクトリの概念とアーキテクチャに関する章を参照してください。

- 『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のアイデンティティ管理レルムのデプロイに関する章

16.1.3.1 Oracle Internet Directoryのレルムの概要

Oracle Internet Directoryでは、アイデンティティ管理レルムは、あるアイデンティティ管理ポリシーがデプロイにより定義され、施行される企業内での範囲を定義します。

アイデンティティ管理レルムは、次のもので構成されます。

- 有効範囲の定義されたエンタープライズ・アイデンティティの集合(USドメインのすべての従業員など)。

- これらのアイデンティティに関連付けられたアイデンティティ管理ポリシーの集合。アイデンティティ管理ポリシーの例としては、すべてのユーザー・パスワードに少なくとも1文字の英数字を含む必要があることなどがあります。

- グループの集合。すなわち、アイデンティティ管理ポリシーの設定を簡単にするアイデンティティの集合です。

複数のレルム

同じOracle Identity Managementインフラストラクチャ内で複数のアイデンティティ管理レルムを定義できます。したがって、ユーザーの集団を区別し、各レルムで異なるアイデンティティ管理ポリシー(パスワード・ポリシー、ネーミング・ポリシー、自己変更ポリシーなど)を施行できます。これは、Oracle Fusion Middlewareのホスティングされたデプロイで役立ちます。

各アイデンティティ管理レルムには一意に名前が付けられ、他のレルムと区別されます。また、レルムを完全に管理するレルム固有の管理者がいます。

デフォルトのレルム

機能するすべてのOracleコンポーネントに対して、アイデンティティ管理レルムが必要です。Oracle Internet Directoryのインストール時に作成される1つの特別なレルムを、デフォルト・アイデンティティ管理レルムといいます。レルムの名前が指定されていない場合に、Oracleコンポーネントがユーザー、グループおよび関連付けられたポリシーを検索する場所です。このデフォルト・レルムを使用すると、情報の適切な編成が容易になり、ディレクトリで適切なアクセス制御が施行されます。

デフォルトのアイデンティティ管理レルムは、ディレクトリに1つのみです。デプロイメントに、複数のアイデンティティ管理レルムが必要である場合、その1つをデフォルトとして選択する必要があります。

図16-1に、デフォルト・アイデンティティ管理レルムを示します。

図16-1 デフォルト・アイデンティティ管理レルム

図16-1に示すように、デフォルト・アイデンティティ管理レルムはグローバルDITの一部です。ルートDSEに続くノードはdc=comで、さらにdc=MyCompany、dc=usと続きます。これらの4つのノードは、全体的なDIT構造を表します。ノードdc=usは、デフォルト・アイデンティティ管理レルムのルートです。ユーザーおよびグループの情報を含む2つのサブツリー(cn=Usersおよびcn=Groups)があります。例として、cn=Usersノードには2つのリーフ(uid=user1およびuid=user2)が含まれています。同様に、cn=Groupsノードにはcn=group1およびcn=group2が含まれています。

レルムにおけるアクセス制御ポリシー

Oracle Directory Integration Platformで次のことを可能にするには、Oracle Internet Directoryで適切なACLを構成する必要があります。

- インポート・プロファイルによりusersコンテナとgroupsコンテナでオブジェクトの追加、変更および削除ができるようにします。デフォルトでは、インポート・プロファイルはレルム管理グループの一部で、レルム識別名の下の任意のエントリに対してあらゆる操作を実行できます。レルム内でACLをカスタマイズした場合、同期化されるサブツリーで、あるいは同期が行われる場所に応じてuserコンテナまたはgroupコンテナ(あるいはその両方)で、インポート・プロファイルにこれらの操作を実行するための適切な権限があることを確認します。

- Oracleコンポーネントでレルム内のユーザーとグループを管理できるようにします。デフォルトでは、Oracleコンポーネントでusersコンテナとgroupsコンテナのそれぞれのユーザーとグループを管理できます。レルム内でusersearchbaseとgroupsearchbaseを更新した場合、usersコンテナとgroupsコンテナで適切なACLを設定します。

関連項目:
Oracle Internet Directoryによりインストールされたデフォルト・レルムの詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のOracle Identity Managementレルムのデプロイに関する章を参照してください。

16.1.3.2 デプロイの計画

DITを計画する際、同期の前に行う最も重要な決定は、次のとおりです。

- 中央ディレクトリとなるディレクトリ

- 同期化するオブジェクト。たとえば、次のようなものです。

- DITで同期化する必要のある部分。DIT全体またはその一部のみを同期化できます。

- エントリごとの、同期化の必要な特定のコンテンツ。エントリのコンテンツ全体またはその一部のみを同期化できます。

- 同期化する位置。次の2つのオプションがあります。

- DITの各エントリの相対的な位置が、ソース・ディレクトリと宛先ディレクトリの両方で同じになるように同期化できます。この構成は、1対1識別名マッピングと呼ばれ、最も一般的に使用されている構成です。ソース識別名が宛先識別名と同じであるため、この構成では2つの識別名が異なる場合よりパフォーマンスが向上します。

- DITの各エントリの相対的な位置が、ソース・ディレクトリと宛先ディレクトリで異なるように同期化できます。この構成では、Oracle Directory Integration Platformにより、マップされるすべてのエントリ(グループ・エントリ内の参照を含む)の識別名値を変更する必要があります。これにはより集中的な計算が必要です。
このように同期化する場合、「サポートされている属性マッピング・ルールと例」で説明されているように、dnconvertマッピング・ルールを使用する必要があります。

関連項目:
ディレクトリ情報ツリーの計画の詳細は、「ディレクトリ情報ツリーの構造の選択」の項を参照してください。

16.1.3.3 例: 単一の接続ディレクトリ・ドメインとの統合

図16-2に、Oracle Internet Directoryと接続ディレクトリ間の1対1のマッピングの例を示します。

図16-2 Oracle Internet Directoryと接続ディレクトリのホストがドメインus.MyCompany.com下に存在する場合の両ディレクトリにおけるデフォルトのDIT構造

「図16-2 Oracle Internet Directoryと接続ディレクトリのホストがドメインus.MyCompany.com下に存在する場合の両ディレクトリにおけるデフォルトのDIT構造」の説明

図16-2の1対1マッピングの場合:

- Oracle Internet Directoryおよび接続ディレクトリの両方のホストが同じトポロジを持ちます。

- ユーザーは、接続ディレクトリからOracle Internet Directoryにのみ同期化されます。同期化されるすべてのユーザーが、接続ディレクトリ内の1つのコンテナ(この場合、users.us.MyCompany.com)に格納されます。

- 同じDIT構造が接続ディレクトリとOracle Internet Directoryの両方で保持されます。すべてのユーザーが、値cn=users,dc=us,dc=MyCompany,dc=comで識別される同じusersサブツリーに表示されます。

この例では、1対1のドメイン・マッピングを使用して接続ディレクトリからOracle Internet Directoryに同期化する必要があるのは、usersサブツリーのみです。

注意:
図では、2つのディレクトリのトポロジは同じですが、これは単なる例であることに注意してください。2つのディレクトリは、同じドメインに存在する必要はありません。Oracle Internet Directoryは、接続ディレクトリに接続できる場所である場合、ネットワーク内のどこにでも配置できます。
さらに、例では同期が接続ディレクトリからOracle Internet Directoryへの一方向ですが、かわりに同期を双方向に行うこともできます。

16.2 統合環境の計画

この項では、統合環境の計画方法について説明します。内容は次のとおりです。

- 接続ディレクトリとの統合に関する予備的な考慮事項

- 企業の中央ディレクトリとなるディレクトリの選択

- LDAPスキーマのカスタマイズ

- パスワードの格納場所の選択

- ディレクトリ情報ツリーの構造の選択

- ログイン名の属性の選択

- ユーザー検索ベースの選択

- グループ検索ベースの選択

- セキュリティ問題に対処する方法の決定

- Oracle Access Managerによるデプロイの管理

16.2.1 接続ディレクトリとの統合に関する予備的な考慮事項

LDAPディレクトリ・サーバーをすでに所有している企業にOracleバックエンド・ディレクトリをデプロイする場合は、両方のディレクトリが同じ環境に共存するように構成する必要があります。

ディレクトリの共存には、次のいずれかのデプロイが必要です。

- Oracleバックエンド・ディレクトリとの単純な同期。使用する環境において、データベース・サーバーを使用してエンタープライズ・ユーザーがサポートされている場合は、この方法を使用します。Oracle Internet DirectoryがOracleバックエンド・ディレクトリである場合、この方法ではエンタープライズ・ユーザー・セキュリティがサポートされます。

注意:
エンタープライズ・ユーザー・セキュリティをサポートするには、Oracleバックエンド・ディレクトリがOracle Internet Directoryである必要があります。Oracle Unified Directoryバックエンド・ディレクトリおよびOracle Directory Server Enterprise Editionバックエンド・ディレクトリでは、エンタープライズ・ユーザー・セキュリティを含む、その他のFusion Middlewareコンポーネントとの統合をサポートしていません。

- Oracle Fusion Middlewareインフラストラクチャとの完全な統合。これにより、エンタープライズ・ユーザー全員が、Oracle Fusion Middlewareスイートの各種コンポーネントを使用できるようになります。環境内で企業ディレクトリとして接続ディレクトリが使用され、Oracle Fusion Middlewareスイートのアプリケーションがデプロイされている場合は、この方法を使用します。
すべてのOracle Fusion Middlewareコンポーネントがアイデンティティ管理レルムに依存するため、Oracle Fusion Middlewareインフラストラクチャとの完全な統合には、そのレルムのコンテナについていくつか決定を行う必要があります。これらの事項を決定した後、ディレクトリ間でブートストラップおよび同期を構成できます。

16.2.2 企業の中央ディレクトリとなるディレクトリの選択

この項では、企業の中央ディレクトリまたはメタディレクトリとなるディレクトリの選択方法について説明します。内容は次のとおりです。

- シナリオ1: Oracle Internet Directoryが企業の中央ディレクトリである場合

- シナリオ2: Oracle Internet Directory以外のディレクトリが企業の中央ディレクトリである場合

16.2.2.1 シナリオ1: Oracle Internet Directoryが企業の中央ディレクトリである場合

Oracle Internet Directoryが中央ディレクトリの場合、ユーザー・オブジェクト、グループ・オブジェクトおよびレルム・オブジェクトを作成すると、Oracle Internet DirectoryはすべてのOracleコンポーネントおよび接続ディレクトリに関するプロビジョニング情報のソースになります。その後、企業全体のユーザー・オブジェクトとグループ・オブジェクトが、各種Oracleコンポーネントおよび接続ディレクトリ内にOracle Internet Directoryからプロビジョニングされます。

注意:
シナリオ1では、Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionも、企業の中央ディレクトリとして使用できます。ただし、Oracle Application Server Single Sign-onはOracle Internet Directoryでのみサポートされます。

表16-1に、このデプロイの一般的な要件を示します。

表16-1 Oracle Internet Directoryを企業の中央ディレクトリとして使用する場合の一般的な要件

要件

説明

初期起動

syncProfileBootstrapコマンドにより、接続ディレクトリにOracle Internet Directoryに格納されているユーザーおよびグループが移入されます。

同期

ユーザーおよびグループ情報は、Oracle Internet Directoryで管理されます。その情報への変更は、エクスポート・プロファイルが構成されたときに、Oracle Directory Integration Platformにより接続ディレクトリと同期化されます。

接続ディレクトリからOracle Internet Directoryへの同期は、インポート・プロファイルを構成することによって実行できます。

パスワードおよびパスワード・ベリファイア

パスワードは、Oracle Internet Directoryセルフ・サービス・コンソールなどのOracleツールを使用してOracle Internet Directoryで管理されます。パスワードの変更は、Oracle Directory Integration Platformによって接続ディレクトリと同期化されます。ただし、このサーバーでパスワードの変更を同期化する前に、マッピング・ルールにパスワードの同期を構成する必要があります。

パスワードは安全に管理されるため、パスワードを同期化するための接続ディレクトリとの通信は、SSLで行う必要があります。サーバー認証モードで、接続ディレクトリからの適切な資格証明により、Oracle Directory Integration Platformを実行します。接続ディレクトリもSSLに対応していることを確認してください。

Oracle環境にパスワード・ベリファイアが必要な場合は、ユーザー・エントリを作成するか、またはパスワードを変更すると、パスワード・ベリファイアが自動的に生成されます。

Oracle Application Server Single Sign-On(バージョン10.1.4.x)

ユーザーは、OracleAS Single Sign-On Serverを使用して、Oracle環境にログインします。

Oracleディレクトリ・サーバーは、ユーザーの認証のためにOracleAS Single Sign-On Serverからコールされると、ローカルで使用可能な資格証明を使用します。外部認証は起動しません。

ユーザーがOracle環境内の各種コンポーネントにアクセスするためにログインするのは1回のみです。

Oracle Internet Directoryの新しいユーザーまたはグループは、Oracle Directory Integration Platformによって自動的にプロビジョニングできます。この自動プロビジョニングには、次の条件が必要です。

- Oracleディレクトリ・サーバーが、変更ログが有効な状態で稼働している。

- 変更ログはパージされない。

これらの2つの条件が満たされた場合、Oracle Internet DirectoryのエントリをLDIFファイルにダンプして、接続ディレクトリにデータをアップロードする必要があります。

関連項目:
変更ログのパージの詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のガベージ・コレクションに関する章を参照してください。

図16-3に、Oracle Internet Directoryが企業の中央ディレクトリとなっている場合の通常のデプロイを示します。

表16-3 Oracle Internet Directoryを企業の中央ディレクトリとして使用するコンポーネント間の相互作用

図16-3が示すように、Oracle Internet Directoryが企業の中央ディレクトリの場合、ユーザーまたはグループの通常のプロビジョニングは次のプロセスに従います。

1. ユーザー・エントリまたはグループ・エントリは、Oracle Internet Directoryセルフ・サービス・コンソールまたはコマンドライン・ツールを使用してOracle Internet Directoryに作成されます。

2. 次にスケジュールされた間隔に、エントリ作成イベントが、Oracle Directory Integration Platform内のサード・パーティ・ディレクトリ・コネクタによって読み取られます。

3. 統合プロファイル内のマッピング情報に従って、Oracle Internet Directory内のユーザー属性またはグループ属性が、接続ディレクトリのスキーマで必要とされるとおりに、対応するユーザー属性またはグループ属性に適切にマップされます。

4. ユーザー・エントリおよびグループ・エントリが接続ディレクトリ内に作成されます。

次の場合、Oracle Internet Directory内でユーザー・エントリが変更されます。

- 新しい属性がエントリに追加される場合。

- 既存の属性の値が変更される場合。

- 既存の属性が削除される場合。

Oracle Internet Directoryが企業の中央ディレクトリの場合、ユーザー・エントリまたはグループ・エントリの変更時に実行されるイベントの順序は次のとおりです。

1. Oracle Internet Directoryセルフ・サービス・コンソールまたはOracle Enterprise Manager Fusion Middleware Controlを使用して、エントリが変更されます。

2. 次にスケジュールされた間隔に、エントリ変更イベントが、Oracle Directory Integration Platform内のサード・パーティ・ディレクトリ・コネクタによって読み取られます。

3. 統合プロファイル内のマッピング情報に従って、Oracle Internet Directory内の属性が、接続ディレクトリ内の対応する属性に適切にマップされます。

4. 接続ディレクトリ内でユーザー・エントリが変更されます。

16.2.2.2 シナリオ2: Oracle Internet Directory以外のディレクトリが企業の中央ディレクトリである場合

このシナリオでは、サード・パーティ・ディレクトリまたは別のOracleディレクトリ(Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionなど)のいずれかが企業の中央ディレクトリであり、Oracle Internet DirectoryがOracleバックエンド・ディレクトリです。このシナリオでは、ユーザー・オブジェクト、グループ・オブジェクトおよびレルム・オブジェクトが作成されると、企業の中央ディレクトリはすべてのOracleコンポーネントおよびその他のディレクトリに関するプロビジョニング情報のソースになります。Oracle Internet Directoryは、Oracleコンポーネントをサポートするために、Oracleバックエンド・ディレクトリとしてデプロイされます。このサポートを提供するために、Oracle Internet Directoryではフットプリントを格納して、接続ディレクトリでエントリを識別できるようにします。

表16-2に、このデプロイの一般的な要件を示します。

表16-2 Oracle Internet Directory以外のディレクトリを企業の中央ディレクトリとして使用するが、Oracle Internet Directoryがバックエンド・ディレクトリである場合の一般的な要件

要件

説明

初期起動

syncProfileBootstrapコマンドにより、Oracle Internet Directoryに企業の中央ディレクトリに格納されているユーザーおよびグループが移入されます。

パスワード資格証明などのユーザー情報を、企業の中央ディレクトリでのみ管理することを選択できます。そのようなデプロイでは、Oracle環境でシングル・サインオンを有効にするために、Oracle Directory Integration Platformにより、Oracleコンポーネントで必要なユーザー・エントリ属性のみを同期化できます。

パスワードは、企業の中央ディレクトリからOracle Internet Directoryに移行されません。

同期

ユーザーおよびグループ情報用の企業の中央ディレクトリは、Oracle Unified Directory、Oracle Directory Server Enterprise Editionまたはサード・パーティ・ディレクトリです。企業の中央ディレクトリでのユーザーおよびグループ情報への変更は、インポート・プロファイルが構成されたときに、Oracle Directory Integration PlatformによりOracle Internet Directoryと同期化されます。

Oracle Internet Directoryから企業の中央ディレクトリへの同期は、エクスポート・プロファイルを構成することによって実行されます。

パスワードおよびパスワード・ベリファイア

パスワードは、企業の中央ディレクトリで管理されます。パスワードの変更は、Oracle Directory Integration PlatformによってOracle Internet Directoryに同期化されません。

Oracle Application Server Single Sign-On

ユーザーは、OracleAS Single Sign-On Serverを使用して、Oracle環境に1回のみログインします。

企業の中央ディレクトリでのみ資格証明を持つユーザーは、外部認証プラグインを起動するOracle Internet Directoryによって認証されます。

Oracle Internet Directoryで資格証明を持つユーザーは、ローカルで認証されます。

サード・パーティ・ディレクトリ外部認証プラグイン

ユーザー資格証明がOracle Unified Directory、Oracle Directory Server Enterprise Editionまたはサード・パーティ・ディレクトリで管理される場合、Oracle Internet Directoryではこのプラグインを必要とします。ユーザーを認証するために、OracleAS Single Sign-On ServerによりOracle Internet Directoryディレクトリ・サーバーが呼び出されます。次に、プラグインによって、Oracle Unified Directory、Oracle Directory Server Enterprise Editionまたはサード・パーティ・ディレクトリに格納されているユーザー資格証明に対する、そのユーザーの認証が行われます。

企業の中央ディレクトリとして指定されているディレクトリに作成された新しいユーザーまたはグループは、Oracle Directory Integration Platformによって、Oracle Internet Directoryに自動的に同期化されます。プロビジョニングが実行される前に、企業の中央ディレクトリとOracle Internet Directory間で一方向の同期が確立されている必要があります。

図16-4に、サード・パーティ・ディレクトリが企業の中央ディレクトリとなっている場合の通常のデプロイを示します。

図16-4 サード・パーティ・ディレクトリを企業の中央ディレクトリとして使用するコンポーネント間の相互作用

16.2.2.2.1 ユーザーまたはグループのプロビジョニング・プロセス

図16-4に、サード・パーティ・ディレクトリが企業の中央ディレクトリとなっている場合に、ユーザーまたはグループをプロビジョニングするための通常のプロセスを示します。

注意:
Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionでは、プロビジョニングはサポートされません。

このプロセスは次のとおりです。

1. ユーザー・エントリまたはグループ・エントリがサード・パーティ・ディレクトリ内に作成されます。

2. 次にスケジュールされた間隔に、エントリ作成イベントが、Oracle Directory Integration Platform内のサード・パーティ・ディレクトリ・コネクタによって読み取られます。

3. 統合プロファイル内のマッピング情報に従って、サード・パーティ・ディレクトリのユーザー属性またはグループ属性がサード・パーティ・ディレクトリ内の対応する属性にマップされます。

4. ユーザー・エントリまたはグループ・エントリがOracle Internet Directory内に作成されます。

16.2.2.2.2 ユーザー・エントリまたはグループ・エントリの変更プロセス

次の場合に、接続ディレクトリ内でエントリが変更されます。

- 新しい属性がエントリに追加される場合。

- 既存の属性の値が変更される場合。

- 既存の属性が削除される場合。

接続ディレクトリが企業の中央ディレクトリの場合、ユーザー・エントリまたはグループ・エントリの変更は次のプロセスに従います。

1. 接続ディレクトリ内でエントリが変更されます。

2. 次にスケジュールされた間隔に、エントリ変更イベントが、Oracle Directory Integration Platform内のサード・パーティ・ディレクトリ・コネクタによって読み取られます。

3. 統合プロファイル内のマッピング情報に従って、接続ディレクトリ内の属性がOracle Internet Directory内の対応する属性に適切にマップされます。

4. Oracle Internet Directory内でユーザー・エントリまたはグループ・エントリが変更されます。

図16-4が示すように、サード・パーティ・ディレクトリが企業の中央ディレクトリの場合、パスワード・リポジトリとして動作しているディレクトリ内でパスワードの変更が非同期的に発生します。これは、プラグインを使用することによって発生します。

16.2.3 LDAPスキーマのカスタマイズ

次の場合、LDAPスキーマをカスタマイズする必要があります。

- ディレクトリのデプロイに、カスタム・オブジェクト・クラス、カスタム属性などのスキーマ拡張が含まれている場合

- カスタム属性を、ディレクトリ・サーバー間で同期化する必要がある場合

LDAPスキーマをカスタマイズするには、次のことを行う必要があります。

- ソース・ディレクトリでスキーマ拡張を識別します。

- データの移行および同期を開始する前に、ターゲット・ディレクトリでスキーマ拡張を作成します。

注意:
スキーマ拡張の作成に加えて、対応するオブジェクト・クラスと同期化させる属性も、マッピング・ルールに追加する必要があります。

関連項目:

- Oracle Internet Directoryのスキーマをカスタマイズする方法は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のスキーマの管理に関する章を参照してください。

- Microsoft Active Directoryのスキーマをカスタマイズする方法は、http://msdn.microsoft.com/にあるMicrosoft社のドキュメントを参照してください。

16.2.4 パスワードの格納場所の選択

どのディレクトリが企業の中央ディレクトリであるかに関係なく、パスワードは一方または両方のディレクトリに格納できます。どちらにもそれぞれ長所と短所があります。この項では、次の項目でこれら2つについて比較します。

- 1つのディレクトリにのみパスワードを格納する場合の長所と短所

- 両方のディレクトリにパスワードを格納する場合の長所と短所

16.2.4.1 1つのディレクトリにのみパスワードを格納する場合の長所と短所

1つのディレクトリにのみパスワードを格納すると、エントリ・ポイントの数を減らすことになるため、パスワードのセキュリティがより強力になります。また、パスワードが変更された場合の同期の問題もなくなります。

ただし、1つのディレクトリにのみパスワードを格納すると、ネットワーク全体に対するシングル・ポイント障害の原因となります。接続ディレクトリで障害が発生した場合、ユーザーは、Oracle Internet Directory内でユーザー・フットプリントが使用可能な場合でもOracleコンポーネントにアクセスできません。

中央ディレクトリにのみパスワードを格納すると同期の問題はなくなりますが、アプリケーションでユーザーをそのディレクトリに対して認証できるようにする必要があります。これには、適切なプラグインを使用する必要があります。たとえば、企業の中央ディレクトリおよび中央パスワード・ストアの両方としてMicrosoft Active Directoryを使用している場合は、Microsoft Active Directoryに対してユーザーを認証するアプリケーションを有効にする必要があります。これには、外部認証プラグインを使用します。

注意:
Oracleコンポーネントはパスワード・ベリファイアを使用してユーザーを認証しますが、パスワードがサード・パーティ・ディレクトリに格納されている場合、パスワード・ベリファイアはOracle Internet Directoryに格納されません。パスワードがOracleコンポーネントを使用して変更された場合、パスワード・ベリファイアの生成とOracle Internet Directoryへの格納の両方が行われます。

16.2.4.2 両方のディレクトリにパスワードを格納する場合の長所と短所

Oracle Internet Directoryと接続ディレクトリの両方にパスワードを格納する場合、理想的には、リアルタイムでパスワードを同期化する必要があります。

Oracle Internet Directory 11gリリース1(11.1.1)の場合、パスワードはリアルタイムではなく、スケジュールに従って同期化されます。これは、企業の中央ディレクトリ内でパスワードが変更された時刻とその変更がもう1つのディレクトリに記録される時刻の間に、明確な差があることを意味します。

中央ディレクトリとしてOracle Internet Directoryをデプロイした場合、パスワード値は、Oracle Internet Directoryから接続ディレクトリへ定期的に同期化されます。これには、レルムのパスワード・ポリシーと可逆暗号化の両方を有効にする必要があります。

関連項目:

- パスワード・ポリシーの設定の詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のパスワード・ポリシーに関する章を参照してください。

- 可逆暗号化の詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のパスワード・ベリファイアのディレクトリ格納に関する章を参照してください。

通常、パスワード値はハッシュされます。両方のディレクトリが同一のハッシング・アルゴリズムを使用する場合は、そのままの状態でハッシュ値を同期化できます。たとえば、Oracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)とOracle Internet Directoryが統合されている環境があるとします。これらのディレクトリは両方とも共通のハッシング・アルゴリズムに対応しています。Oracle Internet Directoryでサポートされているハッシング方法を使用して、パスワードをハッシュし、Oracle Directory Server Enterprise Editionに格納する場合、Oracle Directory Server Enterprise EditionのパスワードのOracle Internet Directoryへの同期化は、その他の属性の場合と同様です。両方のディレクトリで同一のハッシング・アルゴリズムがサポートされていない場合は、クリアテキスト形式でのみパスワードを同期化する必要があります。セキュリティ上の理由から、Oracle Internet Directoryとのパスワードの同期は、SSLサーバー認証モードでのみ可能です。

Oracle Internet Directoryが中央ディレクトリである場合や、Oracle Internet Directoryでサポートされているハッシング・アルゴリズムがその他のディレクトリでサポートされていない場合でも、パスワードの可逆暗号化が有効なときにはSSLサーバー認証モードによる同期化が可能です。

Microsoft Active Directoryが中央ディレクトリである場合にMicrosoft Active Directory内でパスワードを変更すると、プラグインがパスワード変更を遮断してOracle Internet Directoryに送信します。Oracle Internet Directoryが中央ディレクトリで、中央パスワード・ストアである場合、Oracle Directory Integration Platformがパスワード変更を特権ユーザーとして読み取り、対応するディレクトリに送信します。

注意:
両方のディレクトリが同一のハッシング・アルゴリズムを使用しないデプロイでは、Oracle Internet Directoryのデフォルトのインストール環境ではパスワードの同期化は実行できません。構成する必要があります。
Oracle Internet Directoryが中央ディレクトリではないデプロイでは、サード・パーティ・ディレクトリによってパスワード・ポリシーが施行されます。サード・パーティ・ディレクトリに対する認証リクエストがある場合、このディレクトリから認証が成功したか失敗したかの応答があります。ただし、サード・パーティ・ディレクトリからのパスワード・ポリシーの詳細なエラーは、Oracle Internet Directoryに配信されないため、クライアント・アプリケーションにも配信されません。

関連項目:
プラグインの詳細は、次の章を参照してください。

- 『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のディレクトリ・プラグイン・フレームワークに関する章

- 『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の外部認証プラグインのカスタマイズに関する章

16.2.5 ディレクトリ情報ツリーの構造の選択

インストール時に、各ディレクトリ・サーバーがデフォルトのドメインとデフォルトのディレクトリ情報ツリー(DIT)構造を作成します。Oracle Internet Directoryインフラストラクチャのインストールにより、企業内のユーザーおよびグループの格納用に指定されたコンテナで、デフォルトのレルムが作成されます。接続ディレクトリと統合する場合は、Oracle Internet Directoryのデフォルトのインストールを使用するために、両方のディレクトリで同一のDIT構造を作成する必要があります。または、ドメイン・レベルのマッピングを実行できます。

この項の内容は次のとおりです。

- 両方のディレクトリ上での同一ディレクトリ情報ツリー構造の作成

- 識別名のマッピングおよび制限

16.2.5.1 両方のディレクトリ上での同一ディレクトリ情報ツリー構造の作成

両方のディレクトリで同一のDITを構成することをお薦めします。これによって、すべてのユーザー・オブジェクトとグループ・オブジェクトをそのままの状態で同期化できるため、一方のディレクトリにある識別名を持つエントリを別のディレクトリのURLにマップするタスクが削減されます。また、マッピングで発生する可能性のあるパフォーマンスの問題も削減できます。

同一のディレクトリ情報ツリーを作成するには、まず、企業の中央ディレクトリとなるディレクトリを決定し、その後、それにあわせてもう一方のディレクトリ情報ツリーを変更します。ディレクトリ統合プロファイルを更新して、確実にドメイン・レベルのルールを反映してください。

ユーザーがOracle Application Server Single Sign-Onを介してOracleアプリケーションにアクセスできるようにするには、ディレクトリ情報ツリーを、独自の認証および認可ドメインを持つ個別のアイデンティティ管理レルムとして識別することをお薦めします。

関連項目:
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のアイデンティティ管理レルムのデプロイに関する章

16.2.5.2 識別名のマッピングおよび制限

両方のディレクトリ上に同一のディレクトリ情報ツリーを持つことが不可能な場合は、Oracle Internet Directoryと接続ディレクトリの間でドメインをマップする必要があります。たとえば、コンテナdc=mydir,dc=comの下にあるエントリはすべて、Oracle Internet Directory内のdc=myoid,dc=comの下で同期化する必要があります。これを実行するには、ドメイン・レベルのマッピング・ルールに指定します。

すべてのユーザーおよびグループの同期が目的の場合は、適切な識別名マッピングですべてのユーザー・エントリを同期化できます。ただし、グループ・エントリを同期化する場合は、時間がかかり、制限が追加される場合があります。この項では、識別名マッピングが行われている場合のユーザーおよびグループ両方の同期の例を示します。

16.2.5.2.1 例: ユーザー・エントリ・マッピング

マッピング・ファイルで、Oracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)のエントリの形式がuid=name,ou=people,o=iplanet.orgであるとします。また、Oracle Internet Directory内のエントリは、cn=name,cn=users,dc=iplanet,dc=comという形式をとるとします。Oracle Directory Server Enterprise Editionのネーミング属性はuidですが、Oracle Internet Directoryではcnであることに注意してください。

マッピング・ファイルには次のようなルールがあります。

DomainRules
ou=people,o=iplanet.org: cn=users,dc=iplanet,dc=com: cn=%, cn=users,dc=iplanet,dc=com
AttributeRules
Uid:1: :person:cn: :inetorgperson:

最終行の2列目の1の値は、Oracle Directory Server Enterprise EditionからOracle Internet Directoryに伝播されるすべての変更で、uid属性が存在している必要があることを示しています。これは、Oracle Internet Directory内のエントリの識別名を構成するには、uidを使用可能にする必要があるためです。

16.2.5.2.2 例: グループ・エントリ・マッピング

識別名マッピングが行われている場合、グループ・エントリの同期化は複雑になります。グループ・メンバーシップ(識別名)には、同期後、有効な識別名の値が必要です。これは、ユーザー識別名に対して行われた識別名マッピングをグループ・メンバーシップの値に適用する必要があることを意味します。

たとえば、ユーザー識別名の値を次のようにマップするとします。

ou=people,o=iplanet.org: cn=users,dc=iplanet,dc=com:

これは、ou=people,o=iplanet.orgの下のすべてのユーザー・エントリがcn=users,dc=iplanet,dc=comに移動することを示します。

グループ・メンバーシップは、次のようにマップする必要があります。

uniquemember: : : groupofuniquenames: uniquemember: :groupofuniquenames:dnconvert(uniquemember)

たとえば、uniquememberの値がcn=testuser1,ou=people,o=iplanet.orgの場合、その値はcn=testuser1,cn=users,dc=iplanet,dc=comになります。

また、uniquememberの値がcn=testuser1,dc=subdomain,ou=people,o=iplanet.orgの場合、その値はcn=testuser1,dc=subdomain,cn=users,dc=iplanet,dc=comになります。

これは、ネーミング属性またはRDN属性が両方のディレクトリで同じ場合に適した解決方法です。ネーミング属性がou=people,o=iplanet.org:cn=users,dc=iplanet,dc=com:cn=%,cn=users,dc=iplanet,dc=comなどのようにそれぞれのディレクトリで異なる場合、グループ・メンバーシップの実際の識別名は、指定したマッピング・ルールでは導出できません。現在、このような場合に、uniquememberまたはその他の識別名タイプの属性に対して識別名マッピングを行うことはできません。

グループ・メンバーシップを同期化する場合は、ソース・ディレクトリと宛先ディレクトリに同じネーミング属性を指定してください。

関連項目:
マッピング・ルールの指定方法は、「マッピング・ルールの構成」を参照してください。

16.2.6 ログイン名の属性の選択

任意のOracleコンポーネントにログインするときのログイン名の属性にはエンド・ユーザーのアイデンティティが含まれます。これは、Oracleバックエンド・ディレクトリに、属性orclcommonnicknameattributeの値として格納されます。

Oracleバックエンド・ディレクトリがOracle Internet Directoryの場合、属性orclcommonnicknameattributeは、コンテナcn=common,cn=products,cn=oracleContext,identity_management_realmの下にあります。

Oracleバックエンド・ディレクトリがOracle Unified DirectoryまたはOracle Directory Server Enterprise Editionの場合、属性orclcommonnicknameattributeは、コンテナcn=common,<suffix>,identity_management_realmの下にあります。

デフォルトでは、orclcommonnicknameattribute属性の値はuidです。これは、ログインに使用されるアイデンティティがユーザー・エントリのuid属性に格納されることを意味します。

接続ディレクトリにログイン用の特定の属性が存在する場合は、Oracle Internet Directory内の正しいorclcommonnicknameattributeにその属性をマップする必要があります。これは、接続ディレクトリとの同期に関連付けられているコネクタ用のマッピング・ファイルにある、マッピング・ルールの1つであることが必要です。

たとえば、Oracle Internet DirectoryをMicrosoft Active Directoryと同期化していて、Microsoft Active Directoryのログイン識別子がユーザー・エントリのuserPrincipalName属性に含まれているとします。userPrincipalName属性の値をOracle Internet Directoryと同期化して、uid属性(orclcommonnicknameattribute属性の値)に格納するとしますこのマッピングは、ディレクトリ統合プロファイルのマッピング・ルールに反映される必要があります。

ログイン識別子用のその他の属性も使用できます。たとえば、ログインにemployeeIDを使用する場合は、それに応じてマッピング・ルールを設定できます。この設定は、構成には影響しません。

注意:
orclcommonnicknameattribute属性はOracle Application Server Single Sign-Onで広範囲に使用されるため、この属性を接続ディレクトリの属性にどのようにマップするかを慎重に計画してください。この属性を変更した場合は、変更を有効にするために、Oracle Application Server Single Sign-Onをリフレッシュする必要があります。

関連項目:
ログイン名の属性の設定手順は、『Oracle Fusion Middleware Guide to Delegated Administration for Oracle Identity Management』を参照してください。

16.2.7 ユーザー検索ベースの選択

ユーザー検索コンテキストは、ユーザーが存在するすべてのコンテナをリストする複数値属性によって表されます。デプロイに応じて、ユーザー集団全体にわたるユーザー検索コンテキスト値を設定するか、Oracle Internet Directoryセルフ・サービス・コンソールを使用してユーザー検索コンテキスト属性にコンテナを追加します。

関連項目:
ユーザー検索コンテキストの設定手順は、『Oracle Fusion Middleware Guide to Delegated Administration for Oracle Identity Management』を参照してください。

16.2.8 グループ検索ベースの選択

グループ検索コンテキストは、グループが存在するすべてのコンテナをリストする複数値属性によって表されます。デプロイに応じて、すべてのグループ・エントリにわたるグループ検索コンテキスト値を設定するか、Oracle Internet Directoryセルフ・サービス・コンソールを使用してグループ検索コンテキスト属性にコンテナを追加します。

関連項目:
グループ検索コンテキストの設定手順は、『Oracle Fusion Middleware Guide to Delegated Administration for Oracle Identity Management』を参照してください。

16.2.9 セキュリティ問題に対処する方法の決定

セキュリティ上の3つの主要な問題を考慮する必要があります。

- アクセス・ポリシー: ユーザー検索ベースとグループ検索ベースを不正なユーザーによるアクセスから適切に保護する必要があります。

- 同期: Oracle Internet Directoryおよび接続ディレクトリに接続するときにSSLを使用するようにOracle Directory Integration Platformを構成できます。これを実行すると、ディレクトリ・サーバー間で交換されるすべての情報が保護されます。

- パスワードの同期化: 構成に応じて、パスワードを同期化できます。たとえば、Oracle Internet Directoryが企業の中央ディレクトリの場合は、パスワードの変更を接続ディレクトリに通信できます。パスワードを同期化する場合は、ディレクトリ間の通信をSSLサーバー認証モードで構成することをお薦めします。

16.2.10 Oracle Access Managerによるデプロイの管理

Oracle Access Managerを使用して、接続ディレクトリと同期するOracle Internet Directoryのデプロイを管理するには、同期化されたユーザーがOracle Access Managerで表示できることを保証する必要があります。

関連項目:
Oracle Access Managerでユーザーを管理する方法は、『Oracle Access Manager IDおよび共通管理ガイド』を参照してください。

16.3 Microsoft Active Directory統合の概念

この項では、Oracleバックエンド・ディレクトリとMicrosoft Active Directoryとの統合に関するその他の考慮事項について説明します。内容は次のとおりです。

- Microsoft Active DirectoryからOracleバックエンド・ディレクトリへの同期

- WebDAVプロトコルの使用要件

- Windowsネイティブ認証

- Microsoft Active Directory用のOracleバックエンド・ディレクトリ・スキーマ要素

- 複数のMicrosoft Active Directoryドメイン・コントローラとの統合

- 複数ドメインMicrosoft Active Directory環境との同期化

- 外部セキュリティ・プリンシパル

関連項目:
第18章「Microsoft Active Directoryとの統合」

16.3.1 Microsoft Active DirectoryからOracleバックエンド・ディレクトリへの同期

Microsoft Active DirectoryからOracleバックエンド・ディレクトリへ変更を同期化するために、Oracle Directory Integration Platformでは、Microsoft Active Directory変更追跡メカニズムで使用可能になる増分変更をインポートします。Oracle Directory Integration Platformでは、次の2つのMicrosoft Active Directory変更追跡メカニズムをサポートします。

- DirSync方式。Microsoft Active DirectoryでサポートされるLDAPコントロールを使用します。

- USN-Changed方式。エントリの属性を使用します。

いずれの方式でも、変更が導出されるディレクトリに対して、Microsoft Active Directoryコネクタによりスケジュールされた間隔で問合せが行われます。各方式には、長所と短所があります。表16-3に、これら2つの方式の相違点を示します。

表16-3 DirSync方式とUSN-Changed方式の比較

考慮事項

DirSync方式

USN-Changed方式

キーの変更

エントリの一意の識別子であるObjectGUIDに変更を渡します。

識別名に変更を渡します。ObjectGUIDは識別名の変更の追跡に使用されます。

エラー処理

エラー状態の結果、同期が停止した場合、次のサイクル中に、適用済の変更がすべて読み取られ、スキップされます。

同期が原子性を持つ必要はありません。同期が停止した場合、同期が中断されたエントリから、次の同期サイクルが開始します。

検索結果の情報

変更は、変更された属性と新しい値のみです。このためUSN-Changed方式より速くなる可能性があります。

変更エントリのすべての属性が取得されます。取得された値は、Oracleバックエンド・ディレクトリに格納されている古い値と比較され、更新されます。このためDirSync方式より時間がかかる可能性があります。

複数値の属性の変更

複数値の属性に加えられた増分変更を、属性値の完全置換として反映します。

複数値の属性に加えられた増分変更を、属性値の完全置換として反映します。

同期点の追跡方法

ディレクトリ内の変更を問い合せたときに、ディレクトリの状態を識別するCookie値に基づく増分変更が渡されます。

USNChanged属性(長整数、すなわち8バイト)に基づいて、ディレクトリ内の変更を問い合せます。値を変更して、同期を開始する点を調整できます。

必須のユーザー権限

ユーザーは、対象となるネーミング・コンテキストに対する変更のレプリケート権限が必要です。これにより、Microsoft Active Directory内のすべてのオブジェクトおよび属性を、それらに対するアクセス保護に関係なく、読み取ることができます。

関連項目: DirSync方式の使用時にMicrosoft Active Directoryユーザーに権限を割り当てる方法は、Microsoft Knowledge Base Article 303972(http://support.microsoft.com/で入手可能)を参照してください。このコンテキストには、この記事にあるMicrosoft Active Directory管理エージェントに使用される方法を適用します。

Microsoft Active Directoryユーザーには、Oracleバックエンド・ディレクトリに対して同期化するすべての必須属性を読み取る権限が必要です。

関連項目: USN-Changed方式の使用時に、Microsoft Active Directoryユーザーに権限を割り当てる方法は、Microsoftライブラリ(http://msdn.microsoft.com/)
で入手可能なMicrosoft社のネットワーキングおよびディレクトリ関連のドキュメントを参照してください。

複数ドメインのサポート

異なるドメイン内のエントリに加えられた変更を読み取るには、異なるドメイン・コントローラへの個々の接続が必要です。

グローバル・カタログ・サーバーに接続することで、複数のドメインに加えられた変更を取得できます。

関連項目: 「複数ドメインMicrosoft Active Directory環境との同期化」

異なるMicrosoft Active Directoryドメイン・コントローラへの切替え時のレプリケートされたディレクトリからの同期

同期は続行可能です。レプリケートされた環境に接続するときも同期キーは同じです。

次のことが必要です。

- 既知のポイントに対する完全同期化

- USNChanged値の更新

- フェイルオーバー・ディレクトリとの同期開始

関連項目: 「同一ドメイン内の異なるMicrosoft Active Directoryドメイン・コントローラへの切替え」

同期の有効範囲

ディレクトリ内のすべての変更を読み取り、必須エントリへの変更のみをOracleバックエンド・ディレクトリに伝播します。

特定のサブツリーで変更の同期を有効にします。

ロード・バランサの背後に複数のMicrosoft Active Directory Serverを配置した環境の可用性

-

特定のMicrosoft Active Directoryドメイン・コントローラに接続するか、グローバル・カタログに接続します。次の場合にグローバル・カタログに接続します。

- インポート操作のみに関心がある場合

- グローバル・カタログに、同期化するすべてのエントリおよび属性が含まれている場合

- グローバル・カタログのパフォーマンスが許容範囲内である場合

関連項目:
「バックエンド・ディレクトリから接続ディレクトリへの同期」

16.3.2 WebDAVプロトコルの使用要件

WebDAVプロトコルを使用している場合、SSL用のアプリケーションを構成する必要があります。Oracleバックエンド・ディレクトリがエンド・ユーザーを認証する唯一の方法は、検証のためにActive Directoryにプレーン・テキスト・パスワードを渡すことであるため、Basic認証が必要です。Basic認証が存在しない場合は、Digest認証が使用されます。ただし、Digest認証の場合、検証のためにActive Directoryに渡すプレーン・テキスト・パスワードがOracleバックエンド・ディレクトリにないため、エンド・ユーザーは認証されません。エンド・ユーザーとサーバー間の通信チャネルが暗号化されないこと、エンド・ユーザー・パスワードも同様に暗号化されずに送信されることから、Basic認証はSecure Sockets Layer(SSL)を使用しないHTTP上ではサポートされません。

16.3.3 Windowsネイティブ認証

この項では、Windowsネイティブ認証をOracle Directory Integration Platformとともに使用する方法について説明します。内容は次のとおりです。

- Windowsネイティブ認証の概要

- 複数のMicrosoft Active Directoryドメインに対するユーザーの認証

- Windowsネイティブ認証によるアプリケーション認証メカニズムの上書き

16.3.3.1 Windowsネイティブ認証の概要

Windowsネイティブ認証は、Microsoft WindowsでのMicrosoft Internet Explorerユーザーの認証方法です。この機能がOracleAS Single Sign-On Serverで有効な場合、ユーザーはOracleAS Single Sign-On Serverのパートナ・アプリケーションに自動的にログインします。このためにユーザーは、Windowsのドメインへのログイン時に取得したKerberos資格証明を使用します。

Internet Explorerバージョン5.0以上では、Simple and Protected GSS-API Negotiation Mechanism(SPNEGO)プロトコルを使用して、ユーザーのKerberos資格証明をリクエスト先のKerberos対応のWebサーバーに自動的に渡すことができます。これにより、Webサーバーは資格証明を復号化してそのユーザーを認証できます。

Microsoft統合セキュリティやその他のタイプのセキュリティ・メカニズムは、Oracle Application Server Single Sign-OnをWindowsネイティブ認証と統合する際に使用できません。SPNEGOプロトコルは、Kerberosバージョン5とNT Lan Manager(NTLM)の両方の認証スキームをサポートしますが、Oracle Application Server 11gリリース1(11.1.1)では、SPNEGO使用のKerberos V5のみをサポートします。

注意:
この章ではWindows 2000についてのみ説明しますが、Windows XPプラットフォームもWindowsネイティブ認証をサポートしています。
ブラウザがInternet Explorer 5.0以上でない場合、Oracle Identity Managementでは、OracleAS Single Sign-On Serverを使用してユーザー認証を行います。外部ディレクトリに対する認証は、外部認証プラグインを使用して行われます。

次の手順は、シングル・サインオンで保護されたアプリケーションにユーザーがアクセスするときのプロセスを示しています(図16-5を参照)。

1. ユーザーはWindowsコンピュータでKerberosレルム(ドメイン)にログインします。

2. ユーザーは、Internet Explorerを使用してSingle Sign-Onパートナ・アプリケーションへのアクセスを試みます。

3. アプリケーションは、ユーザーを認証するためにSingle Sign-On Serverにルーティングします。このルーティングの一環として、次の動作が行われます。

1. ブラウザは、Key Distribution Center(KDC)からKerberosセッション・チケットを取得します。

2. OracleAS Single Sign-On Serverでは、Kerberosセッション・チケットを検証し、ユーザーは、認可されると、リクエストしたURLへのアクセスを許可されます。

4. このアプリケーションによって、ユーザーの必要とするコンテンツが表示されます。

図16-5 Windowsネイティブ認証の流れ

「図16-5 Windowsネイティブ認証の流れ」の説明

ユーザーがWindowsセッションからログアウトすると、このアプリケーションとアクセスされたすべてのシングル・サインオン・アプリケーションからも、同時にログアウトします。

Microsoft Active Directoryが中央ディレクトリであるデプロイでWindowsネイティブ認証を使用するには、ユーザーはMicrosoft Active Directory内に存在する必要があります。Windowsネイティブ認証が有効な場合、ローカルのOracleバックエンド・ディレクトリ・ユーザーがシングル・サインオン・サーバーを起動するには、ユーザー・エントリごとにorclsamaccountname属性とkrbprincipalname属性を移入する必要があります。

16.3.3.2 複数のMicrosoft Active Directoryドメインに対するユーザーの認証

1つのフォレストに属する複数のMicrosoft Active Directoryドメインに対してユーザーを認証するには、グローバル・カタログを作成し、認証のためにOracle Application Server Single Sign-Onをそのグローバル・カタログに接続します。しかし、ドメインが同じフォレストに属さない場合は、ドメイン間でドメイン信頼を作成する必要があります。構成手順の詳細は、「Windowsネイティブ認証の構成」を参照してください。

16.3.3.3 Windowsネイティブ認証によるアプリケーション認証メカニズムの上書き

Windowsネイティブ認証は、アプリケーションの既存の認証メカニズムを自動的に上書きしません。Windowsネイティブ認証とOracle Application Server Single Sign-Onを内部認証メカニズムを含むアプリケーションで使用するには、次のタスクのいずれかを実行する必要があります。

- アプリケーションの内部認証メカニズムを削除する。

- アプリケーションをOracle Application Server Single Sign-Onの外部アプリケーションとして構成する。この作業には、有効なアプリケーション・ユーザーの名前とパスワードをアプリケーション構成に格納し、ユーザーがOracle Application Server Single Sign-Onを使用してログインした後に、認証プロセスをユーザーに対して透過的にする必要があります。詳細は、Oracle Enterprise Single Sign-On Suite Plus管理者ガイドを参照してください。

16.3.4 Microsoft Active Directory用のOracleバックエンド・ディレクトリ・スキーマ要素

表16-4に、Microsoft Active Directoryからインポートされるユーザー用のOracleバックエンド・ディレクトリ・スキーマ要素を示します。

表16-4 Microsoft Active Directory用のOracleバックエンド・ディレクトリ・スキーマ要素

スキーマ要素

説明

orclObjectGUID

Microsoft Active DirectoryからOracleバックエンド・ディレクトリに移行されたユーザーおよびグループに対するMicrosoft Active DirectoryのOBJECTGUID属性値を格納します。

orclObjectSID

Microsoft Active DirectoryからOracleバックエンド・ディレクトリに移行されたユーザーおよびグループに対するMicrosoft Active DirectoryのOBJECTSID属性値を格納します。

orclSAMAccountName

Microsoft Active DirectoryのSAMAccountName属性値を格納します。Oracleバックエンド・ディレクトリでは、この属性はディレクトリ文字列型として定義されます。しかし、Microsoft Active Directoryでは、この属性に特殊文字または印刷不可能文字を使用できません。この属性を保持するエントリをOracleバックエンド・ディレクトリに追加する場合は、単純なテキスト文字列しか入力できず、そうしないとOracleバックエンド・ディレクトリからMicrosoft Active Directoryへの同期は失敗します。

orclUserPrincipalName

Microsoft Active DirectoryユーザーのKerberosユーザー・プリンシパル名を格納します。

orclADGroup

Microsoft Active Directoryのグループ属性を格納します。これらのグループ属性は、Oracle Directory Integration環境におけるMicrosoft Active Directoryのグループ・オブジェクトとOracleバックエンド・ディレクトリのグループ・オブジェクトの同期に使用されます。

orclADUser

Microsoft Active Directoryのユーザー属性を格納します。これらのユーザー属性は、Oracle Directory Integration and Provisioning環境におけるMicrosoft Active Directoryのユーザー・オブジェクトとOracleバックエンド・ディレクトリのユーザー・オブジェクトの同期に使用されます。

orclSourceObjectDN

Microsoft Active Directoryの各エントリに対する識別名を表します。この値は、両方のディレクトリ間に異なるドメインがマップされている場合の外部認証の実行に必要です。

関連項目:
Microsoft Active Directory用のOracle Internet Directoryスキーマ要素の詳細は、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』を参照してください。

16.3.5 複数のMicrosoft Active Directoryドメイン・コントローラとの統合

複数のドメインを持つMicrosoft Active Directoryのデプロイでは、単一のDITにすることも、複数のDITを組み合せることもできます。Microsoft Active Directoryでは、DITのグループをフォレストと呼びます。図16-6に、Microsoft Active DirectoryのフォレストがOracleバックエンド・ディレクトリにどのように反映されるかを示します。

図16-6 Oracleバックエンド・ディレクトリとMicrosoft Active Directory内のフォレストの間のマッピング

「図16-6 Oracleバックエンド・ディレクトリとMicrosoft Active Directory内のフォレストの間のマッピング」の説明

このディレクトリでは、2つのドメイン・ツリーが1つのフォレストを構成しています。これらのツリーは信頼関係にあり、一方のドメインのユーザーは他方のドメインのドメイン・コントローラによって認証されます。Microsoft Active Directory内のこのフォレストは、Oracleバックエンド・ディレクトリ内の同一に構成されているサブツリーにマップされます。

Oracleバックエンド・ディレクトリが中央ディレクトリであるデプロイの考慮事項

複数のMicrosoft Active Directoryドメインが存在する場合は、Microsoft Active Directoryドメインの数と同じ回数だけ、syncProfileBootstrapコマンドを実行する必要があります。これを実行するたびに、ターゲットのMicrosoft Active Directoryドメインで必要な特定のデータ・セットを選択します。

Oracle Directory Integration Platformによって、それぞれのMicrosoft Active Directoryドメイン内のユーザーおよびグループがプロビジョニングされます。プロビジョニングが行われるには、Oracleバックエンド・ディレクトリからMicrosoft Active Directoryドメインへの一方向の同期を構成する必要があります。

Microsoft Active Directoryが中央ディレクトリであるデプロイの考慮事項

複数のMicrosoft Active Directoryサーバーがある場合、Microsoft Active Directoryの各ドメインからデータをブートストラップする必要があります。Microsoft Active DirectoryからOracleバックエンド・ディレクトリへの一方向の同期にグローバル・カタログを使用する場合は、グローバル・カタログ・サーバーから1回のみブートストラップする必要があります。

Oracle Directory Integration Platformによって、それぞれのMicrosoft Active DirectoryドメインからOracleバックエンド・ディレクトリにユーザーおよびグループが同期化されます。プロビジョニングが実行される前に、Oracleバックエンド・ディレクトリと各Microsoft Active Directoryドメインのドメイン・コントローラ間で一方向の同期が確立されている必要があります。

16.3.6 複数ドメインMicrosoft Active Directory環境との同期化

この項では、複数ドメインMicrosoft Active Directory環境との同期化の考慮事項について説明します。内容は次のとおりです。

- Microsoft Active DirectoryからOracleバックエンド・ディレクトリへのインポートに必要な構成

- Microsoft Active Directory Lightweight Directory ServiceからOracleバックエンド・ディレクトリへのインポートに必要な構成

- Oracleバックエンド・ディレクトリからMicrosoft Active Directoryへのエクスポートに必要な構成

- 例: 複数の接続ディレクトリ・ドメインとの統合

16.3.6.1 Microsoft Active DirectoryからOracleバックエンド・ディレクトリへのインポートに必要な構成

通常、インポートを行うには、DirSync方式またはUSN-Changed方式のいずれを使用しているかに関係なく、Microsoft Active Directoryドメインごとに1つインポート・プロファイルを構成する必要があります。ただし、USN-Changed方式を使用している場合は、グローバル・カタログを使用すれば、Microsoft Active Directoryフォレスト全体からインポートできます。グローバル・カタログを使用するにはインポート・プロファイルを1つ構成するだけですが、次の考慮事項に注意してください。

- グローバル・カタログは読取り専用であるため、Oracleバックエンド・ディレクトリにデータをインポートする場合にのみ使用できます。

- グローバル・カタログにはすべての属性は含まれていませんが、使用可能な属性はMicrosoft Active Directoryで構成できます。

- グローバル・カタログは認証のポイントであるため、このポイントから同期が開始されると追加のオーバーヘッドが発生する可能性があります。

関連項目:
Microsoft Active Directoryスキーマ内のグローバル・カタログの属性の詳細は、Microsoft Help and Support(http://support.microsoft.com/)にあるMicrosoft Knowledge Base Article 256938を参照してください。

16.3.6.2 Microsoft Active Directory Lightweight Directory ServiceからOracleバックエンド・ディレクトリへのインポートに必要な構成

Microsoft Active Directoryと異なり、Microsoft Active Directory Lightweight Directory Service(AD LDS: 旧称Active Directory Application Mode(ADAM))からOracleバックエンド・ディレクトリへの同期にはUSN-Changed方式のみが使用されます。Microsoft AD LDSからOracleバックエンド・ディレクトリにエントリをインポートするには、Microsoft AD LDSに接続するインポート・プロファイルを、それぞれのポート詳細を使用して構成する必要があります。

16.3.6.3 Oracleバックエンド・ディレクトリからMicrosoft Active Directoryへのエクスポートに必要な構成

複数ドメインMicrosoft Active Directory環境と統合するために、Oracle Directory Integration Platformでは、各Microsoft Active Directoryドメインから構成情報を取得します。Microsoft Active Directoryドメインの数と同数のエクスポート・プロファイルを構成する必要があります。

16.3.6.4 例: 複数の接続ディレクトリ・ドメインとの統合

複数のドメインを持つ接続ディレクトリのデプロイでは、単一のDITにすることも、複数のDITを組み合せることもできます。図16-7に、接続ディレクトリの複数のドメインが、Oracleバックエンド・ディレクトリのDITにどのようにマップされるかを示します。

図16-7 Oracleバックエンド・ディレクトリとMicrosoft Active Directory内の複数のドメインの間のマッピングの例

「図16-7 Oracleバックエンド・ディレクトリとMicrosoft Active Directory内の複数のドメインの間のマッピングの例」の説明

図16-7では、接続ディレクトリ環境に1つの親ドメインと2つの子ドメインがあります。

最初の子ドメインa.us.MyCompany.comは、Oracleバックエンド・ディレクトリのdc=a,dc=us,dc=MyCompany,dc=comにマップされます。2番目の子ドメインb.us.MyCompany.comは、Oracleバックエンド・ディレクトリのdc=b,dc=us,dc=MyCompany,dc=comにマップされます。接続ディレクトリ環境の共通ドメイン・コンポーネントus.MyCompany.comは、Oracleバックエンド・ディレクトリのデフォルトのアイデンティティ管理レルム、この場合はdc=us,MyCompany,dc=comにマップされます。

16.3.7 外部セキュリティ・プリンシパル

Microsoft Active Directoryのユーザーやコンピュータ・アカウントは、コンピュータや人などの物理エンティティを表します。ユーザー・アカウントおよびコンピュータ・アカウントは、グループと同様に、セキュリティ・プリンシパルと呼ばれます。セキュリティ・プリンシパルは、自動的にセキュリティ識別子を割り当てられるディレクトリ・オブジェクトです。セキュリティ識別子を持つオブジェクトは、ネットワークにログインし、ドメイン・リソースにアクセスできます。ユーザー・アカウントまたはコンピュータ・アカウントは、次のことに使用されます。

- ユーザーまたはコンピュータのアイデンティティの認証

- ドメイン・リソースへのアクセス権の認可または否認

- 他のセキュリティ・プリンシパルの管理

- ユーザー・アカウントまたはコンピュータ・アカウントを使用して実行されるアクションの監査

たとえば、エンタープライズ管理者グループのメンバーであるユーザー・アカウントまたはコンピュータ・アカウントは、フォレスト内のすべてのドメイン・コントローラで、ログインの許可を自動的に付与されます。

ユーザー・アカウントおよびコンピュータ・アカウントは、Microsoft Active Directory Users and Computersを使用して、追加、無効化、リセットおよび削除されます。

Microsoft Active Directoryの信頼関係では、あるドメインのユーザーは、別のドメインのドメイン・コントローラにより認証されます。信頼関係は、推移的にも非推移的にもなります。

- 推移的な信頼関係では、あるドメインに拡張された信頼関係は、そのドメインを信頼する他のすべてのドメインに自動的に拡張されます。たとえば、A、B、Cの3つのドメインがあり、BとCはAと直接の信頼関係にあるとします。この場合、BとCの間にも信頼関係が生じます。これは、BとCの間には直接の信頼関係はありませんが、どちらもAと直接の信頼関係にあるためです。

- 非推移的な信頼関係では、信頼は直接関係のある2つのドメインに限定され、フォレスト内の他のドメインには適用されません。

あるフォレストのWindows 2000ドメインと、そのフォレスト外のWindows 2000ドメインの間に信頼関係が確立されている場合、外部ドメインからのセキュリティ・プリンシパルは、フォレスト内のリソースへのアクセス権を付与されます。外部ドメインからのセキュリティ・プリンシパルは、外部セキュリティ・プリンシパルと呼ばれ、Microsoft Active Directoryでは外部セキュリティ・プリンシパル・オブジェクトとして表されます。これらの外部セキュリティ・プリンシパルは、フォレスト外のドメインからメンバーを受け入れるドメイン・ローカル・グループのメンバーになることができます。

外部セキュリティ・プリンシパルは、Microsoft Active Directory環境の2つのドメイン間に非推移的な信頼関係がある場合に使用されます。

Microsoft Active Directory環境の非推移的な信頼関係では、あるドメインが別のドメインからの外部セキュリティ・プリンシパルを認識すると、そのエンティティはDNエントリのように表されます。そのエントリでは、RDNコンポーネントは、信頼関係のドメインにおける元のエントリのSIDに設定されます。グループの場合は、外部セキュリティ・プリンシパルの識別名が、信頼関係のドメインにおける元のエントリの識別名としてではなく、メンバーの値として表されます。このため、外部セキュリティ・プリンシパルがOracleバックエンド・ディレクトリと同期化されるときに問題が発生する可能性があります。

16.4 Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)統合の概念

この項では、Oracle Internet DirectoryとOracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)との統合に関するその他の考慮事項について説明します。内容は次のとおりです。

- Oracle Directory Server Enterprise EditionからOracle Directory Integration Platformへの同期

- Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)用のOracle Internet Directoryスキーマ要件

関連項目:
第20章「Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)との統合」

16.4.1 Oracle Directory Server Enterprise EditionからOracle Directory Integration Platformへの同期

Oracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)は、ディレクトリ・オブジェクトへの増分変更が保存される変更ログを保持します。Oracle Directory Server Enterprise EditionからOracle Internet Directoryへの同期は、この変更ログを活用します。

関連項目:

- 「バックエンド・ディレクトリから接続ディレクトリへの同期」。

- 変更ロギングを有効にしてOracle Internet Directoryサーバーを起動する方法は、『Oracle Identity Managementユーザー・リファレンス』のOracle Internet Directoryサーバー管理ツールに関する章を参照してください。

- 変更ロギングの構成方法は、Oracle Directory Server Enterprise Editionのドキュメントを参照してください。Sun Java System Directory Serverバージョン5.0以上またはOracle Directory Server Enterprise Editionと同期化する場合は、Retro Change Logプラグインを有効にする必要があります。

16.4.2 Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)用のOracle Internet Directoryスキーマ要素

Oracle Internet Directoryには、Oracle Directory Server Enterprise Editionからインポートされるユーザー用のorclSourceObjectDN属性が含まれます。orclSourceObjectDN要素は、Oracle Directory Server Enterprise Editionの各エントリの識別名を表します。この値は、両方のディレクトリ間に異なるドメインがマップされている場合の外部認証の実行に必要です。

16.5 IBM Tivoli Directory Server統合の概念

この項では、Oracleバックエンド・ディレクトリとIBM Tivoli Directory Serverとの統合に関するその他の考慮事項について説明します。内容は次のとおりです。

- IBM Tivoli Directory Serverでのディレクトリ・オブジェクトの変更

- IBM Tivoli Directory Server用のOracleバックエンド・ディレクトリ・スキーマ要素

16.5.1 IBM Tivoli Directory Serverでのディレクトリ・オブジェクトの変更

IBM Tivoli Directory Serverは、ディレクトリ・オブジェクトへの増分変更が保存される変更ログを保持します。IBM Tivoli Directory ServerからOracleバックエンド・ディレクトリへの同期では、この変更ログを利用します。

注意:
IBM Tivoli Directory Serverバージョン6.2では、tombstoneがサポートされています。

16.5.2 IBM Tivoli Directory Server用のOracleバックエンド・ディレクトリ・スキーマ要素

表16-5に、IBM Tivoli Directory Serverからインポートされるユーザー用のOracleバックエンド・ディレクトリ・スキーマ要素を示します。

表16-5 IBM Tivoli Directory Server用のOracleバックエンド・ディレクトリ・スキーマ要素

スキーマ要素

説明

orclSourceObjectDN

Tivoliの各エントリに対する識別名を表します。この値は、両方のディレクトリ間に異なるドメインがマップされている場合の外部認証の実行に必要です。

orclTDSEntryUUID

IBM Tivoliの各エントリに対するentryUUID値を表します。この値は、同期キーとして使用されます。

orclTDSObject

Tivoliディレクトリ・オブジェクトを表します。

関連項目:

- 「バックエンド・ディレクトリから接続ディレクトリへの同期」。

- 変更ロギングを有効にしてOracle Internet Directoryサーバーを起動する方法は、『Oracle Identity Managementユーザー・リファレンス』のOracle Internet Directoryサーバー管理ツールに関する章を参照してください。

- 変更ロギングの構成方法については、IBM Tivoli Directory Serverのドキュメントを参照してください。

16.6 Novell eDirectoryおよびOpenLDAP統合の概念

この項では、Oracleバックエンド・ディレクトリとNovell eDirectoryまたはOpenLDAPとの統合に関するその他の考慮事項について説明します。内容は次のとおりです。

- Novell eDirectoryまたはOpenLDAPからOracleバックエンド・ディレクトリへの同期

- Novell eDirectory用のOracleバックエンド・ディレクトリ・スキーマ要素

- OpenLDAP用のOracleバックエンド・ディレクトリ・スキーマ要素

関連項目:
第22章「Novell eDirectoryまたはOpenLDAPとの統合」

16.6.1 Novell eDirectoryまたはOpenLDAPからOracleバックエンド・ディレクトリへの同期

Novell eDirectoryまたはOpenLDAPからOracleバックエンド・ディレクトリへ変更を同期化するために、Oracle Directory Integration Platformでは、Novell eDirectoryまたはOpenLDAPの各エントリの変更タイムスタンプを評価します。最後の同期の実行時間よりも新しいタイムスタンプを持つエントリがOracleバックエンド・ディレクトリで更新されます。

Novell eDirectoryまたはOpenLDAPで削除されたエントリについて、Oracle Directory Integration Platformでは、Oracleバックエンド・ディレクトリのエントリとNovell eDirectoryまたはOpenLDAPとの間で線形比較して削除済エントリを識別します。つまり、両方のディレクトリのエントリが指定された間隔で比較されます。Oracleバックエンド・ディレクトリとNovell eDirectoryまたはOpenLDAPの両方で使用できないエントリは削除されます。ディレクトリ・エントリが比較される際にサーバーでのパフォーマンスの低下を回避するために、DITの特定のサブセットを検索するように比較をカスタマイズできます。

関連項目:

- 「バックエンド・ディレクトリから接続ディレクトリへの同期」

- Oracleバックエンド・ディレクトリとNovell eDirectoryまたはOpenLDAPとの間で削除を同期化する際にDITの特定のサブセットを検索する方法は、「手順6: 削除を同期化するためのNovell eDirectoryまたはOpenLDAPコネクタのカスタマイズ」を参照してください。

16.6.2 Novell eDirectory用のOracleバックエンド・ディレクトリ・スキーマ要素

表16-6に、Novell eDirectoryからインポートされるユーザー用のOracleバックエンド・ディレクトリ・スキーマ要素を示します。

表16-6 Novell eDirectory用のOracleバックエンド・ディレクトリ・スキーマ要素

スキーマ要素

説明

orclSourceObjectDN

Novell eDirectoryの各エントリに対する識別名を表します。この値は、両方のディレクトリ間に異なるドメインがマップされている場合の外部認証の実行に必要です。

orclndsobjectguid

調整に必須。Novell eDirectoryの各エントリに対するGUID値を表します。この値は、同期キーとして使用されます。

orclsourcemodifytimestamp

必須。Novell eDirectoryの各エントリのmodifytimestamp属性を表します。この値は、同期化する必要があるエントリを取得する際に使用されます。

orclsourceCreateTimestamp

必須。Novell eDirectoryの各エントリのcreatetimestamp属性を表します。この値は、削除されたエントリの同期で使用されます。

orclndsobject

Novell eDirectoryのNDSオブジェクトを表します。

関連項目:
Novell eDirectory用のOracleバックエンド・ディレクトリ・スキーマ要素の詳細は、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』を参照してください。

16.6.3 OpenLDAP用のOracleバックエンド・ディレクトリ・スキーマ要素

表16-7に、OpenLDAPからインポートされるユーザー用のOracleバックエンド・ディレクトリ・スキーマ要素を示します。

表16-7 OpenLDAP用のOracle Internet Directoryスキーマ要素

スキーマ要素

説明

orclSourceObjectDN

OpenLDAPの各エントリに対する識別名を表します。この値は、両方のディレクトリ間に異なるドメインがマップされている場合の外部認証の実行に必要です。

orclOpenLdapEntryUUID

調整に必須。OpenLDAPの各エントリに対するentryUUID値を表します。この値は、同期キーとして使用されます。

orclsourcemodifytimestamp

必須。OpenLDAPの各エントリのmodifytimestamp属性を表します。この値は、同期化する必要があるエントリを取得する際に使用されます。

orclsourceCreateTimestamp

必須。OpenLDAPの各エントリのcreatetimestamp属性を表します。この値は、削除されたエントリの同期で使用されます。

orclopenldapobject

OpenLDAPオブジェクトを表します。

関連項目:
OpenLDAP用のOracleバックエンド・ディレクトリ・スキーマ要素の詳細は、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』を参照してください。

16.7 Oracle Directory Integration Platform 11gリリース1(11.1.1)での接続ディレクトリ統合の制限事項

Oracle Directory Integration Platform 11gリリース1(11.1.1)では、スキーマおよびACLの同期はサポートされません。schemasyncツールを使用して、Oracle Internet Directoryと接続ディレクトリの間で、スキーマの違い、特に属性とオブジェクト・クラスの違いを確認できます。違いを確認した後、schemasyncツールを使用して、スキーマを同期することができます。

関連項目:
schemasyncツールの詳細は、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』を参照してください。

17 接続ディレクトリとの同期の構成

この章では、Oracleバックエンド・ディレクトリと接続ディレクトリを同期するための一般的な方法について説明します。内容は次のとおりです。

- 同期要件の確認

- expressSyncSetupを使用したインポートおよびエクスポートの同期プロファイルの作成

- 拡張統合オプションの構成

- カスタム同期コネクタの記述

注意:
この章では、第16章「接続ディレクトリ統合の概念と考慮事項」の内容を理解していることを前提としています。

関連項目:
Oracleバックエンド・ディレクトリと次の接続ディレクトリ間の統合の構成に関する手順は、次の各章を参照してください。

- 第18章「Microsoft Active Directoryとの統合」

- 第20章「Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)との統合」

- 第21章「IBM Tivoli Directory Serverとの統合」

- 第22章「Novell eDirectoryまたはOpenLDAPとの統合」

17.1 同期要件の確認

Oracleバックエンド・ディレクトリと接続ディレクトリ間の同期を準備するには、次の手順を実行します。

1. Oracleバックエンド・ディレクトリとその他のディレクトリが稼働していることを確認します。

2. 同期化するコンテナ内の関連エントリの読取りおよび書込みに十分な権限を持つユーザー・アカウントを接続ディレクトリに作成します。ディレクトリでtombstoneがサポートされている場合、アカウントにはtombstoneエントリの読取りに十分な権限も必要です。

- 接続ディレクトリからのインポート操作: ユーザー・アカウントにサブツリー・ルートに対する読取りアクセス権限を付与します。ユーザー・アカウントは、Oracle Directory Integration Platformとの同期化が行われる接続ディレクトリ内のソース・コンテナ(サブツリー・ルート)下のすべてのオブジェクトを読み取ることができる必要があります。接続ディレクトリのユーザー・アカウントに、Oracleバックエンド・ディレクトリと同期化されるすべてのオブジェクトに対する必要な権限があるかどうかを確認するには、次のようにコマンドライン・ユーティリティldapsearchを使用してサブツリー検索を実行します。

$ORACLE_HOME/bin/ldapsearch -h directory host-p directory port \
-b "DN of subtree" -s sub -D binddn "objectclass=*" -q

注意:
権限のあるディレクトリ・ユーザーのパスワードを要求されます。

ldapsearchユーティリティから返される結果には、同期化されるすべての属性および値を含む、対象の全オブジェクトが含まれている必要があります。

- 接続ディレクトリへのエクスポート操作: ユーザー・アカウントに、Oracle Directory Integration Platformからユーザーをエクスポートする全コンテナの親であるサブツリー・ルートに対する、次の権限を付与します。

- 書込み

- すべての子オブジェクトの作成

- すべての子オブジェクトの削除

関連項目:
ユーザー・アカウントに対する権限の付与方法の詳細は、接続ディレクトリのドキュメントを参照してください。

変更ロギングが有効な状態でOracleバックエンド・ディレクトリが稼働していることと、変更ログのパージ期間が7日以上に設定されていることを確認する必要もあります。

関連項目:

- 変更ロギングを有効にしてOracleディレクトリ・サーバーを起動する方法は、『Oracle Identity Managementユーザー・リファレンス』のOracle Internet Directoryサーバー管理ツールに関する章を参照してください。

- 変更ログのパージ期間の設定方法は、『Oracle Identity Managementユーザー・リファレンス』のorclPurgeTargetAgeに関する説明を参照してください。

17.2 expressSyncSetupを使用したインポートおよびエクスポートの同期プロファイルの作成

ORACLE_HOME/binディレクトリにあるexpressSyncSetupコマンドを使用すると、同期プロファイルのために、接続ディレクトリとOracleバックエンド・ディレクトリ間の初期のデータ移行を実行できます。

注意:

- 最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。

- Oracle Directory Integration Platformコマンドのいずれかを実行するには、あらかじめWLS_HOME環境変数とORACLE_HOME環境変数を設定しておく必要があります。

- Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

17.2.1 expressSyncSetupの構文

expressSyncSetup

expressSyncSetup -h HOST -p PORT -D wlsuser -pf PROFILE
-conDirType CONNECTED_DIRECTORY_TYPE -conDirURL CONNECTED_DIRECTORY_URL
-conDirBindDN CONNECTED_DIRECTORY_BIND_DN -conDircontainer SYNC_CONTAINER
[-ssl -keystorePath PATH_TO_KEYSTORE -keystoreType TYPE] [-enableProfiles {true |
false}] [-help]

17.2.2 expressSyncSetupの引数

-h | -host

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Serverホスト。

-p | -port

Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverのリスニング・ポート。

-D | wlsusser

Oracle WebLogic ServerのログインID。

注意:
Oracle WebLogic Serverのログイン・パスワードを要求されます。パスワードをコマンドライン引数として指定することはできません。最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。スクリプトからexpressSyncSetupを実行する必要がある場合、Oracle WebLogic Serverパスワードを含むファイルから、入力をリダイレクトできます。ファイル権限を使用してファイルを保護し、不要になったら権限を削除します。expressSyncSetupに複数のパスワードを入力する必要がある場合、接続ディレクトリ・バインドDNパスワード、Oracle WebLogic Serverログイン・パスワードの順で、ファイル内の別々の行に記載します。

-pf | -profile

プロファイル名。ASCII以外の文字は「プロファイル名」ではサポートされていないため、プロファイルの名前をASCII文字のみを使用して指定します。

-conDirType

接続ディレクトリのタイプ。サポートされている値は、ActiveDirectory、EDirectory、iPlanet、OpenLDAP、ADAM、Tivoli、OIDおよびExchangeServer2003です。

-conDirUrl

接続ディレクトリが稼働しているURL。host:portという形式です。

-conDirBindDN

接続ディレクトリ・サーバーのバインドDN。次に例を示します。

administrator@idm2003.net

cn=orcladmin, cn=Directory Manager

注意:
接続ディレクトリのバインドDNパスワードを要求されます。パスワードをコマンドライン引数として指定することはできません。最良のセキュリティ・プラクティスは、コマンドからの要求への応答としてのみ、パスワードを入力することです。スクリプトからexpressSyncSetupを実行する必要がある場合、接続ディレクトリ・バインドDNパスワードを含むファイルから、入力をリダイレクトできます。ファイル権限を使用してファイルを保護し、不要になったら権限を削除します。expressSyncSetupに複数のパスワードを入力する必要がある場合、接続ディレクトリ・バインドDNパスワード、Oracle WebLogic Serverログイン・パスワードの順で、ファイル内の別々の行に記載します。

-conDirContainer

同期コンテナ。次に例を示します。

ou=sales,dc=us,dc=com

OU=Groups,DC=imtest,DC=com

CN=Users,DC=imtest,DC=com

-ssl

SSLモードでコマンドを実行します。

注意:
Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverは、SSLモードでこのコマンドを実行するようにSSLに対して構成されている必要があります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の「SSLの構成」を参照してください。

-keystorePath

キーストアへのフルパス。

-keystoreType

-keystorePathで識別されるキーストアのタイプ。たとえば、-keystorePath jksまたは-keystorePath PKCS12などです。

-enableProfiles

作成されたプロファイルを有効にする場合はtrue、有効にしない場合はfalseを指定します。

-help

コマンドの使用方法のヘルプを提供します。

17.2.3 expressSyncSetupのタスクと使用例

expressSyncSetup -h myhost.mycompany.com -p 7005 -D login_ID -pf myProfile \
-conDirType ACTIVEDIRECTORY -conDirUrl server.mycompany.com:5432 \
-conDirBindDN administrator@idm2003.net -conDirContainer ou=sales,dc=us,dc=com \
-enableProfiles false \

expressSyncSetup -help

17.2.4 expressSyncSetupコマンドの概要

expressSyncSetupコマンドは、事前定義の仮定を使用して2つの同期プロファイル(インポート用およびエクスポート用)を作成することを可能にします。Oracle Directory Integration Platformがすでに稼働している場合は、プロファイルを有効にすると、ユーザーおよびグループが接続ディレクトリに格納されているコンテナとOracleバックエンド・ディレクトリ内のコンテナとの間で、ユーザーおよびグループの同期化をすぐに開始できます。

注意:
自分の環境用の同期プロファイルをカスタマイズする際に、デプロイ作業を容易にするためにテスト・ユーザーとテスト・グループを追加することが必要になる場合があります。同期プロファイルのカスタマイズとテストが終了したときには、必ずテスト・ユーザーとテスト・グループを削除してください。

構成を簡単にするために、expressSyncSetupコマンドでは次のことを仮定します。

- Oracle Internet Directoryでは、デフォルト・レルムのユーザーのエントリはコンテナcn=users,default_realm_DN内にありますが、Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionではデフォルト・レルムのユーザーはコンテナcn=users,default_metadata_suffix内にあります。

- デフォルト・レルムのグループのエントリは、Oracle Internet Directoryではコンテナcn=groups,default_realm_DN内にあり、Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionではコンテナdefault_metadata_suffix内にあります。

- インストール時に作成されたOracle Directory Integration Platformマスター・マッピング・ルール・ファイルは、$ORACLE_HOME/ldap/odi/confにあります。

- マスター・ドメイン・マッピング・ルールは、$ORACLE_HOME/ldap/odi/conf/ディレクトリにあります。

- ログオン資格証明は、Oracleディレクトリ・サーバー内のユーザー・コンテナに対して、プロファイル、レルムおよびアクセス制御を構成するための十分な権限を持つOracle Directory Integration Platform管理者のものです。dipadmingrpのメンバーには、必要な権限があります。
Oracle Internet Directoryでは、Oracle Directory Integration Platform管理者グループは次のようになります。

cn=dipadmingrp,cn=dipadmins,cn=directory integration platform,cn=products,cn=oraclecontext

Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionでは、Oracle Directory Integration Platform管理者グループは次のようになります。

cn=dipadmingrp,cn=dipadmins,cn=directory integration platform,<suffix>

次の手順に従い、expressSyncSetupコマンドを実行し、接続ディレクトリのcn=users,default_naming_contextとOracleバックエンド・ディレクトリのcn=users,default_realmとの間で、ユーザーとグループが同期していることを確認します。

1. 「expressSyncSetupの構文」を使用してExpress構成を実行します。

2. expressSyncSetupコマンドにより、profile_nameImportおよびprofile_nameExportという名前の2つのプロファイルが作成されます。デフォルトでは、どちらのプロファイルも無効になっています。接続ディレクトリからOracleバックエンド・ディレクトリへの同期が必要な場合はprofile_nameImportプロファイル、Oracleバックエンド・ディレクトリから接続ディレクトリへの同期が必要な場合はprofile_nameExportプロファイルを有効にします。activate操作を指定してmanageSyncProfilesコマンドを使用し、プロファイルを有効にします。

3. スケジューリングの間隔が経過するまで待ち、次のコマンドを入力して同期が開始されたことを確認します。コマンドを実行すると、権限のあるディレクトリ・ユーザーのパスワードを要求されます。

$ORACLE_HOME/bin/ldapsearch -h OID host -p OID port \
-D binddn -q \
-b "orclodipagentname=import profile,cn=subscriber profile,cn=changelog
subscriber,cn=oracle internet directory" -s base "objectclass=*"
orclodipsynchronizationstatus orclodiplastsuccessfulexecutiontime

注意:
デフォルトのスケジューリング間隔は60秒(1分)です。Oracle Enterprise Manager Fusion Middleware Controlを使用すると、デフォルトのスケジューリング間隔を変更できます。Oracle Enterprise Manager Fusion Middleware Controlの使用方法は、第7章「ディレクトリ同期プロファイルの管理」を参照してください。

同期が正常に開始された場合は、次のようになります。

- 「同期ステータス」属性の値は、「同期成功」です。

- 「最終正常実行時間」属性の値は、その実行の具体的な日時です。この値は、現在の日時に近い値である必要があります。

次に、正常な同期を示す結果の例を示します。

Synchronization successful 20060515012615

注意:

- 日時は、現在の日時に近い値である必要があります。

- ldapsearchコマンドを実行する場合は、インストール時に指定された、orcladminパスワードと同一のdipadminパスワードが必要です。

4. 同期が開始されていることを確認した後、Oracleバックエンド・ディレクトリと接続ディレクトリ内のエントリを調べ、接続ディレクトリのcn=users,default_naming_contextとOracleバックエンド・ディレクトリのcn=users,default_realm間で、ユーザーおよびグループが同期していることを確認します。

注意:

インポートとエクスポートの同期プロファイルをうまくカスタマイズするためには、その他の構成タスクがすべて終了するまで、SSLを有効にしないでください。

17.3 拡張統合オプションの構成

Oracle Directory Integration Platformをインストールすると、サポート対象のOracleおよびサード・パーティの接続ディレクトリごとにインポートおよびエクスポートの同期プロファイルのサンプルが自動的に作成されます。インストール・プロセス時またはexpressSyncSetupコマンドによって作成されたインポートおよびエクスポートの同期プロファイルは、Oracleバックエンド・ディレクトリと接続ディレクトリの統合をデプロイする際に使用する開始点としてのみ利用されます。デフォルトの同期プロファイルは事前定義の仮定を使用して作成されるため、次の項目で説明されているように、環境に合せてそれらをさらにカスタマイズする必要があります。

- レルムの構成

- Access制御リストのカスタマイズ

- マッピング・ルールのカスタマイズ

- SSLモードでの同期用接続ディレクトリ・コネクタの構成

- Oracleバックエンド・ディレクトリから接続ディレクトリへのパスワードの同期の有効化

- 外部認証プラグインの構成

関連項目:
インストール・プロセス時に作成されたサンプルの同期プロファイルの詳細は、個々の接続ディレクトリ統合に関する章を参照してください。

インストール・プロセス時に作成された同期プロファイルのサンプルをカスタマイズするには、manageSyncProfilesコマンドのcopy操作でそれらのプロファイルをコピーし、manageSyncProfilesコマンドのactivate操作でそのコピーを有効にします。

17.3.1 レルムの構成

注意:
Oracleバックエンド・ディレクトリがOracle Unified DirectoryまたはOracle Directory Server Enterprise Editionのいずれかである場合、これらのディレクトリのデフォルト・コンテナは、メタデータの接尾辞となります。このため、cn=users, <metadata_suffix>およびcn=groups,<metadata_suffix>エントリを追加して、ドメイン・マッピング・ルールを更新することが必要となる場合があります。

レルムを構成する手順は、次のとおりです。

1. 「ディレクトリ情報ツリーの構造の選択」での説明や、「デプロイの計画」でのより具体的な説明に従って、レルム識別名構造を選択します。

2. ユーザーのログイン名の属性を選択します。この属性には、ログインに使用される属性の名前が含まれます。デフォルトではuidです。詳細は、「ログイン名の属性の選択」を参照してください。

- Microsoft Active Directoryと統合して、userprincipalname属性をログインに使用する場合は、userprincipalnameをOracleバックエンド・ディレクトリのuid属性にマップします。

- Novell eDirectoryまたはOpenLDAPと統合して、mail属性をログインに使用する場合は、mailをOracleバックエンド・ディレクトリのuid属性にマップします。

3. Oracleバックエンド・ディレクトリでusersearchbase値とgroupsearchbase値を設定します。これらの値によって、Oracleバックエンド・ディレクトリ内でユーザーおよびグループを検索する場所が、各種Oracleコンポーネントに指定されます。これらの値は、インストール時にデフォルトの値に設定されます。ただし、2つのディレクトリ内のDIT構造に対応するように、これらの値をリセットすることが必要になる場合があります。これらを正しく設定してください。間違って設定すると、同期が正常に機能していても、コンポーネントがOracleバックエンド・ディレクトリのユーザーやグループにアクセスできないままになる可能性があります。
ユーザー検索ベースとグループ検索ベースを構成する場合、例のように、usersearchbaseの値は、cn=users,dc=us,dc=MyCompany,dc=comまたはその親の1つに設定する必要があります。同様に、DITにgroupsというサブツリーがあるとすると、複数の値のあるgroupsearchbase属性は、次の両方に設定します。

- cn=groups,dc=us,dc=MyCompany,dc=comまたはその親の1つ

- cn=users,dc=us,dc=MyCompany,dc=com

ユーザー検索ベースとグループ検索ベースを構成するには、Oracle Internet Directoryセルフ・サービス・コンソールを使用します。

4. Oracleバックエンド・ディレクトリでusercreatebase値とgroupcreatebase値を設定します。これらの値は、各種Oracleコンポーネントに、ユーザーおよびグループを作成できる場所を指定します。これらの値は、インストール時にデフォルトの値に設定されます。
ユーザー作成ベースとグループ作成ベースを構成する場合、例のように、usercreatebaseの値は、cn=users,dc=us,dc=MyCompany,dc=comまたはその親の1つに設定する必要があります。同様に、groupcreatebaseはcn=groups,dc=us, dc=MyCompany,dc=comまたはその親の1つに設定します。

ユーザー作成ベースとグループ作成ベースを構成するには、Oracle Internet Directoryセルフ・サービス・コンソールを使用します。

関連項目:
『Oracle Fusion Middleware Guide to Delegated Administration for Oracle Identity Management』のアイデンティティ管理レルムのコンフィギュレーション・セットの変更に関する項

17.3.2 Access制御リストのカスタマイズ

この項では、インポート・プロファイル、エクスポート・プロファイルおよびその他のOracleコンポーネント用に、ACLをカスタマイズする方法を説明します。内容は次のとおりです。

- インポート・プロファイル用ACLのカスタマイズ

- エクスポート・プロファイル用ACLのカスタマイズ

- その他のOracleコンポーネント用ACL

17.3.2.1 インポート・プロファイル用ACLのカスタマイズ

インポート・プロファイルは、Oracleバックエンド・ディレクトリにアクセスするためにOracle Directory Integration Platformにより使用されるアイデンティティです。ACLにより、ユーザー・コンテナおよびグループ・コンテナ、またはアクセスするエントリのあるサブツリーで、インポート・プロファイルによるオブジェクトの追加、変更および削除ができるようにする必要があります。デフォルトでは、インポート・プロファイルは、デフォルト・レルムのレルム管理者グループ(cn=RealmAdministrators, cn=groups,cn=OracleContext,realm_DN)の一部です。このグループは、デフォルト・レルムの識別名の下にある任意のエントリに対してあらゆる操作を実行する権限を持ちます。

Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionバックエンド・ディレクトリ用のACLのカスタマイズ

Oracleバックエンド・ディレクトリがOracle Unified DirectoryまたはOracle Directory Server Enterprise Editionのいずれかである場合、インポート・プロファイルでは、メタデータの接尾辞のDNの下にあるユーザーおよびグループを追加、変更および削除できます。メタデータ以外の接尾辞の場合は、ACLを次のように設定して、コンテナが他のソースからユーザーおよびグループをインポートできるようにする必要があります。

dn: <Container DN>
changetype:modify
add: aci
aci: (target="ldap:///<Container DN>")(version 3.0; acl "Anonymous read-search
access"; allow (read,add,delete,search,write,compare,proxy)
groupdn="ldap:///cn=dipadmingrp,cn=DIPadmins,cn=Directory Integration
Platform,<metadata suffix>"; allow (read,add,delete,search,write,compare,proxy)
groupdn="ldap:///cn=odipigroup,cn=DIPadmins,cn=Directory Integration
Platform,<metadata suffix>"; )
-
add: aci
aci: (targetattr="*")(version 3.0; acl "Anonymous read-search access";
allow (search,read,write,compare,add)
groupdn="ldap:///cn=dipadmingrp,cn=DIPadmins,cn=Directory Integration
Platform,<metadata suffix>"; allow (search,read,write,compare,add)
groupdn="ldap:///cn=odipigroup,cn=DIPadmins,cn=Directory Integration
Platform,<metadata suffix>";

Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionバックエンド・ディレクトリ用のLDIF ACLのカスタマイズ

前述のACLの例を参照してください。必要に応じて、操作を実行するDNで<Container DN>を置き換え、DIP構成中にDIPメタデータを格納するために指定した接尾辞で<metadata suffix>を置き換えます。

次のldapmodifyコマンドを使用して、LDIFファイルをアップロードできます。

$ORACLE_HOME/bin/ldapmodify -h OID host -p OID port
-D binddn -q -v -f realmacl.ldif

コマンドを実行すると、権限のあるディレクトリ・ユーザーのパスワードを要求されます。

Oracle Internet Directoryバックエンド・ディレクトリ用のACLのカスタマイズ

Oracleバックエンド・ディレクトリがOracle Internet Directoryである場合は、Oracle Internet Directoryリリース11gリリース1(11.1.1)とともにインストールされるデフォルト・レルムとのインポートの同期用にACLをカスタマイズする必要はありません。それより前のリリースのOracle Internet Directoryからアップグレードする場合、あるいはデフォルト以外のOracle Internet Directoryレルムと同期が行われる場合、適切なサブツリーまたはコンテナで必要な権限が、同期を処理するインポート・プロファイルに付与されていることを確認します。

関連項目:
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のアクセス制御に関する章

Oracle Internet Directoryバックエンド・ディレクトリ用のLDIF ACLのカスタマイズ

LDIF形式のACLテンプレートは、$ORACLE_HOME/ldap/schema/oid/oidRealmAdminACL.sbsファイルを参照してください。Oracleバックエンド・ディレクトリがOracle Internet Directoryであり、デフォルト・レルムでACLを変更していない場合、このテンプレート・ファイルは、置換変数をインスタンス化し、%s_SubscriberDN%をOracle Internet Directoryのデフォルト・レルムDNで、%s_OracleContextDN%をcn=OracleContext,default_realm_DNでそれぞれ置換すると、直接適用できます。

たとえば、realmacl.ldifがインスタンス化されたファイルの場合、次のldapmodifyコマンドを使用してアップロードできます。

$ORACLE_HOME/bin/ldapmodify -h OID host -p OID port
-D binddn -q -v -f realmacl.ldif

コマンドを実行すると、権限のあるディレクトリ・ユーザーのパスワードを要求されます。

17.3.2.2 エクスポート・プロファイル用ACLのカスタマイズ

Oracle Directory Integration Platformから接続ディレクトリにアクセスできるようにするには、接続ディレクトリでアイデンティティを作成する必要があります。このアイデンティティは、各エクスポート・プロファイルで構成されます。

デフォルト・レルム外にあるユーザー・レコードの同期をサポートするためのACLのカスタマイズ方法

Oracleバックエンド・ディレクトリがOracle Internet Directoryであり、Oracle Internet Directoryデフォルト・レルム外にあるユーザー・レコードを同期する必要がある場合は、LDIFファイルを使用して、次のようにACLを変更します。

注意:
このACLの変更は、DIP同期を使用して、デフォルト・レルム外にあるOIDユーザー・パスワードを接続ディレクトリにエクスポートする場合に必要です。

1. ルート・ディレクトリ固有のエントリでACIを問い合せ、出力をLDIFファイルにバックアップとして保存します。

ldapsearch -h OID host -p port -D cn=orcladmin -w password -s base -L
-b "" objectclass=* orclaci orclentrylevelaci > /tmp/orig-root-acis.ldif

2. 次のACIを探します。

orclaci: access to
attr=(userpkcs12,orclpkcs12hint,userpassword,pwdhistory,orclrevpwd) by
group="cn=OracleUserSecurityAdmins,cn=Groups,cn=OracleContext"
(search,read,write,compare) by self (search,read,write,compare) by * (none)

3. DIP DNを含めるようにACIを変更し、new-root-acis.ldifという名前でファイルを保存します。
変更されたファイルは次のようになります。

orclaci: access to
attr=(userpkcs12,orclpkcs12hint,userpassword,pwdhistory,orclrevpwd) by
group="cn=OracleUserSecurityAdmins,cn=Groups,cn=OracleContext"
(search,read,write,compare) by self (search,read,write,compare) by
dn="cn=odisrv,cn=Registered Instances,cn=Directory Integration
Platform,cn=products,cn=oraclecontext" (search,read)* by * (none)

4. ファイルの最初の行の後に次の2行を追加します。

changetype: modify
replace: orclaci

ファイルの先頭の正しい内容は次のとおりです。

dn: Container DN
changetype: modify
replace: orclaci
orclaci: access to
...

5. ldapmodifyコマンドを使用して、変更されたACIを適用します。

$ORACLE_HOME/bin/ldapmodify -h OID host -p OID port -D cn=orcladmin -w password -v -f /tmp/new-root-acis.ldif

17.3.2.3 その他のOracleコンポーネント用ACL

デフォルトのACLにより、ユーザーおよびグループの作成、変更、削除ができますが、それはデフォルト・レルムの下のユーザー・コンテナとグループ・コンテナに限られます。その他のコンテナのオブジェクトを同期化するには、ACLをカスタマイズする必要があります。

Oracleコンポーネント用にACLをカスタマイズするために使用できるサンプルACLファイルがあります。これらのサンプル・ファイルは、$ORACLE_HOME/ldap/schema/oidディレクトリにインストールされています。これには、次のようなものがあります。

- oidUserAdminACL.sbs: Oracleコンポーネントのサブツリーに対して、ユーザーの管理やアクセスに必要な権限を付与します。

- oidGroupAdminACL.sbs: Oracleコンポーネントのサブツリーに対して、グループの管理やアクセスに必要な権限を付与します。

- oidUserAndGroupAdminACL.sbs: Oracleコンポーネントでサブツリー内のユーザーとグループを管理およびアクセスするための権限を付与します。

コンテナごとに必要な権限を付与するように、ACLポリシーをカスタマイズできます。

関連項目:
ACLをカスタマイズする方法は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のアクセス制御に関する章を参照してください。

17.3.3 マッピング・ルールのカスタマイズ

同期プロファイルの重要な要素であるマッピング・ルールは、同期化されるディレクトリ情報、および同期化されたときのディレクトリ情報の変換方法を決定します。マッピング・ルールは、要件にあわせて実行時に変更できます。

サンプルの同期プロファイルには、それぞれデフォルトのマッピング・ルールが含まれています。これらのルールには、デフォルトで同期用に構成された、最小限のデフォルトのユーザー属性およびグループ属性が含まれています。

注意:
進行中の同期は、ディレクトリ内の変更より前に構成されたマッピング・ルールに依存します。マッピングの一貫性を確実にするには、同期化済のエントリを削除するか、完全同期を実行することが必要な場合があります。

マッピング・ルールにより、ソース・ディレクトリと宛先ディレクトリが同期化されるときに、データを変換する方法が決定されます。次の変更を行う必要がある場合は、サンプル・プロファイルにあるデフォルトのマッピング・ルールをカスタマイズします。

- 識別名マッピングの変更。識別名マッピングにより、接続ディレクトリのDITをOracleバックエンド・ディレクトリのDITにマップする方法を決定します。

- 同期化する必要がある属性の変更。

- 同期時に発生する変換(マッピング・ルール)の変更。

宛先ディレクトリで変換の結果得られたデータがそのディレクトリのスキーマに一致すれば、どのようなマッピングでも実行できます。

関連項目:

- マッピング・ルールの詳細は、「マッピング・ルールの構成」を参照してください。

- 一方のディレクトリから他方のディレクトリに同期化する際に、属性値がどのように変換されるかの例は、「サポートされている属性マッピング・ルールと例」を参照してください。

- インポート・マッピング・ルールの例は、$ORACLE_HOME/ldap/odi/conf/activeimp.map.masterファイルを参照してください。

Oracleバックエンド・ディレクトリと接続ディレクトリ間の同期を確立すると、同期プロファイルの属性マッピング・ルールを、デプロイの要件を満たすようにカスタマイズできます。

同期プロファイルの属性マッピング・ルールをカスタマイズする手順は、次のとおりです。

1. サンプルのマッピング・ルール・ファイルの複製を作成します。サンプルのマッピング・ルール・ファイルは、$ORACLE_HOME/ldap/odi/confディレクトリにあり、各種プロファイル用にmap.masterの拡張子が付いています。

2. 前述の変更を行うために、サンプル・マッピング・ルール・ファイルを編集します。マッピング・ルールの編集方法は、「マッピング・ルールの構成」を参照してください。

3. 変更後、manageSyncProfilesコマンドのupdate操作を使用してプロファイルを更新します。たとえば、次のコマンドは、プロファイル名myImportProfileをmyPropertiesFileという名前のプロパティ・ファイルで更新します。

manageSyncProfiles update -profile profile_name -file myPropertiesFile

関連項目:
『Oracle Identity Managementユーザー・リファレンス』のOracle Directory Integration Platformツールの章のmanageSyncProfilesに関する説明

4. スケジューリングの間隔が経過するまで待ってから、同期化されたユーザーおよびグループをチェックし、属性マッピング・ルールが要件を満たしていることを確認します。

ヒント:
属性マッピング・ルールをカスタマイズする際に、テスト・ユーザーとテスト・グループをOracleバックエンド・ディレクトリまたは接続ディレクトリに追加すると便利です。

17.3.4 SSLモードでの同期用接続ディレクトリ・コネクタの構成

デフォルトでは、expressSyncSetupコマンドにより作成されたインポートおよびエクスポート同期プロファイルに対して、SSLは使用できません。SSLモードで同期化するかどうかは、デプロイ要件によって決まります。たとえば、SSLは、パブリック・データの同期化には必要ありませんが、パスワードなどの機密情報の同期化には必要です。Oracleバックエンド・ディレクトリと接続ディレクトリ間で、パスワードの変更を同期化するには、SSLサーバー認証モードを使用する必要があります。

注意:
同期プロファイルをSSL用に構成する前に、非SSLモードでユーザーを正常に同期化できることを確認してください。

チャネルを保護するには、次のことが必要です。

- Oracleバックエンド・ディレクトリとOracle Directory Integration Platform間でのSSLの有効化

- Oracle Directory Integration Platformと接続ディレクトリ間でのSSLの有効化

Oracleバックエンド・ディレクトリとOracle Directory Integration Platform間のSSLまたはそのサーバーと接続ディレクトリ間のSSLを有効にできますが、機密情報を同期化する前に、完全にチャネルを保護することをお薦めします。パスワードの同期化などの場合は、SSLを介してのみ同期化を行うことができます。

SSLを構成するには、次のことを実行する必要があります。

- 『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のSecure Sockets Layer(SSL)に関する章の説明に従って、Oracleディレクトリ・サーバーをSSLモードで実行します。

- 第2章「Oracle Directory Integration Platformのセキュリティ機能」の説明に従って、Oracle Directory Integration PlatformをSSLモードで実行します。Directory Integration PlatformのSSLモードは、Oracleバックエンド・ディレクトリ・サーバーの起動時に使用されたものと同じモードである必要があります。SSLモード1は認証なし、SSLモード2はサーバー認証です。

注意:
Oracleバックエンド・ディレクトリがOracle Internet Directoryである場合、Oracle Directory Integration Platformでは、認証なしのSSLモード(SSLモード1)のみをサポートします。Oracle Unified DirectoryまたはOracle Directory Server Enterprise EditionがOracleバックエンド・ディレクトリである場合、使用できるSSLはSSLサーバー認証(SSLモード2)のみとなります。

- 接続ディレクトリ・サーバーをSSLモードで実行します。SSLを介した接続ディレクトリとの通信では、SSLサーバー認証が必要です。これには、Oracleバックエンド・ディレクトリとOracle Directory Integration Platformの両方をSSLサーバー認証モードで実行する必要があります。

次の手順を実行し、SSLモードでの接続ディレクトリとの通信を構成します。

1. 接続されているディレクトリ用の証明書を生成します。サーバーからのトラスト・ポイント証明書のみ必要です。接続されているディレクトリの証明書ストアに証明書を格納します。

2. 信頼できる認証局(CA)証明書をBase 64エンコードされた形式にエクスポートします。

3. keytoolコマンドを使用して信頼できるCA証明書をJavaキーストア(JKS)にインポートします。Oracle Directory Integration Platformで既存のJKSをすでに使用している場合、-keystore PATH_TO_JKSオプションを使用して、その場所を特定します。Oracle Directory Integration Platformにまだ使用するJKSがない場合、-keystore PATH_TO_JKSオプションで特定した場所にkeytoolによって作成されます。

次に例を示します。

keytool –importcert –trustcacerts –alias mycert –file PATH_TO_CERTIFICATE \
-keystore PATH_TO_JKS

-keystore PATH_TO_JKSオプションで特定されたJKSを初めて使用する場合、パスワードを指定し、次のステップaおよびbも実行する必要があります。

1. manageDIPServerConfigコマンドを使用して、手順3で使用した場所とパスワードを用いてDirectory Integration Platformの構成を更新します。次に例を示します。

manageDIPServerConfig set -h HOST –p PORT -D WLS_USER \
-attribute keystorelocation -value PATH_TO_CERTIFICATE

2. 次のWLSTコマンドを使用して、PASSWORD変数を、キーストアの作成時に使用したパスワードに置き換え、資格証明ストア・フレームワーク(CSF)の資格証明を更新します。

createCred(map="dip", key="jksKey", user="jksUser",
password="PASSWORD",desc="jks password")

4. manageSyncProfilesコマンドの変更操作を使用して、ホスト名、プロファイルおよびconnectedDirectoryURL属性を含む接続ディレクトリ接続情報を変更します。

manageSyncProfiles update -profile profile_name -file myMapFile

connectedDirectoryURL属性を構成する場合、次の形式を使用します。

host:port:sslmode

sslmodeに対してサポートされる値は次のとおりです。

表17-1 connectedDirectoryURL属性のsslmodeに対してサポートされる値

サポートされるsslmode値

説明

0

SSLなしモード。すべてのディレクトリ・タイプに対してサポートされます。

1

認証なしモード。証明書はありません。Oracle Internet Directoryに対してのみサポートされます。

2

サーバーのみの認証モード。証明書が必要です。すべてのディレクトリ・タイプに対してサポートされます。

5. ステップ3で新規JKSを使用した場合、Oracle Directory Integration PlatformをSSLモードで再起動する必要があります。ステップ3で既存のJKSを使用した場合、6に進みます。

6. テスト・ユーザーを追加し、正常に同期することを確認します。テスト・ユーザーが正常に同期しない場合、SSL構成のトラブルシューティングを行います。

注意:
Oracle Directory Integration Platformでは、クライアント/サーバー認証モードでのSSLはサポートされていません。

関連項目:
「バックエンド・ディレクトリと接続ディレクトリのSSL証明書の管理」

17.3.5 Oracleバックエンド・ディレクトリから接続ディレクトリへのパスワードの同期の有効化

Oracle Unified Directoryバックエンド・ディレクトリまたはOracle Directory Server Enterprise Editionバックエンド・ディレクトリから接続ディレクトリへのパスワードの同期化はサポートされていません。

Oracle Internet Directoryから接続ディレクトリにパスワードを同期化するには、Oracle Internet Directoryサーバーでパスワード・ポリシーを有効にする必要がある以外に、パスワードの可逆暗号化を有効にする必要がある場合があります。

Oracle Internet Directoryと接続ディレクトリとの間のハッシュ・アルゴリズムに互換性がないか、サポートされていない場合のみ、Oracle Internet Directoryサーバーで可逆パスワード暗号化を有効にします。

たとえば、IBM Tivoli Directory ServerとOracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)は、Oracle Internet Directoryと同様のハッシング・アルゴリズムをサポートします。したがって、Oracle Internet DirectoryからIBM Tivoli Directory ServerまたはOracle Directory Server Enterprise Editionへパスワードを同期するには、Oracle Internet Directoryサーバーでパスワード・ポリシーのみ有効にする必要があります。

しかし、Oracle Internet DirectoryからMicrosoft Active DirectoryまたはNovell eDirectoryへパスワードを同期する場合、両方ともOracle Internet Directoryと同様のハッシュ・アルゴリズムをサポートしないため、Oracle Internet Directoryサーバーでパスワード・ポリシーと可逆パスワード暗号化を有効にする必要があります。

注意:
Oracle Internet Directory 10g(10.1.4.0.1)の時点では、Oracle Internet Directoryは各レルムで複数のパスワード・ポリシーをサポートします。これは一般に、ファイングレイン・パスワード・ポリシーと呼ばれます。
ファイングレイン・パスワード・ポリシーの詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』を参照してください。

パスワード・ポリシーを有効にするには、適切なコンテナのorclPwdPolicyEnable属性に値1を割り当てます。Oracle Internet Directoryサーバーでパスワードの可逆暗号化を有効にするには、適切なコンテナのorclpwdEncryptionEnable属性に値1を割り当てます。

たとえば、あるレルムで、デフォルト・ポリシーに基づくパスワード・ポリシーとパスワードの可逆暗号化を有効化するには、次のエントリで、orclPwdPolicyEnable属性およびorclpwdEncryptionEnable属性に値1を割り当てます。

cn=default,cn=PwdPolicyEntry,cn=common,cn=products,cn=oraclecontext,Realm_DN

そのためには、ldapmodifyを使用して次の内容のLDIFファイルをアップロードします。

dn: cn=default,cn=PwdPolicyEntry,cn=common,cn=products,cn=oraclecontext,Realm_DN
changetype: modify
replace: orclpwdpolicyenable
orclpwdpolicyenable: 1
-
replace: orclpwdencryptionenable
orclpwdencryptionenable: 1

関連項目:
Oracle Internet Directoryのパスワード・ポリシーの詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』を参照してください。

17.3.6 外部認証プラグインの構成

Oracle Directory Integration Platformでは、Javaベースの外部認証プラグインがサポートされます。Microsoft Active DirectoryおよびOracle Directory Server Enterprise Edition/Sun Java System Directory Serverにしか対応していない以前のPL/SQLベースのプラグインのかわりに、Javaプラグインを使用することをお薦めします。

プラグイン用の構成ツールはoidexcfgというJavaプログラムです。このプログラムを使用して、Microsoft Active Directory、Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)、Novell eDirectory、IBM Tivoli Directory ServerおよびOpenLDAPのJavaベースの外部認証プラグインを構成します。

注意:
oidexcfgツールでは、単一ドメインで機能するようにしか外部認証プラグインを構成しません。複数ドメインで機能するように外部認証プラグインを設定するには、「複数のドメインに対する外部認証の構成」に記載されている手順を実行する必要があります。

外部認証プラグインを構成するには、次の手順を実行します。

1. (オプション) SSLを使用して認証プラグインと外部LDAPディレクトリ間との通信を保護する場合にのみ、この手順を実行します。通信を保護しない場合は、手順2に進みます。
SSLを使用して認証プラグインと外部LDAPディレクトリ間の通信を保護するには、外部の認証ディレクトリの信頼できる証明書がファイル・システム上のウォレットに存在する必要があります。手順3でoidexcfgを使用してプラグインを構成すると、外部LDAPディレクトリ構成に関する情報の入力を要求され、このウォレットの場所を識別できます。

SSLを使用する場合、ここで証明書を新規または既存のウォレットに配置します。

注意:
証明書は、認証プラグインと外部LDAPディレクトリ間の通信をSSLによって保護できるようにします(手順3でoidexcfgを実行した場合は、Oracleバックエンド・ディレクトリとの通信は保護されません)。

2. JavaのCLASSPATH環境変数にoidexcfg.jarおよびldapjclnt11.jarを含めます。環境変数を設定するには、次のようにします。

UNIX/Linux環境:

setenv CLASSPATH=$ORACLE_HOME/ldap/jlib/oidexcfg.jar:$ORACLE_HOME/ldap/jlib/ldapjclnt11.jar:$CLASSPATH

Windows環境:

set CLASSPATH=%ORACLE_HOME%/ldap/jlib/oidexcfg.jar;%ORACLE_HOME%/ldap/jlib/ldapjclnt11.jar;%CLASSPATH%

3. 次のコマンドを実行し、oidexcfgを使用してプラグインを構成します。SSLに必要な信頼できる証明書を含むウォレットの場所など、外部LDAPディレクトリ構成に関する情報の入力を要求されます。

注意:
次のように、完全修飾パスを使用してウォレットの場所を指定する必要があります。

/etc/ORACLE_HOME/wallets/ewallet.p12

次のコマンドを実行し、oidexcfgを使用してプラグインを構成します。

java -classpath $CLASSPATH oracle.ldap.extplg.oidexcfg -h OID_Host
-p OID_Port -D BindDN -w password -t Directory_Type

ディレクトリ・タイプを指定する-tオプションは、次の値をサポートしています。

- ad: Microsoft Active Directory

- adam: Microsoft Active Directory Application Mode

- iplanet: Oracle Directory Server Enterprise EditionおよびSun Java System Directory Server

- edirectory: Novell eDirectory

- openldap: OpenLDAP

- tivoli: IBM Tivoli Directory Server

17.3.6.1 複数のドメインに対する外部認証の構成

外部認証プラグインを設定して複数の外部認証ドメインで動作させる場合は、外部構成ツールを実行した後にいくつかの手順を手動で実行する必要があります。次のように設定を続行します。

1. 「外部認証プラグインの構成」で説明されているように、外部認証プラグインを構成します。

2. 手順1で構成ツールにより作成されたプラグイン構成エントリを検索し、検索結果をファイルに出力します。次のようなldapsearchコマンドを使用します。

ldapsearch -p 3060 -D binddn -q -s sub -L \
-b "cn=plugin,cn=subconfigsubentry" cn="oidexplg_*_ad" >> output.ldif

注意:
パスワードを要求されます。

この例では、Microsoft Active Directoryのcnが表示されます。表17-2に示すように、構成したプラグインのタイプに正しいプラグインのcnを使用します。例に示すように、*をワイルドカードとして使用できます。

表17-2 外部認証プラグインの識別名

プラグイン・タイプ

DN

Microsoft Active Directory

cn=oidexplg_compare_ad, cn=plugin,cn=subconfigsubentry

cn=oidexplg_bind_ad, cn=plugin,cn=subconfigsubentry

Oracle Directory Server Enterprise Edition
(Sun Java System Directory Server)

cn=oidexplg_compare_iplanet, cn=plugin,cn=subconfigsubentry

cn=oidexplg_bind_iplanet, cn=plugin,cn=subconfigsubentry

Novell eDirectory

cn=oidexplg_compare_Novell eDirectory, cn=plugin,cn=subconfigsubentry

cn=oidexplg_bind_Novell eDirectory, cn=plugin,cn=subconfigsubentry

OpenLDAP

cn=oidexplg_compare_openldap, cn=plugin,cn=subconfigsubentry

cn=oidexplg_bind_openldap, cn=plugin,cn=subconfigsubentry

3. 出力ファイルを調べます。Microsoft Active Directoryプラグインの場合、出力ファイルは次のようになります。

dn: cn=oidexplg_compare_ad,cn=plugin,cn=subconfigsubentry
cn: oidexplg_compare_ad
objectclass: orclPluginConfig
objectclass: top
orclpluginname: oidexplg.jar
orclplugintype: operational
orclpluginkind: Java
orclplugintiming: when
orclpluginldapoperation: ldapcompare
orclpluginsecuredflexfield;walletpwd: password
orclpluginsecuredflexfield;walletpwd2: password
orclpluginversion: 1.0.1
orclpluginisreplace: 1
orclpluginattributelist: userpassword
orclpluginentryproperties: (!(&(objectclass=orcladobject)(objectclass=orcluserv2)))
orclpluginflexfield;host2: host.domain.com
orclpluginflexfield;port2: 636
orclpluginflexfield;isssl2: 1
orclpluginflexfield;host: host.domain.com
orclpluginflexfield;walletloc2: /location/wallet
orclpluginflexfield;port: 389
orclpluginflexfield;walletloc: /tmp
orclpluginflexfield;isssl: 0
orclpluginflexfield;isfailover: 0
orclpluginclassreloadenabled: 0
orclpluginenable: 0
orclpluginsubscriberdnlist: cn=users,dc=us,dc=oracle,dc=com

dn: cn=oidexplg_bind_ad,cn=plugin,cn=subconfigsubentry
cn: oidexplg_bind_ad
objectclass: orclPluginConfigobjectclass: top
orclpluginname: oidexplg.jar
orclplugintype: operational
orclpluginkind: Java
orclplugintiming: when
orclpluginldapoperation: ldapbind
orclpluginversion: 1.0.1
orclpluginisreplace: 1
orclpluginentryproperties: (!(&(objectclass=orcladobject)(objectclass=orcluserv2)))
orclpluginclassreloadenabled: 0
orclpluginflexfield;walletloc2: /location/wallet
orclpluginflexfield;port: 389
orclpluginflexfield;walletloc: /tmp
orclpluginflexfield;isssl: 0
orclpluginflexfield;isfailover: 0
orclpluginflexfield;host2: host.domain.com
orclpluginflexfield;port2: 636
orclpluginflexfield;isssl2: 1
orclpluginflexfield;host: host.domain.com
orclpluginenable: 0
orclpluginsecuredflexfield;walletpwd: password
orclpluginsecuredflexfield;walletpwd2: password
orclpluginsubscriberdnlist:
cn=users,dc=us,dc=oracle,dc=com

4. 次のように、出力ファイルからLDIFファイルを新規作成します。

1. エントリ名を変更します。前の手順で示した例では、cn=oidexplg_compare_ad,cn=plugin, cn=subconfigsubentryをcn=oidexplg_compare_ad1, cn=plugin,cn=subconfigsubentryに、cn=oidexplg_bind_ad, cn=plugin,cn=subconfigsubentryをcn=oidexplg_bind_ad1, cn=plugin,cn=subconfigsubentryに変更します。

2. orclpluginenableの値を変更します。有効にする場合は値1を、無効にする場合は値0を使用します。

3. 外部ディレクトリのホスト名とポート番号について、orclpluginflexfield;hostとorclpluginflexfield;portの値を変更します。

4. orclpluginflexfield;issslの値を変更します。外部ディレクトリに対してSSL接続を有効にする場合は値1を、無効にする場合は値0を使用します。値1を使用する場合は、ウォレット・ロケーションとパスワードについて、orclpluginflexfield;walletlocとorclpluginsecuredflexfield;walletpwdの値も変更する必要があります。

5. orclpluginflexfield;isfailoverの値を変更します。バックアップ外部ディレクトリに対してフェイルオーバーを設定する場合は、値1を使用します。値1を使用する場合は、ホスト名とポート番号について、orclpluginflexfield;host2とorclpluginflexfield;port2の値も変更する必要があります。バックアップ・ディレクトリ・サーバーに対してSSL接続を使用するには、orclpluginflexfield;walletloc2とorclpluginsecuredflexfield;walletpwd2の値を変更する必要があります。

6. プラグインの起動ネーミング・コンテキストについて、orclpluginsubscriberdnlistを変更します。

7. プラグインのリクエスト・グループについて、orclPluginRequestGroupを変更します。この属性が検索結果の出力にない場合は、LDIFファイルに属性と値を追加します。

5. 変更したプラグイン構成エントリをOracle Internet Directoryサーバーに追加します。次のようなコマンドを使用します。

$ORACLE_HOME/ldap/bin/ldapadd -h host -p port -D binddn -q \
-v -f input.ldif

注意:
パスワードを要求されます。

17.4 カスタム同期コネクタの記述

Oracle Directory Integration Platformは、カスタム同期コネクタをサポートします。このトピックにはカスタム・コネクタの記述に役立つ情報が説明されおり、次の項が含まれます。

- インバウンド・コネクタ

- アウトバウンド・コネクタ

17.4.1 インバウンド・コネクタ

インバウンド・コネクタを記述するには、次の手順を実行します。

1. リーダーを実装します。リーダーは、一般的にターゲット・システムのコネクタ・クラスを拡張してDISReadInterfaceを実装します。DISReadInterfaceの様々なメソッドは、javadoc内で指定されます。リーダーの実装例は、「サンプル・リーダー」を参照してください。

2. 構成ファイルのサンプルを作成します。一般的な構成ファイルを次に示します。

[INTERFACEDETAILS]
Reader: Complete_classname_including_packageName
SkipErrorToSyncNextChange: false
SearchDeltaSize: 500
UpdateSearchCount: 100

3. 一連のマッピング・ルールを含むマップ・ファイルを作成します。

4. configfileパラメータ、mapfileパラメータおよびfilterパラメータを設定してプロパティ・ファイルを作成します。

インバウンド・コネクタのテスト手順:

1. manageSyncProfilesコマンドのregister操作を使用して、テスト・プロファイルを作成します。詳細は、「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

2. ロギング・メッセージを検証します。

3. Oracle Internet Directoryを調べ、発生した同期を検証して、適切なエントリが作成されたか確認します。

17.4.1.1 サンプル・リーダー

package oracle.ldap.odip.gsi;
import oracle.ldap.odip.engine.AttrHandler;
import oracle.ldap.odip.engine.ChangeRecord;
import oracle.ldap.odip.engine.Connector;
import oracle.ldap.odip.engine.ConfigReader;
import oracle.ldap.odip.engine.Constants;
import oracle.ldap.odip.engine.DISReadInterface;
import oracle.ldap.odip.engine.DISFilterInterface;
import oracle.ldap.odip.engine.ODIException;
import oracle.ldap.odip.engine.Debug;
import oracle.ldap.odip.map.MapRules;
import oracle.ldap.odip.map.OrclFilter;
import oracle.ldap.odip.util.Utils;
//Imports added for ODLLogger
import oracle.core.ojdl.logging.ODLLogger;
import oracle.dms.context.ExecutionContext;
import oracle.core.ojdl.logging.ODLLevel;
import oracle.core.ojdl.logging.ODLHandler;
import java.util.logging.Handler;
import java.util.logging.Level;

import oracle.ldap.odip.DIPLogger;

public class SampleReader implements DISReadInterface
{

/*
** Member variables used
*/
protected  NamingEnumeration  mEnumerate;
protected  Attributes         mAttribs;
protected  Attribute          mAttrib;
protected  Attribute          mAttribAllValues;
protected  SearchResult       mResult;
protected  MapRules           mMapRules;
/*
** Vector to store the list of required attributes
*/
protected  Vector             mReqAttrList = new Vector();

/*
** List of source attributes whose changes need to be mapped
*/
protected  Vector             mSrcAttrList = new Vector();
protected  String             mMapFilter;
protected  int                mAppliedChangeNum = 0;
protected  int                mAvailableChangeNum = 700;
protected  DISFilterInterface mFilter;

/*
** LastChangeNumber that is read
*/

protected  String            mReadChangeNum;

/*
** List of attributes to be returned in changelog LDAPSearch
*/
protected  String[]           mRetAttribs;
private    int                mErrorCode = 0;

/*
** Constructor
*/
public SampleReader()
{
}

/**
** Constructor with the connector
*/
public SampleReader( Connector conn )
{
super(conn);

}

/**
** Get the last change key value
**
* @param   boolean Operation is success/failure
* @return  Object  lastkeyvalue to be stored
*/
public Object getLastChangeKey(boolean val)
{
if ( val == false )
{
int nval = Integer.parseInt(mReadChangeNum);
if ( nval > 0 )
{
nval--;
}
mReadChangeNum = String.valueOf(nval);
}
return (mReadChangeNum);
}

/**
** Initializes required values from hashtable passed from Profile
**
** @param   Connector   connection details with credentials
** @param   Hashtable   with the required parameters
** @throws  ODIException Indicating connection failure
*/
public void initialise(Connector conn,Hashtable pHash)
throws ODIException
{
m_logger.finest ( "Entry: SampleReaders.initialise");
setValues(conn);
mMapRules = (MapRules)pHash.get(Constants.MAPRULE_STR);

readCtx = connect();

pHash.put("READCONTEXT", readCtx);
pHash.put(Constants.READERCHANGEKEY_STR, Constants.CHANGE_NUM);
String key = (String)pHash.get(Constants.LASTAPPLIEDCHG_STR);
String val = null;
if ( key != null )
val = (String)pHash.get(key);
if ( val != null )
mAppliedChangeNum = Integer.parseInt((String)pHash.get(key));
mReadChangeNum = (String)pHash.get(key);
pHash.put(key, mReadChangeNum);
mFilter = (DISFilterInterface)pHash.get(Constants.MATCHRULE_STR);
mAvailableChangeNum = Integer.parseInt(initAvailableChgKey());
mSaveLastChgNum = mAppliedChangeNum;

try {
SearchControls pControls = new SearchControls();
pControls.setSearchScope(SearchControls.OBJECT_SCOPE);
pControls.setReturningAttributes(mRetAttribs);
pControls.setTimeLimit(3000000);

mEnumerate = mLdapCtx.search("","objectclass=*",pControls);
while ( mEnumerate.hasMoreElements() )
{
mResult = (SearchResult)mEnumerate.nextElement();
mAttribs = mResult.getAttributes();
}
// END INFEASIBLE
ConfigReader configInfo = (ConfigReader) pHash.get(Constants.CONFINFO_STR);

if (configInfo != null) {
mUpdateSearchCount = configInfo.getUpdateSearchCount();
mSearchDelta = configInfo.getSearchDeltaSize();
}
} catch (Exception ex)
// BEGIN INFEASIBLE
{

throw new ODIException(ODIException.LDAP_INITIALIZATION_EXCEPTION,ex);
}
// END INFEASIBLE
m_logger.finest ( "Exit: SampleReaders.initialise");
}

/**
** Search the changelog
** @throws ODIException
*/
public int searchChanges()
throws ODIException
{

int  temp;
int searchDelta = (int) mSearchDelta;
if ( mAvailableChangeNum <= mAppliedChangeNum ) return -1;
int  minChgNum = mAppliedChangeNum+1;
if ( mAvailableChangeNum -  mAppliedChangeNum >= searchDelta)
temp = mAppliedChangeNum + searchDelta;
else
temp = mAvailableChangeNum;

String searchF = "";
if ( mFilter != null ) {
searchF = mFilter.getSearchFilter();
m_logger.log(ODLLevel.NOTIFICATION,"SEARCHF", searchF );
}

StringBuffer filter = new StringBuffer(300);

/**
* SearchChanges is called to get all changes
*
*/
try {

mEnumerate = mReadCtx.search(
filter.toString());

}
catch ( Exception ex )
// BEGIN INFEASIBLE
{
throw ( new ODIException(ODIException.LDAP_SEARCH_EXCEPTION,
ex) );
}
finally {

m_logger.log(ODLLevel.NOTIFICATION, "SEARCH_SUCCESSFUL" ,new Integer( temp ));

mAppliedChangeNum = temp;
return mErrorCode;
}

public boolean hasMore()
throws ODIException
{
boolean  retval = false;
int count =0;

try {
if ( mEnumerate.hasMoreElements() )
{
retval = true;
}
else
{
while ( mAvailableChangeNum > mAppliedChangeNum ) {
if ( count >= mUpdateSearchCount )
break;

searchChanges();
count++;
if (mEnumerate.hasMoreElements())
{
retval = true;
break;
}
else
mReadChangeNum = String.valueOf(mAppliedChangeNum);
}
}
}
catch( Exception ex )
// BEGIN INFEASIBLE
{
throw (new ODIException(ODIException.LDAP_HASMORE_EXCEPTION,ex));
}
// END INFEASIBLE
if (retval == false) {  // no more results
mReadChangeNum = (new Integer(mAvailableChangeNum)).toString();
}
return retval;
}

/**
** Read the next change from the source
**
** @return  Object  the header part of the changes read.
*/
public Object getNextChange()
throws ODIException
{
try {

if ( mEnumerate.hasMoreElements() )
{
mResult = (SearchResult)mEnumerate.nextElement();
mAttribs = mResult.getAttributes();

}
catch ( Exception e )
// BEGIN INFEASIBLE
{
throw (new ODIException (ODIException.LDAP_GETNEXT_EXCEPTION, e));
}
// END INFEASIBLE

return mAttribs;
}

/**
** Create the change record from the data read from the file.
**
** @returns  ChangeRecord
*/
public ChangeRecord createChangeRecord(String dn)
throws ODIException
{

// Create the changerecord based on the mAttribs which contains all the attributes.

}

public String initAvailableChgKey() throws ODIException
{
// set the available changekey value. This reads the value equivalent to the latest changelog number in the ldap world.

}

}

17.4.2 アウトバウンド・コネクタ

アウトバウンド・コネクタを記述するには、次の手順を実行します。

1. ライターを実装します。ライターは、一般的にターゲット・システムのコネクタ・クラスを拡張してDISWriteInterfaceを実装します。DISWriteInterfaceの様々なメソッドは、Javadoc内で指定されます。リーダーの実装例は、「サンプル・ライター」を参照してください。

2. 構成ファイルのサンプルを作成します。一般的な構成ファイルを次に示します。

[INTERFACEDETAILS]
Reader: Complete_classname_including_packageName
SkipErrorToSyncNextChange: false
SearchDeltaSize: 500
UpdateSearchCount: 100

3. 一連のマッピング・ルールを含むマップ・ファイルを作成します。

4. configfileパラメータ、mapfileパラメータおよびfilterパラメータを設定してプロパティ・ファイルを作成します。

アウトバウンド・コネクタのテスト手順:

1. manageSyncProfilesコマンドのregister操作を使用して、テスト・プロファイルを作成します。詳細は、「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

2. ロギング・メッセージを検証します。

3. Oracle Internet Directoryを調べ、発生した同期を検証して、適切なエントリが作成されたか確認します。

17.4.2.1 サンプル・ライター

*/

import oracle.ldap.odip.engine.AttrHandler;
import oracle.ldap.odip.engine.ChangeRecord;
import oracle.ldap.odip.engine.ConfigReader;
import oracle.ldap.odip.engine.Connector;
import oracle.ldap.odip.engine.Constants;
import oracle.ldap.odip.engine.DISWriteInterface;
import oracle.ldap.odip.engine.ODIException;
import oracle.ldap.odip.map.MapRules;
import oracle.ldap.odip.util.Utils;

import oracle.core.ojdl.logging.ODLLogger;
import oracle.core.ojdl.logging.ODLLevel;
import oracle.core.ojdl.logging.ODLHandler;
import java.util.logging.Handler;
import java.util.logging.Level;

import oracle.ldap.odip.DIPLogger;

public class SampleWriter  implements DISWriteInterface {
protected Hashtable mProfile;
protected int mErrorCode = 0;
protected String mLastKeyValue;
protected String mLastWrittenKey;
protected Vector mWriteFilter = new Vector();
protected MapRules mMapRules;
protected String mNamingContext = "";
private String mOrigDstDn = "";
protected boolean mHandleModAsAdd = false;

/* Constructor */
public LDAPWriter() {
}

public LDAPWriter(Connector conn) {
super(conn);
}

public void initialise(Connector conn, Hashtable pHash)
throws ODIException {
m_logger.finest("Entry: LDAPWriter.initialise");
setValues(conn);
mProfile = pHash;
mMapRules = (MapRules) pHash.get(Constants.MAPRULE_STR);

connect();
ConfigReader configInfo = (ConfigReader) pHash.get(Constants.CONFINFO_STR);

if (configInfo != null) {
//mSearchDelta = configInfo.getSearchDeltaSize();
mHandleModAsAdd = configInfo.getHandleModAsAdd();
}

mLastWrittenKey = (String) pHash.get(Constants.READERCHANGEKEY_STR);
pHash.put("WRITECONTEXT", mLdapCtx);

NamingEnumeration filter = (NamingEnumeration) pHash.get("WriteFilter");

try {
while (filter.hasMoreElements()) {
mWriteFilter.add((String) filter.next());
}
} catch (Exception ex) {
//System.out.println("Error in initializing filter");
}

/*
** Get the lastapplied changekey value from the profile
** and use that string to determine the 'lastappliedchangenum'
** or lastappliedchangetime to be stored as the 'lastkeyvalue'
**
** Each of the insert/modify/delete routines, if the operation is
** successful, that lastkeyvalue is updated correspondingly. Otherwise
** it has the previous successful operation value
*/
m_logger.finest ( "Exit: LDAPWriter.initialise" );
}

public void setChanges(ChangeRecord chgrec) {
mChanges = chgrec;
}

public ChangeRecord getChanges() {
return mChanges;
}

public String getLastChangeKey() {
return mLastKeyValue;
}

public int writeChanges() throws ODIException {
m_logger.finest("Entry: LDAPWriter.writeChanges");
mErrorCode = 0;

m_logger.log(ODLLevel.FINE,
"\n Output ChangeRecord " + mChanges.toString());

String dn = mChanges.getChangeKey();

if ( mHandleModAsAdd && (mChanges.getChangeType() == Constants.CHGTYPE_MODIFY)) {
try {
mLdapCtx.getAttributes( mChanges.getChangeKey() );

}
catch (NameNotFoundException nnfe) {
m_logger.log(ODLLevel.ERROR,"ERROR_DN_CONN_DIR");
mChanges.setChangeType(Constants.CHGTYPE_MODRADD);
}
catch (NamingException ne) {
m_logger.log(ODLLevel.ERROR,"LDAP_WNAMING_EXCEPTION" , ne);
}

}
m_logger.log(ODLLevel.FINE,
"Changetype is " + mChanges.getChangeType());
mChanges.setChangeKey(ndn);

if (dn.length() > 1) {
//testnew(dn);
switch (mChanges.getChangeType()) {
case Constants.CHGTYPE_ADD:

if (mChanges.size() > 0) {
insert();
}

break;

case Constants.CHGTYPE_MODIFY:
// non-changelog-based changes
if (mChanges.size() > 0) {
modify();
}
else {
mErrorCode = -1;
}

break;

case Constants.CHGTYPE_DELETE:
delete();

break;

case Constants.CHGTYPE_MODRADD:

// non-changelog-based changes
if (mChanges.size() > 0) {
modifyRadd();
}

break;

case Constants.CHGTYPE_MODRDN:
modRDNchangelog(dn);

break;

case Constants.CHGTYPE_MODDN:
m_logger.log(ODLLevel.FINE,
"Processing moddn");
modDNchangelog(dn);
break;

default:

//INFEASIBLE
break;
}
} else // BEGIN INFEASIBLE
{
m_logger.log(ODLLevel.ERROR,
"ENTRY_NOT_EXISTS_DELETE");
m_logger.log(ODLLevel.FINE,
"Synchrozing a deletion, entry to delete is not found. Ignore.");
mErrorCode = 99;

return mErrorCode;
}

// END INFEASIBLE
Object chgInfo = mChanges.getChangeInfo();

try {
if (chgInfo instanceof Attributes) {
Attributes attrs = (Attributes) chgInfo;
mLastKeyValue = (String) ((Attribute) attrs.get(mLastWrittenKey)).get();
}
} catch (Exception ex) {
//System.out.println("Caught the exception here " + mErrorCode);
if (mErrorCode != 0) {
m_logger.log(ODLLevel.ERROR,
"EXCEPTION_FOR_DN", new Object [] { dn, new Integer ( mErrorCode ) , ex.toString()});
}
}

mChanges.setChangeKey(mOrigDstDn);

return mErrorCode;
}

public void insert() throws ODIException {
m_logger.finest("Entry: LDAPWriter.insert");
String dn = mChanges.getChangeKey();
Enumeration attrdtls = mChanges.getAll();

m_logger.log(ODLLevel.FINE,
"Processing Insert Operation ..");

while (attrdtls.hasMoreElements()) {
AttrHandler temp = (AttrHandler) attrdtls.nextElement();
attr = attrHandlerToAttr((AttrHandler) temp);
if (attr != null && temp.getAttrChgType() != Constants.ATTRCHGTYPE_DELETE) {
attrs.put(attr);
}
}
createEntry(dn, attrs);
m_logger.finest("Exit: LDAPWriter.insert");
}

public void modify() throws ODIException {
m_logger.finest("Entry: LDAPWriter.modify");
String attrname = mChanges.getChangeKey();

m_logger.log(ODLLevel.FINE,
"Processing Modify Operation ..");

int pos = attrname.indexOf('=');

String naming = null;

if (pos > 0) {
naming = attrname.substring(0, pos).trim();
}

}

/**
* Delete the entry
*/
public void delete() {
m_logger.finest("Entry: LDAPWriter.delete");
try {
m_logger.log(ODLLevel.FINE,
"Processing Delete Operation ..");

}

/**
** Handle the ModRDN operation
**
** @throws ODIException
*/
protected void modDNchangelog(String newDn) throws ODIException {
String newDN = null;
m_logger.log(ODLLevel.FINE,
"Processing change log based ModRDN operation .." +
" DN passed in: " + newDn);

String dn = mChanges.getChangeKey();

}

/**
** Handle the ModRDN operation
**
** @throws ODIException
*/
protected void modRDNchangelog(String newDn) throws ODIException {

}

protected void performModDN(String oldDN, String newDN)
throws ODIException {
}

/*
** First check whether the 'dn' already exists.
** If exists,
**     do a modify.
** else
**     construct objectclasses and do a add
*/

// public void modifyRadd(boolean rdn) throws ODIException
public void modifyRadd() throws ODIException {
m_logger.finest("Entry: LDAPWriter.modifyRadd");

}

/**
** Compare the value with the old value, and replace it, if the new value
** is different from the old value
*/
public void checkNReplace(String dn, Attributes attrs)
throws ODIException {

}

//BEGIN INFEASIBLE
public int getErrorCode() {
return mErrorCode;
}

public int getChangeType() {
return mChanges.getChangeType();
}

public String getEventType() {
return "";
}

//END INFEASIBLE
}

18 Microsoft Active Directoryとの統合

この章では、本番環境でOracle Identity ManagementとMicrosoft Active Directoryを統合する手順について説明します。内容は次のとおりです。

- Microsoft Active Directoryの同期要件の確認

- Microsoft Active Directoryとの基本同期の構成

- Microsoft Active Directoryとの拡張統合の構成

- インポート操作変更追跡でのDirsync方式の使用

- Windowsネイティブ認証の構成

- Oracle Internet Directory外部セキュリティ・プリンシパル参照とMicrosoft Active Directoryとの同期の構成

- 同一ドメイン内の異なるMicrosoft Active Directoryドメイン・コントローラへの切替え

- Microsoft Active Directory Lightweight Directory Service用のMicrosoft Active Directoryコネクタの構成

- Microsoft Exchange Server用のMicrosoft Active Directoryコネクタの構成

注意:
この章に進む前に、前の章で説明している概念を理解している必要があります。次の章は特に重要です。

- 第1章「Oracle Identity Management統合の概要」

- 第4章「Oracle Directory Integration Platformの操作」

- 第5章「Oracle Directory Synchronization Serviceの概要」

- 第16章「接続ディレクトリ統合の概念と考慮事項」

Microsoft Active Directoryとの統合のデモンストレーションを構成する場合は、Oracle Identity Management 11gリリース1(11.1.1)のOracle By Exampleシリーズを参照してください。Oracle Technology Network(http://www.oracle.com/technology/)で参照可能です。

18.1 Microsoft Active Directoryの同期要件の確認

Microsoft Active Directoryで基本同期または拡張同期を構成するには、「同期要件の確認」の指示に従い、使用する環境で必要な同期要件が満たされていることを確認してください。

18.2 Microsoft Active Directoryとの基本同期の構成

Oracle Enterprise Manager Fusion Middleware ControlまたはmanageSyncProfilesコマンドを使用して、Microsoft Active Directoryの同期プロファイルを構成できます。詳細は、第7章「ディレクトリ同期プロファイルの管理」を参照してください。

ヒント:
Oracle Directory Integration Platformでは、1つのMicrosoft Active Directory(AD)と複数のOracleディレクトリ・サーバーを同時に同期化できます。

18.3 Microsoft Active Directoryとの拡張統合の構成

Oracle Directory Integration Platformをインストールすると、サポート対象の接続ディレクトリごとにインポートおよびエクスポートの同期プロファイルのサンプルが自動的に作成されます。Microsoft Active Directory用に作成された同期プロファイルのサンプルは、次のとおりです。

- ActiveImport: DirSync方式を使用して、Microsoft Active DirectoryからOracleバックエンド・ディレクトリに変更をインポートするためのプロファイル

- ActiveChgImp: USN-Changed方式を使用して、Microsoft Active DirectoryからOracleバックエンド・ディレクトリに変更をインポートするためのプロファイル

- ActiveExport: Oracleバックエンド・ディレクトリからMicrosoft Active Directoryに変更をエクスポートするためのプロファイル

注意:

- ActiveImportまたはActiveChgImpのいずれを使用するかは、変更の追跡方法でDirSync方式かUSN-Changed方式のどちらを選択したかによって決まります。

- ユーザーのエクスポートおよびインポートの両方のためにActive DirectoryとOracleバックエンド・ディレクトリ間の統合を確立する場合は、ActiveExport検索フィルタをカスタマイズして、Oracle Directory Integration Platformでユーザーが2回エクスポートまたはインポートされないようにする必要があります。次に、同じActive Directoryインスタンスでエクスポート操作とインポート操作の両方が有効なときに使用できる、カスタマイズされたActiveExport検索フィルタの例を示します。

odip.profile.condirfilter ="searchfilter=(|(objectclass= group)(objectclass= organizationalunit)(&(objectclass=user) (!(objectclass=computer))))"

関連項目:
検索フィルタのカスタマイズの詳細は、「手順3: Microsoft Active Directoryから情報を取得する検索フィルタのカスタマイズ」を参照してください。

expressSyncSetupコマンドまたはOracle Enterprise Manager Fusion Middleware Controlを使用して、追加の同期プロファイルを作成することもできます。インストール・プロセス時またはexpressSyncSetupによって作成されたインポートおよびエクスポートの同期プロファイルは、Oracleバックエンド・ディレクトリとMicrosoft Active Directoryの統合をデプロイする際に使用する開始点としてのみ利用されます。デフォルトの同期プロファイルは事前定義の仮定を使用して作成されるため、次の手順を順序どおりに実行して、環境に合せてそれらをさらにカスタマイズする必要があります。

- 手順1: 統合の計画

- 手順2: レルムの構成

- 手順3: Microsoft Active Directoryから情報を取得する検索フィルタのカスタマイズ

- 手順4: ACLのカスタマイズ

- 手順5: 属性マッピングのカスタマイズ

- 手順6: 複数のMicrosoft Active Directoryドメインとの同期

- 手順7: Microsoft Active Directoryからの削除の同期化

- 手順8: SSLモードでの同期

- 手順9: パスワードの同期化

- 手順10: Microsoft Active Directory外部認証プラグインの構成

- 手順11: 構成後タスクおよび管理タスクの実行

18.3.1 手順1: 統合の計画

第16章「接続ディレクトリ統合の概念と考慮事項」、特に「Microsoft Active Directory統合の概念」を読んで、統合を計画します。「同期プロファイルの作成」の指示に従い、既存のActive Directoryテンプレート・プロファイルをコピーして、必ず新規のプロファイルを作成します。

18.3.2 手順2: レルムの構成

Oracleバックエンド・ディレクトリがOracle Internet Directoryである場合は、「レルムの構成」の指示に従い、レルムを構成してください。

18.3.3 手順3: Microsoft Active Directoryから情報を取得する検索フィルタのカスタマイズ

デフォルトで、Microsoft Active Directoryコネクタにより、同期用に構成されたコンテナ内のすべてのオブジェクトに対する変更が取得されます。特定のタイプの変更のみ(ユーザーやグループに対する変更のみなど)を取得する場合は、LDAP検索フィルタを構成する必要があります。このフィルタにより、Microsoft Active DirectoryコネクタのMicrosoft Active Directoryに対する問合せの際に、不要な変更が排除されます。フィルタは、同期プロファイルのsearchfilter属性に格納されます。

サンプル・プロファイルのactiveChgImpとactiveImportでは、グループとユーザーのみがMicrosoft Active Directoryから取得されます。コンピュータは取得されません。searchfilter属性の値は、searchfilter=(|(objectclass=group)(&(objectclass=user)(!(objectclass=computer)))のように設定されます。

Oracle Enterprise Manager Fusion Middleware Controlを使用すると、検索フィルタをカスタマイズできます。

Oracle Enterprise Manager Fusion Middleware Controlを使用して検索フィルタをカスタマイズするには、次のようにします。

1. Webブラウザを開き、使用している環境のOracle Enterprise Manager Fusion Middleware ControlのURLを入力します。Oracle Enterprise Manager Fusion Middleware ControlのURLの形式は、https://host:port/emです。

2. Oracle Enterprise Manager Fusion Middleware Controlにログインします。

3. 左のナビゲーション・パネルで、「Identity and Access」エントリをクリックするか展開し、続いて、カスタマイズする検索フィルタを含むDIPコンポーネントを選択します。

4. 「DIPサーバー」メニューをクリックして「管理」を選択し、次に「同期プロファイル」をクリックします。「同期プロファイルの管理」ページが表示されます。

5. 同期サーバーの管理ページで、既存のプロファイルを選択して「編集」をクリックします。「同期プロファイルの編集」ページが表示され、「一般」タブが開きます。

6. 「同期プロファイルの編集」ページで、「フィルタリング」タブを選択します。

7. 「マッピング」タブ・ページで、宛先一致フィルタ(orclODIPConDirMatchingFilter)フィールドおよび「ソースの一致フィルタ」(orclODIPOIDMatchingFilter)フィールドにsearchfilter属性の適切な値を入力します。searchfilter属性の指定方法は、「LDAP検索による変更のフィルタ処理」を参照してください。

8. 「OK」を選択します。

manageSyncProfilesコマンドを使用して検索フィルタをカスタマイズするには、次のようにします。

1. 「接続されたディレクトリ一致フィルタ」(orclODIPConDirMatchingFilter)属性をカスタマイズするために、次のコマンドを入力します。

manageSyncProfiles update -h host -p port -D WLS_login_ID
-pf synchronization_profile_name -params "odip.profile.condirfilter
searchfilter=(|(objectclass=group)(objectclass=organizationalunit)(&(objectclas
s=user)(!(objectclass=computer))))"

2. 「OID一致フィルタ」(orclODIPOIDMatchingFilter)属性をカスタマイズするために、次のコマンドを入力します。

manageSyncProfiles update -h host -p port -D WLS_login_ID
-pf synchronization_profile_name -params "odip.profile.oidfilter
orclObjectGUID"

注意:
searchfilter属性に指定する属性はすべて、Microsoft Active Directoryの索引付き属性のように構成する必要があります。

関連項目:
LDAP検索フィルタを構成する方法は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のLDAPフィルタ定義に関する付録を参照してください。

18.3.4 手順4: ACLのカスタマイズ

「Access制御リストのカスタマイズ」で説明されているように、ACLをカスタマイズします。

18.3.5 手順5: 属性マッピングのカスタマイズ

Microsoft Active Directoryと統合する場合は、次の属性レベル・マッピングがすべてのオブジェクトに対して必須です。

ObjectGUID:  :  : :orclObjectGUID:
ObjectSID:  :  : :orclObjectSID:

例18-1 Microsoft Active Directoryのユーザー・オブジェクト用の属性レベル・マッピング

SAMAccountName:1: :user:orclADSAMAccountName: :orclADUser
userPrincipalName: : :user:orclADUserPrincipalName::orclADUser:userPrincipalName

例18-2 Microsoft Active Directoryのグループ・オブジェクト用の属性レベル・マッピング

SAMAccountName:1: :group:orclADSAMAccountName: :orclADGroup

この例では、Microsoft Active DirectoryのSAMAccountNameおよびuserPrincipalNameは、それぞれOracle Internet DirectoryのorclADSAMAccountNameおよびorclADUserPrincipalNameにマップされます。

「マッピング・ルールのカスタマイズ」の指示に従い、属性マッピングをカスタマイズします。

18.3.6 手順6: 複数のMicrosoft Active Directoryドメインとの同期

複数のMicrosoft Active Directoryドメインと同期化する場合は、通常、ドメインごとに別々のインポートおよびエクスポート同期プロファイルが必要です。ただし、各ドメインのプロファイルは非常に似たものにします。唯一の例外は、グローバル・カタログをインポート同期プロファイルとともに使用する場合です。この場合、Microsoft Active Directoryフォレスト用の1つのインポート同期プロファイルを作成するのみです。詳細は、「Microsoft Active DirectoryからOracleバックエンド・ディレクトリへのインポートに必要な構成」を参照してください。

注意:
属性および識別名マッピングは、必ず複数のドメインとの同期化を行う前に実行してください。

複数ドメインに個別のインポートおよびエクスポート同期プロファイルを作成する最善の方法は、次のとおりです。

1. 単一ドメイン用のインポートおよびエクスポート同期プロファイルを、この項で前述した手順を使用して、カスタマイズします。

2. 最初のドメイン用のインポートおよびエクスポートの同期プロファイルのカスタマイズを終了したら、manageSyncProfilesコマンドのcopy操作を使用して、プロファイルを次のように複製します。

manageSyncProfiles copy -h host -p port -D WLS_login_ID
-pf Original_Profile_Name -newpf New_Profile_Name

3. manageSyncProfilesコマンドのupdate操作を使用して、その他のMicrosoft Active Directoryドメインごとに、プロファイルを次のようにカスタマイズします。

manageSyncProfiles update -h host -p port -D WLS_login_ID
-pf Profile_Name -params "prop1 val1 prop2 val2 ..."

4. 必要な場合は、「接続詳細の構成」の指示に従い、ドメインごとに接続詳細を更新します。

5. 次のコマンドを実行して、各ドメインのインポートおよびエクスポート同期プロファイルの最終変更番号を更新します。

manageSyncProfiles updatechgnum -h host -p port -D WLS_login_ID
-pf Profile_Name

6. 同期が必要なMicrosoft Active Directoryドメインごとに、手順2から5を繰り返します。

18.3.7 手順7: Microsoft Active Directoryからの削除の同期化

Microsoft Active Directoryでの削除をOracleバックエンド・ディレクトリと同期化するには、Oracle Directory Integration ServerでMicrosoft Active Directoryとの同期を実行するために使用されるMicrosoft Active Directoryユーザー・アカウントに必要な権限を付与する必要があります。Microsoft Active Directoryでの削除は、Microsoft Active Directoryで削除を問い合せることで、Oracleバックエンド・ディレクトリと同期化できます。この方法は、DirSync方式またはUSN-Changed方式のいずれを使用しているかによって決まります。

DirSync方式の場合、Oracle Directory Integration PlatformでMicrosoft Active Directoryへのアクセスに使用されるMicrosoft Active Directoryユーザー・アカウントは、ドメイン管理権限を持つか、ドメイン管理者グループに属するか、または「ディレクトリの変更の複製」権限を明示的に付与される必要があります。

関連項目:
「ディレクトリの変更の複製」権限を付与する方法は、http://support.microsoft.comでArticle ID 303972を参照してください。

USN-Changed方式の場合、Oracle Directory Integration PlatformでMicrosoft Active Directoryへのアクセスに使用されるMicrosoft Active Directoryユーザー・アカウントには、指定したドメインのcn=Deleted Objectsコンテナに対する「内容の一覧表示」権限と「プロパティの読み取り」権限が必要です。これらの権限を設定するには、Microsoft Active Directory Lightweight Directory Service(AD LDS: 旧称Microsoft Active Directory Application Mode(ADAM))の最新のバージョンで使用可能なdsacls.exeコマンドを使用する必要があります。

Microsoft Active Directoryでの削除をOracleバックエンド・ディレクトリと同期化するためにDirSync方式またはUSN-Changed方式のどちらを使用する場合であっても、ActiveImportプロファイル(DirSync方式用)またはActiveChgImpプロファイル(USN-Changedプロファイル用)の一致フィルタを作成する場合は、必ず次のMicrosoft Active Directoryのキー属性のみを含めます。

- ObjectGUID

- ObjectSID

- ObjectDistName

- USNChanged

これらのキー属性以外の属性を一致フィルタに指定すると、Microsoft Active Directoryでの削除はOracleバックエンド・ディレクトリに伝播されません。

関連項目:

- Microsoft Active Directoryからアイテムを削除する方法は、http://support.microsoft.comでArticle ID 230113を参照してください。

- Oracleバックエンド・ディレクトリでサポートされる標準のLDAP属性のリストは、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』の属性リファレンスに関する章を参照してください。

18.3.8 手順8: SSLモードでの同期

「SSLモードでの同期用接続ディレクトリ・コネクタの構成」の指示に従い、SSLモードでの同期用にMicrosoft Active Directoryコネクタを構成します。

18.3.9 手順9: パスワードの同期化

Oracleバックエンド・ディレクトリからMicrosoft Active Directoryにパスワードの変更を同期化するには、次の手順に従います。

注意:
Oracle Unified Directoryバックエンド・ディレクトリまたはOracle Directory Server Enterprise Editionバックエンド・ディレクトリからMicrosoft Active Directoryへのパスワードの同期化はサポートされていません。Oracle Internet Directoryバックエンド・ディレクトリからMicrosoft Active Directoryへのパスワードの同期化はサポートされます。

1. SSLサーバー認証モードで実行するように、Oracleバックエンド・ディレクトリ、Oracle Directory Integration PlatformおよびMicrosoft Active Directoryを構成します。

2. 「Oracleバックエンド・ディレクトリから接続ディレクトリへのパスワードの同期の有効化」の指示に従い、Oracleバックエンド・ディレクトリからMicrosoft Active Directoryへのパスワードの同期を有効にします。

3. 第19章「Oracle Password Filter for Microsoft Active Directoryのデプロイ」で説明されているように、Oracle Password Filter for Microsoft Active Directoryをインストールおよび構成して、パスワードを同期化するようにMicrosoft Active Directoryコネクタを構成します。

18.3.10 手順10: Microsoft Active Directory外部認証プラグインの構成

「外部認証プラグインの構成」の指示に従い、Microsoft Active Directory外部認証プラグインを構成します。

18.3.11 手順11: 構成後タスクおよび管理タスクの実行

構成後タスクおよび継続的な管理タスクの詳細は、第23章「接続ディレクトリとの統合の管理」を参照してください。

18.4 インポート操作変更追跡でのDirsync方式の使用

デフォルトでは、expressSyncSetupで作成されたインポート同期プロファイルでは、変更追跡にUSN-Changed方式を使用します。DirSync方式の変更追跡を使用する場合は、同期化を開始する前に、必ずこの項の手順を実行してください。

注意:
次の手順を実行する前に、現行のインポート同期プロファイルのバックアップを取ります。プロファイルのバックアップ・コピーは、manageSyncProfilesコマンドのcopy操作を使用すると作成できます。

インポート同期プロファイルでDirSync変更追跡方式が使用されるように変更する手順は、次のとおりです。

1. $ORACLE_HOME/ldap/odi/confディレクトリにあるactiveimp.cfg.masterファイルを使用すれば、インポート同期プロファイルをUSN-Changed方式からDirSync方式に変更できます。プロファイルを更新するには、次のコマンドを使用します。

manageSyncProfiles update -h host -p port -D WLS_login_ID -pf Profile_Name
-params "odip.profile.configfile $ORACLE_HOME/ldap/odi/conf/activeimp.cfg.master"

2. 次のコマンドを実行して、最終変更番号を更新します。

manageSyncProfiles updatechgnum -h host -p port -D WLS_login_ID
-pf Profile_Name

18.5 Windowsネイティブ認証の構成

この項では、Windowsネイティブ認証を構成するためのシステム要件とタスクについて説明します。内容は次のとおりです。

- Windowsネイティブ認証のシステム要件

- 外部ユーザーに対するHTTP-401エラーおよびログイン・チャレンジの繰返しの回避

- 単一のMicrosoft Active DirectoryドメインでのWindowsネイティブ認証の構成

- 複数のMicrosoft Active DirectoryドメインまたはフォレストでのWindowsネイティブ認証の構成

- フォールバック認証の実装

- 可能なログインの例

18.5.1 Windowsネイティブ認証のシステム要件

Windowsネイティブ認証は、イントラネットのWebアプリケーションを対象にしています。イントラネットでのデプロイに必要な要素は、次のとおりです。

- Microsoft Active Directoryを搭載したWindows 2000 Server

- OracleAS Single Sign-On Server用に設定されたKerberosサービス・アカウント

- インストール済のOracle Application Server 11gリリース1(11.1.1)インフラストラクチャ

注意:
この項のサンプル構成はUNIX/Linux用ですが、Oracle Fusion MiddlewareはMicrosoft Windowsにもインストールできます。

- Kerberosレルム用に構成したOracleAS Single Sign-On Server中間層

- Microsoft Active DirectoryのOracleバックエンド・ディレクトリとの同期

- Windows外部認証プラグイン用に構成したOracleバックエンド・ディレクトリ

注意:
外部認証プラグインを使用するには、バックエンド・ディレクトリがOracle Internet Directoryである必要があります。バックエンド・ディレクトリがOracle Unified DirectoryまたはOracle Directory Server Enterprise Editionである場合、外部認証プラグインはサポートされません。

18.5.2 外部ユーザーに対するHTTP-401エラーおよびログイン・チャレンジの繰返しの回避

構成されているSingle Sign-On(SSO)サーバーが1つのみの場合、Windows認証済ユーザーによる内部アクセスとWindowsドメイン外のユーザーによる外部アクセスの両方が可能なWebサイトのWindowsネイティブ認証(WNA)用に構成されているSSOサーバーからHTTP-401レスポンスが送信されることを回避できません。Windowsネイティブ認証を使用する場合は、外部ユーザーのブラウザにHTTP-401エラーが送信され、ログイン・チャレンジが何度も表示されるのを防ぐために、異なるIPアドレスを持つ2つのSSOサーバーを構成することを検討してください。

関連項目:
詳細は、My Oracle Support(旧MetaLink)のNote 417620.1を参照してください。My Oracle Supportには、http://metalink.oracle.com/でアクセスできます。

18.5.3 単一のMicrosoft Active DirectoryドメインでのWindowsネイティブ認証の構成

Windowsネイティブ認証を設定するには、次のタスクを順序どおりに実行して、Oracleバックエンド・ディレクトリ、OracleAS Single Sign-On Serverおよびユーザーのブラウザを構成します。

タスク1: OracleAS Single Sign-On Serverの構成

Single Sign-On Serverを構成するには、次の項目で説明されているタスクを完了します。

- OracleAS Single Sign-On ServerのKerberosサービス・アカウントの設定

- krb5.confファイルの更新

- 各Oracle Application Server Single Sign-OnホストでのOracleAS Single Sign-On Server Configuration Assistantの実行

OracleAS Single Sign-On ServerのKerberosサービス・アカウントの設定

Microsoft Active DirectoryでOracleAS Single Sign-On Serverのサービス・アカウントを作成し、次にそのサーバー用のkeytabファイルを作成して、サービス・プリンシパル(サーバー)をアカウント名にマップします。keytabファイルには、サーバーの秘密鍵が格納されます。このファイルにより、サーバーではKDCに対する認証が可能になります。サービス・プリンシパルはエンティティであり、この場合は、KDCによりセッション・チケットが付与されるシングル・サインオン・サーバーです。

1. システム・クロックを同期化します。OracleAS Single Sign-On Server中間層とWindows 2000 Serverが一致する必要があります。この手順を省略すると、システム時間が異なるため認証に失敗します。時間、日付およびタイムゾーンが同期されていることを確認してください。

2. Microsoft Active DirectoryホストでKerberosサーバーのポート番号を確認します。Kerberosサーバーがリスニングするポートは、デフォルトでは/etc/servicesから選択されます。Windowsシステムでは、サービス・ファイルは、system_drive:\WINNT\system32\drivers\etcにあります。サービス名はKerberosです。通常、ポートはWindows 2000 Serverで88/udpおよび88/tcpに設定されます。servicesファイルに正しく追加すると、これらのポート番号のエントリは次のようになります。

kerberos5        88/udp          kdc             # Kerberos key server
kerberos5        88/tcp          kdc             # Kerberos key server

3. servicesファイルと同じディレクトリにあるhostsファイルで、シングル・サインオン中間層のエントリを確認します。Oracle Application Server Single Sign-On Serverの物理ホスト名を示す完全修飾ホスト名が、IPアドレスと短縮名の間に配置されている必要があります。正しいエントリの例を次に示します。

130.111.111.111 sso.MyCompany.com sso loghost

4. 次のタスクを実行して、Oracle Application Server Single Sign-Onの論理ホストで使用されるユーザー・アカウントとkeytabファイルをMicrosoft Active Directoryに作成します。

1. Windows 2000 ServerでMicrosoft Active Directory管理ツールにログインし、「ユーザー」、「新規」、「ユーザー」の順に選択します。
OracleAS Single Sign-On Serverホストの名前を、ドメイン名を省略して入力します。たとえば、ホスト名がsso.MyCompany.comの場合は、ssoと入力します。これは、Microsoft Active Directoryのアカウント名です。

アカウントに割り当てたパスワードを書き留めておいてください。このパスワードは後で必要になります。「ユーザーは次回ログオン時にパスワードの変更が必要」を選択しないでください。

2. OracleAS Single Sign-On Serverのkeytabファイルを作成し、アカウント名をサービス・プリンシパル名にマップします。これら2つのタスクを行うには、次のコマンドをWindows 2000 Serverで実行します。

C:> Ktpass -princ HTTP/sso.MyCompany.com@MyCompany.com -pass password -mapuser sso -out sso.keytab

-princ引数はサービス・プリンシパルです。HTTP/single_sign-on_host_name@KERBEROS_REALM_NAMEの書式を使用して、この引数の値を指定します。HTTPとKerberosレルムは大文字で指定します。

single_sign-on_host_nameがOracleAS Single Sign-On Serverホスト自体、または複数のOracleAS Single Sign-On Server中間層がデプロイされているロード・バランサの名前であることに注意してください。MyCompany.comは、Microsoft Active Directoryの架空のKerberosレルムです。ユーザー・コンテナは、このレルム内に存在します。-pass引数はアカウント・パスワード、-mapuser引数はOracleAS Single Sign-On Server中間層のアカウント名、-out引数はサービス・キーを格納する出力ファイルです。

例の値をそれぞれのインストール環境に適した値に置き換えてください。置き換える値は、例の中では太字で示されています。

注意:

- コンピュータでKtpassが見つからない場合は、Microsoft社からWindowsリソース・キットをダウンロードしてこのユーティリティを取得します。

- Microsoft Kerberosチケットのデフォルトの暗号化タイプはRC4-HMACです。Microsoft社は、MIT準拠の実装で使用されるDES-CBCとDES-CBC-MD5の2つのDES変数もサポートします。Ktpassにより、KDCアカウントの鍵のタイプは、RC4_HMACからDESに変換されます。

5. 各Oracle Application Server Single Sign-Onホストを対象に、keytabファイル(sso.keytab)をOracleAS Single Sign-On Server中間層にコピーまたはFTP転送し、$ORACLE_HOME/j2ee/OC4J_SECURITY/configに配置します。FTPを使用する場合、ファイルをバイナリ・モードで送信してください。
必ずWebサーバーにOracleAS Single Sign-On Server中間層の一意識別子(UID)を指定し、そのファイルに対する読取り権限を付与してください。

krb5.confファイルの更新

次の情報を使用して、krb5.confファイル(Windowsではkrb5.ini)を更新する必要があります。次の情報を使用してkrb5.confファイルを更新しないと、新しく生成されたkeytabファイルのkinitテストが失敗し、keytabファイルがOracleAS Single Sign-On ServerでWindowsネイティブ認証に使用されるときに、失敗します。

次の情報でkrb5.confファイルを更新します。

- Active Directoryのデフォルト・レルム。例: AD.UK.ORACLE.COM

- Active Directoryが存在するサーバーのホスト名。例: active.uk.oracle.com

- OracleAS Single Sign-On Serverが存在するサーバーのホスト名。例: sso.uk.oracle.com

たとえば、次のテキストのマークアップしたテキストを、関連したデフォルト・レルムおよびKDCホスト名(つまり、Active Directoryが存在するサーバー)に置き換えます。

注意:
krb5.confファイルでは、大文字と小文字が区別されます。

[libdefaults]
default_realm = AD.UK.ORACLE.COM
clockskew = 300
[realms]
AD.UK.ORACLE.COM = {
kdc = active.uk.oracle.com
}
[domain_realm]
.uk.oracle.com = AD.UK.ORACLE.COM

各Oracle Application Server Single Sign-OnホストでのOracleAS Single Sign-On Server Configuration Assistantの実行 この時点でossoca.jarツールを実行すると、次のようになります。

- Sun JAASログイン・モジュールを使用するように、Oracle Application Server Single Sign-Onサーバーが構成されます。

- サーバーを保護されたアプリケーションとして構成します。

ossoca.jarツールをOracleAS Single Sign-On Server中間層で実行するには、次のようにします。

1. 次の構成ファイルのバックアップを作成します。

- $ORACLE_HOME/sso/conf/policy.properties

- $ORACLE_HOME/j2ee/OC4J_SECURITY/config/jazn.xml

- $ORACLE_HOME/opmn/conf/opmn.xml

- $ORACLE_HOME/j2ee/OC4J_SECURITY/config/jazn-data.xml

- $ORACLE_HOME/j2ee/OC4J_SECURITY/applications/sso/web/WEB-INF/web.xml

- $ORACLE_HOME/j2ee/OC4J_SECURITY/application-deployments/sso/
orion-application.xml

2. ossoca.jarツールを次のように実行します。

- UNIX/Linux:

$ORACLE_HOME/sso/bin/ssoca
wna -mode sso
-oh $ORACLE_HOME
-ad_realm AD_REALM
-kdc_host_port kerberos_server_host:port
-verbose

- Windows:

%ORACLE_HOME%\jdk\bin\java -jar %ORACLE_HOME%\sso\lib\ossoca.jar
wna -mode sso
-oh %ORACLE_HOME%
-ad_realm AD_REALM
-kdc_host_port kerberos_server_host:port
-verbose

AD_REALMは、Microsoft Active DirectoryのKerberosレルムです。これはユーザー・コンテナです。構文からわかるように、この値は大文字で入力します。KDCのデフォルト・ポート番号は通常88です。これを確認するには、「OracleAS Single Sign-On ServerのKerberosサービス・アカウントの設定」の手順2を参照してください。

3. 手順2で、OracleAS Single Sign-On Serverは停止します。次のコマンドで再起動します。

$ORACLE_HOME/opmn/bin/opmnctl startall

タスク2: Windowsネイティブ認証用のInternet Explorerの構成

Windowsネイティブ認証を使用できるようにInternet Explorerを構成します。構成方法は、使用するバージョンによって異なります。

- Internet Explorer 5.0以上

- Internet Explorer 6.0のみ

Internet Explorer 5.0以上

Internet Explorer 5.0以上を構成するには、次の手順を実行します。

1. メニュー・バーから「ツール」を選択し、「ツール」メニューから「インターネット オプション」を選択します。

2. 「インターネット オプション」ダイアログ・ボックスで、「セキュリティ」タブを選択します。

3. 「セキュリティ」タブ・ページで、「イントラネット」を選択し、「サイト」を選択します。

4. 「イントラネット」ダイアログ・ボックスで「プロキシ サーバーを使用しないサイトをすべて含める」を選択し、「詳細設定」をクリックします。

5. 詳細設定の「イントラネット」ダイアログ・ボックスで、OracleAS Single Sign-On Server中間層のURLを入力します。次に例を示します。

http://sso.mydomain.com

6. 「OK」をクリックし、「イントラネット」ダイアログ・ボックスを終了します。

7. 「インターネット オプション」ダイアログ・ボックスで「セキュリティ」タブを選択し、「イントラネット」、「レベルのカスタマイズ」を選択します。

8. 「セキュリティの設定」ダイアログ・ボックスで「ユーザー認証」セクションまでスクロールし、「イントラネット ゾーンでのみ自動的にログオンする」を選択します。

9. 「OK」をクリックし、「セキュリティの設定」ダイアログ・ボックスを終了します。

10. メニュー・バーから「ツール」を選択し、「ツール」メニューから「インターネット オプション」を選択します。

11. 「インターネット オプション」ダイアログ・ボックスで、「接続」タブを選択します。

12. 「接続」タブで「LANの設定」を選択します。

13. プロキシ・サーバーの正しいアドレスとポート番号が入力されていることを確認してから、「詳細設定」を選択します。

14. 「プロキシの設定」ダイアログ・ボックスで、「例外」セクションに、OracleAS Single Sign-On Serverのドメイン名(例ではMyCompany.com)を入力します。

15. 「OK」をクリックし、「プロキシの設定」ダイアログ・ボックスを終了します。

Internet Explorer 6.0のみ

Internet Explorer 6.0を使用している場合は、「Internet Explorer 5.0以上」の手順1から12の実行後に、次の手順を実行します。

1. メニュー・バーから「ツール」を選択し、「ツール」メニューから「インターネット オプション」を選択します。

2. 「インターネット オプション」ダイアログ・ボックスで、「詳細設定」タブを選択します。

3. 「詳細設定」タブ・ページで「セキュリティ」セクションまでスクロールします。

4. 「統合Windows認証を使用する(再起動が必要)」を選択します。

タスク3: ローカル・アカウントの再構成

Windowsネイティブ認証の構成後、Oracleバックエンド・ディレクトリ管理者(Oracle Internet Directoryのorcladmin)と、アカウントがOracleバックエンド・ディレクトリにあるその他のWindowsローカル・ユーザーのアカウントを再構成する必要があります。このタスクを省略すると、これらのユーザーがログインできなくなります。

Oracle Internet DirectoryのOracle Directory Services Managerインタフェースを使用して、次の手順を実行します。

関連項目:
Oracle Directory Services Managerを使用したOracle Internet Directoryの構成方法は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』を参照してください。

1. Oracleバックエンド・ディレクトリのローカル・ユーザー・エントリにorclADUserクラスを追加します。

2. ユーザー・エントリのorclSAMAccountName属性にローカル・ユーザーのログインIDを追加します。たとえば、orcladminアカウントのログインIDはorcladminです。

3. 外部認証プラグインのexceptionEntryプロパティにローカル・ユーザーを追加します。

18.5.4 複数のMicrosoft Active DirectoryドメインまたはフォレストでのWindowsネイティブ認証の構成

この項では、次のタイプのデプロイにおいて、複数のMicrosoft Active DirectoryドメインまたはフォレストでWindowsネイティブ認証を構成する方法について説明します。

- 親子関係のあるMicrosoft Active Directoryドメイン

- ツリー・ルート信頼タイプが確立された同一フォレスト内のMicrosoft Active Directoryドメイン

- フォレスト信頼タイプが確立された異なるフォレスト内のドメイン

注意:
フォレスト信頼タイプは、Windows Server 2003以上のWindowsオペレーティング・システムでのみサポートされます。

複数のMicrosoft Active DirectoryドメインまたはフォレストでWindowsネイティブ認証を構成するには、次のタスクを順序どおりに実行します。

タスク1: Microsoft Active Directoryドメイン間で信頼が確立していることの検証

複数のMicrosoft Active Directoryドメイン間の信頼を検証する方法の詳細は、使用しているMicrosoft Active Directoryのドキュメントを参照してください。

タスク2: ロード・バランサまたはリバース・プロキシを介したOracle Application Server Single Sign-OnでのWindowsネイティブ認証の有効化

Oracle Enterprise Single Sign-On Suite Plus管理者ガイドの拡張デプロイ・オプションに関する章の指示に従い、Oracle Application Server Single Sign-On Serverをロード・バランサの背後で稼働するように、またはリバース・プロキシを介して稼働するように構成します。

タスク3: OracleAS Single Sign-On Serverの構成

「タスク1: OracleAS Single Sign-On Serverの構成」の指示に従い、各Oracle Application Server Single Sign-On Serverを構成します。各Oracle Application Server Single Sign-On Serverの物理インスタンスを構成する際は、必ず同一のMicrosoft Active Directoryレルムおよび対応するKey Distribution Center(KDC)を使用してください。また、Oracle Application Server Single Sign-Onの論理ホスト名として、ロード・バランサまたはリバース・プロキシの名前を使用してください。

注意:
複数のMicrosoft Active Directoryフォレストでは、Oracle Application Server Single Sign-On Serverの論理ホスト名は、Microsoft Active Directoryドメインのいずれかに属している必要があります。たとえば、2つのMicrosoft Active Directoryフォレストがあり、各フォレストには1つのドメインが含まれているとします。1番目のフォレストのドメイン名はengineering.mycompany.comで、2番目のフォレストのドメイン名はfinance.mycompany.comです。Oracle Application Server Single Sign-On Serverの論理ホスト名は、engineering.mycompany.comまたはfinance.mycompany.com domainのいずれかに存在する必要があります。

タスク4: Windowsネイティブ認証用のInternet Explorerの構成

「タスク2: Windowsネイティブ認証用のInternet Explorerの構成」の指示に従い、Oracle Application Server Single Sign-On Serverを構成します。

18.5.5 フォールバック認証の実装

SPNEGO-Kerberos認証をサポートするブラウザは、Internet Explorer 5.0以上のみです。OracleAS Single Sign-On Serverでは、Netscape Communicatorなどのサポート外のブラウザでフォールバック認証を利用できます。ブラウザのタイプと構成内容に応じて、OracleAS Single Sign-On Serverログイン・フォームまたはHTTP Basic認証のダイアログ・ボックスが表示されます。いずれの場合でも、ユーザーはユーザー名とパスワードを入力する必要があります。ユーザー名はKerberosレルム名とユーザーIDを連結したものです。デフォルトでは、ユーザー名を次の例のように入力します。

domain_name\user_id

次の例では、「OracleAS Single Sign-On ServerのKerberosサービス・アカウントの設定」で示した例に基づいて、ユーザー名の入力方法を示しています。

MyCompany.COM\jdoe

ユーザー名とパスワードは、大文字と小文字が区別されます。また、Microsoft Active Directoryのパスワード・ポリシーは適用されません。Oracle Directory Integration Platformを使用すると、別の同期プロファイルを構成できます。その場合、前述のログイン書式は適用されません。

フォールバック認証は、Oracleバックエンド・ディレクトリの外部認証プラグインによってMicrosoft Active Directoryに対して実行されます。

注意:

- HTTP Basic認証は、ログアウトをサポートしていません。ブラウザのキャッシュから資格証明を消去する場合、ユーザーは開いているブラウザ・ウィンドウをすべて閉じる必要があります。あるいは、Windowsコンピュータからログアウトします。

- Basic認証が起動している場合、ユーザーは使用する言語をInternet Explorerで手動設定する必要があります。「ツール」メニューから「インターネット オプション」、「言語」の順に選択し、必要な言語を入力します。

18.5.6 可能なログインの例

使用しているInternet Explorerのバージョンに応じて、ログインの方法が異なる場合があります。表18-1に、自動サインオンとフォールバック認証が起動する状況を示します。

表18-1 Internet ExplorerでのSingle Sign-Onログインのオプション

ブラウザのバージョン

デスクトップ・プラットフォーム

デスクトップの認証タイプ

Internet Explorerブラウザの統合認証

OracleAS Single Sign-On Serverログイン・タイプ

5.0.1以上

Windows 2000/XP

Kerberos V5

オン

自動サインオン

5.0.1以上、ただし6.0より前

Windows 2000/XP

Kerberos V5

オフ

シングル・サインオン

6.0以上

Windows 2000/XP

Kerberos V5

またはNTLM

オフ

HTTP Basic認証

5.0.1以上、ただし6.0より前

Windows NT/2000/XP

NTLM

オンまたはオフ

シングル・サインオン

6.0以上

NT/2000/XP

NTLM

オン

シングル・サインオン

5.0.1以上

Windows 95、Windows ME、Windows NT 4.0

該当なし

該当なし

シングル・サインオン

5.0.1より前

該当なし

該当なし

該当なし

シングル・サインオン

他のすべてのブラウザ

他のすべてのプラットフォーム

該当なし

該当なし

シングル・サインオン

18.6 Oracle Internet Directory外部セキュリティ・プリンシパル参照とMicrosoft Active Directoryとの同期の構成

この項では、Oracle Internet Directory外部セキュリティ・プリンシパル参照をMicrosoft Active Directoryと同期化する方法について説明します。

Microsoft Active Directoryでは、グループ・メンバーの情報が信頼関係のドメインに外部セキュリティ・プリンシパル参照として格納されますが、Oracle Internet Directoryでは、これらのメンバーの識別名がOracle Internet Directoryでの表示どおりに格納されます。このため、エントリとグループのメンバーとしてのその値が一致しなくなります。Oracle Internet Directoryでは、ユーザーとグループとの関係を直接確立することはできません。

ユーザーとグループとの関係を確立するには、外部セキュリティ・プリンシパルを参照するメンバー識別名を、グループの同期中にエントリの識別名に置き換える必要があります。これは外部キー参照の解決と呼ばれます。

注意:
外部セキュリティ・プリンパル参照の同期は、Windows 2003でのみサポートされています。

例18-3 外部キー参照の解決方法

この項の例は、外部キー参照がどのように解決されるかを示しています。A、B、Cの3つのドメインがあるとします。

ドメインAには、ドメインBに対する一方向の非推移的な信頼があります。ドメインBのユーザーおよびグループに対して、外部セキュリティ・プリンシパル参照を設定できます。

ドメインAには、ドメインCに対する一方向の非推移的な信頼があります。ドメインCのユーザーおよびグループに対して、外部セキュリティ・プリンシパル参照を設定できます。

ドメインBには、ドメインCに対する一方向の非推移的な信頼があります。ドメインCのユーザーおよびグループに対して、外部セキュリティ・プリンシパル参照を設定できます。

この例では、ドメインAからドメインB、ドメインAからドメインC、ドメインBからドメインCに対して一方向の非推移的な信頼があります。

外部キー参照を解決するタスク

この項では、外部キー参照を解決する手順を説明します。

タスク1: エージェント構成情報の更新 外部セキュリティ・プリンシパル参照が設定されている可能性のあるプロファイルごとに、次の手順を実行します。サンプル構成ファイルは、$ORACLE_HOME/ldap/odi/conf/ディレクトリにあります。

1. activeimp.cfg.fspファイルをコピーします。次にactiveimp.cfg.fspファイルの例を示します。

[INTERFACEDETAILS]
Package: gsi
Reader: ActiveReader
[TRUSTEDPROFILES]
prof1 : <Name of the profile1>
prof2 : <Name of the profile2>
[FSPMAXSIZE]
val=10000

この例では、DirSync変更追跡方式を使用しているものと仮定しています。変更追跡にUSN-Changed方式を使用している場合、ReaderパラメータにActiveChgReaderの値を指定します。

2. activeimp.cfg.fspファイルの[TRUSTEDPROFILES]タグの下で、このドメインに外部セキュリティ・プリンシパル参照を持つその他のドメインのプロファイル名を指定します。
例18-3を参照すると、ドメインAのエージェント構成情報は、次のようになります。

[INTERFACEDETAILS]
Package: gsi
Reader: ActiveReader
[TRUSTEDPROFILES]
prof1: profile_name_for_domain_B
prof2: profile_name_for_domain_C

ドメインBのエージェント構成情報は、次のようになります。

[INTERFACEDETAILS]
Package: gsi
Reader: ActiveReader
[TRUSTEDPROFILES]
prof1: profile_name_for_domain_C

ドメインCには外部キー参照がないため、ドメインCのエージェント構成情報ファイルには変更がありません。

3. [FSPMAXSIZE]タグの下で、外部セキュリティ・プリンシパルのキャッシュ・サイズを指定します。これは、設定できる外部セキュリティ・プリンシパルの平均値でかまいません。activeimp.cfg.fspファイルでは、サンプルの値1000が指定されています。

4. manageSyncProfilesコマンドのupdate操作を使用して、次のように新しいエージェント構成情報ファイルをロードします。

manageSyncProfiles update -h host -p port -D WLS_login_ID
-pf profile_name_for_domain_A_or_B -params "odip.profile.configfile activeimp.cfg.fsp"

5. 対象となるすべてのプロファイルについて、このタスクを繰り返します。

タスク2: 外部セキュリティ・プリンシパル参照を解決するためのブートストラップ前の入力データ変更 これには、次の手順を実行します。

1. Microsoft Active DirectoryからLDIFダンプを取得します。適切なフィルタを使用して、取得したLDIFファイルには、必要なオブジェクト(ユーザーやグループなど)のみが含まれるようにします。

注意:
Microsoft Active DirectoryからOracle Internet Directoryにエントリをダンプするコマンドは、ldifdeです。このコマンドは、Microsoft Windows環境からのみ実行できます。

2. 次のコマンドを入力して、外部セキュリティ・プリンシパル参照を解決します。

$ORACLE_HOME/ldap/odi/admin/fsptodn
host=oid_host port=oid_port
dn= OID_privileged_DN (that is, superuser or dipadmin user)pwd=OID_password
profile=profile_name_for_domain_A_or_B
infile=input_filenameo_of_the_LDIF_dump_from_Active_Directory
outfile=output_filename
[sslauth=0|1]

デフォルトで、hostはlocal_hostに、portは3060に、sslauthは0に設定されています。

注意:
コマンドの実行が成功したかどうかは、出力ファイルにメンバー属性のcn=foreignsecurityprincipalsに対する参照が含まれていないことを確認することで検証できます。このコマンドでは、外部セキュリティ・プリンシパル参照の解決以外に、属性レベルのマッピングは実行されません。

3. syncProfileBootstrapコマンドを使用して、Microsoft Active DirectoryからOracle Internet Directoryにデータをブートストラップします。

関連項目:
「ディレクトリ間でのデータのブートストラップ」

タスク3: 同期中に外部セキュリティ・プリンシパルを解決するためのマッピング・ルールの更新 ブートストラップ後、グループに対する変更は、正しいグループ・メンバーシップの値でOracle Internet Directoryに反映する必要があります。fsptodnマッピング・ルールにより、同期化の際にこれが可能になります。外部セキュリティ・プリンシパルの解決が必要なすべてのプロファイルで、このマッピング・ルールを変更します。例18-3を参照すると、ドメインAとBについて、マッピング・ルールを変更する必要があります。

識別名マッピングがない場合は、member属性のマッピング・ルールを次のように変更します。

member: : :group:uniquemember: :groupofUniqueNames: fsptodn(member)

識別名マッピングがある場合は、マッピング・ルールを次のように変更します。

1. 信頼関係の各ドメインに対応する識別名マッピング・ルールを追加します。これは、正しいドメイン・マッピングを解決するために使用されます。例18-3を参照すると、ドメインAのマッピング・ファイルのdomainrulesは、次のような内容になります。

DOMAINRULES
<Src Domain A >:<Dst domain A1 in OID>
<Src Domain B >:< Dst domain B1 in OID>
<Src Domain C>:<Dst domain C1 in OID>

2. member属性のマッピング・ルールを次のように変更します。

member:::group:uniquemember::groupofUniqueNames:dnconvert(fsptodn(member))

3. 次のようにmanageSyncProfilesコマンドのupdate操作を使用して、様々なプロファイルのマッピング・ファイルをアップロードします。

manageSyncProfiles update -h host -p port -D WLS_login_ID
-pf Profile_Name -file File_Name

18.7 同一ドメイン内の異なるMicrosoft Active Directoryドメイン・コントローラへの切替え

この項では、変更のエクスポート先であるMicrosoft Active Directoryドメイン・コントローラを変更する方法を説明します。USN-Changed方式用とDirSync方式用の2つの方法があります。

USN-Changed方式を使用してMicrosoft Active Directoryドメイン・コントローラを変更する方法

USN-Changed方式を使用している場合は、次の手順を実行します。

1. 現在実行中のプロファイルを無効化します。Microsoft Active Directoryホスト接続情報(ホスト、ポート、ユーザー、パスワード)を、新規ホストを指すように変更します。通常、更新が必要なアイテムは、ホスト名のみです。

2. 新しいドメイン・コントローラのルートDSEで、現行の最大のUSNChanged値(ルートDSEのhighestCommittedUSN属性の属性値)を検索することにより、highestCommittedUSNの現行値を取得します。

ldapsearch -h host -p port -b "" -s base -D binddn -q \
"objectclass=*" highestCommittedUSN

注意:
パスワードを要求されます。

3. Oracle Directory Integration Platformを使用して、Microsoft Active Directoryから完全同期化を実行します。

1. 目的とするLDAP検索の範囲と検索フィルタを使用して、Microsoft Active DirectoryからOracleバックエンド・ディレクトリにエントリをダンプするldifdeコマンドを実行します。通常、検索フィルタは、実行中のプロファイルで指定されているものと同じです。たとえば、サンプルのプロパティ・ファイルでは、次の検索フィルタが設定されています。ldifdeを実行できるのは、Microsoft Windows環境からのみです。

searchfilter=(&(|(objectclass=user)(objectclass=organizationalunit))(!(objectclass=group)))

基本的に、実行中のプロファイルによりMicrosoft Active Directoryと同期化されるように構成された、Oracleバックエンド・ディレクトリ・オブジェクト(エントリ)をすべて取得する検索範囲と検索フィルタを使用して、ldifdeを実行します。

2. Oracle Directory Integration Platformを実行して、同じプロファイルを使用して手順aで生成されたLDIFファイルをアップロードします。

4. 完全同期が完了した後、lastchangenumber属性を、手順2で取得されたhighestCommittedUSN値により更新します。

5. USNChanged属性を使用して、Microsoft Active Directoryから通常の同期(増分同期)を再開します。

DirSync方式を使用してMicrosoft Active Directoryドメイン・コントローラを変更する方法

DirSync方式を使用している場合は、次の手順を実行します。

1. 実行中の現行プロファイルを停止します。

2. manageSyncProfilesコマンドのcopy操作を使用して、すでに使用しているプロファイルとまったく同じプロファイルを新たに作成します。新たに作成したプロファイルで、Microsoft Active Directoryホスト接続情報(ホスト、ポート、ユーザー、パスワード)を、新規ホストを指すように変更します。通常、更新が必要なアイテムは、ホスト名のみです。

3. 変更したプロファイルで、通常の同期を再開します。ドメイン・コントローラはすべて、同じMicrosoft Active Directoryドメインに存在することが必要です。

18.8 Microsoft Active Directory Lightweight Directory Service用のMicrosoft Active Directoryコネクタの構成

Microsoft Active Directoryコネクタは、Microsoft Active Directory Lightweight Directory Service(AD LDS: 旧称Active Directory Application Mode(ADAM))とOracleバックエンド・ディレクトリの間でのエントリの同期に使用できます。

18.9 Microsoft Exchange Server用のMicrosoft Active Directoryコネクタの構成

Microsoft Active Directoryコネクタは、Microsoft Active Directory Server 2000以上をアイデンティティ・ストアとして使用するデプロイのMicrosoft Exchangeのユーザーをプロビジョニングできます。

次のいずれかの方法を使用してMicrosoft Exchange Server用のMicrosoft Active Directoryコネクタを構成できます。

- Oracle Enterprise Manager Fusion Middleware Controlユーザー・インタフェースを使用する。

- コマンドラインでmanageSyncProfilesコマンドを使用する。

詳細は、次の各項を参照してください。

Microsoft Exchangeとの統合をさらにカスタマイズするには、「Microsoft Active Directoryとの拡張統合の構成」の指示に従います。

関連項目:
『Oracle Application Server MS Office Developer's Guide』

18.9.1 ユーザー・インタフェースからMicrosoft Exchangeユーザーの同期を有効化する方法

1. 「同期プロファイルの作成」で説明されているように、Oracle Enterprise Manager Fusion Middleware Controlを使用して同期プロファイルを作成します。
「一般」タブで、「DIP-OIDの使用形式」フィールドを「ソース」に設定し、「タイプ」リストから「Microsoft Exchange Server」を選択します。

「マッピング」タブで、ドメイン・マッピング・ルールの作成に加えて、2つの属性マッピング・ルールを作成する必要があります。マッピング・ルールの作成方法を次に示します。

2. 「マッピング」タブの「属性マッピング・ルール」セクションで「作成」をクリックします。
「属性マッピング・ルールの追加」ダイアログ・ボックスが開きます。

3. 次の手順を使用して、2つの属性マッピング・ルールの1つ目を作成します。

1. 「ソースのオブジェクト・クラス」ドロップダウン・メニューから「inetorgperson」を選択します。

2. 「単一の属性」オプションを選択し、「ソース属性」ドロップダウン・メニューから「uid」を選択します。

3. 「宛先オブジェクト・クラス」ドロップダウン・メニューから「User」を選択します。

4. 「宛先属性」ドロップダウン・メニューから「homeMTA」を選択します。

5. 「対応付けの式」フィールドにMTA DNの値を入力します。
homeMTAの値を取得するには、Active Directoryの任意のユーザーに対して単純なLDAP検索問合せを実行します。

MTA DNの形式は次のとおりです。

CN=Microsoft MTA,CN=<host>,CN=Servers,CN=First Administrative Group,CN=Administrative Groups,CN=Oracle,CN=Microsoft Exchange,CN=Services,CN=Configuration,<Domain_DN>

次に例を示します。

CN=Microsoft MTA,CN=DADVMN0152,CN=Servers,CN=First Administrative Group,CN=Administrative Groups,CN=Oracle,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=diptest,DC=us,DC=oracle,DC=com

6. 「OK」をクリックしてルールを保存します。

4. 次の手順を使用して、2つ目の属性マッピング・ルールを作成します。

1. 「ソースのオブジェクト・クラス」ドロップダウン・メニューから「inetorgperson」を選択します。

2. 「単一の属性」オプションを選択し、「ソース属性」ドロップダウン・メニューから「uid」を選択します。

3. 「宛先オブジェクト・クラス」ドロップダウン・メニューから「User」を選択します。

4. 「宛先属性」ドロップダウン・メニューから「homeMDB」を選択します。

5. 「対応付けの式」フィールドにMDB DNの値を入力します。
homeMDBの値を取得するには、Active Directoryの任意のユーザーに対して単純なLDAP検索問合せを実行します。

MDB DNの形式は次のとおりです。

CN=Mailbox Store (<host>),CN=First Storage Group, CN=InformationStore,CN=<host>,CN=Servers,CN=First Administrative Group,CN=Administrative Groups,CN=Oracle,CN=Microsoft Exchange,CN=Services,CN=Configuration,<Domain_DN>

次に例を示します。

CN=Mailbox Store (DADVMN0152),CN=First Storage Group, CN=InformationStore,CN=DADVMN0152,CN=Servers,CN=First Administrative Group,CN=Administrative Groups,CN=Oracle,CN=Microsoft Exchange,CN=Services, CN=Configuration,DC=diptest,DC=us,DC=oracle,DC=com

6. 「OK」をクリックしてルールを保存します。

18.9.2 コマンドラインからMicrosoft Exchangeユーザーの同期を有効化する方法

1. 「manageSyncProfilesの構文」で説明されているように、manageSyncProfilesコマンドを使用します。
コマンドを実行する際は、-conDirType引数に割り当てる値として、ExchangeServer2003を指定します。

インポート・プロファイルおよびエクスポート・プロファイルが作成されます。インポート・プロファイルはActive Directory USNテンプレート・プロファイルに、エクスポート・プロファイルはExchange Severテンプレート・プロファイルに基づいています。

2. msexchangeexp.map.masterマッピング・ファイルを編集し、ドメイン・マッピング・ルールおよび属性マッピング・ルールを作成します。次に、属性マッピング・ルールの作成方法の詳細を示します。マッピング・ルールに関する一般情報については、「マッピング・ルールのカスタマイズ」を参照してください。

1. ORACLE_HOME/ldap/odi/conf/にあるmsexchangeexp.map.masterマッピング・ファイルを開いて、次の属性マッピング・ルールを検索します。
uid:: :inetorgperson:homeMTA: :User:'%DN_OF_MTA%'

2. %DN_OF_MTA%をMTA DNの実際の値に置き換えます。
homeMTAの値を取得するには、Active Directoryの任意のユーザーに対して単純なLDAP検索問合せを実行します。

MTA DNの形式は次のとおりです。

CN=Microsoft MTA,CN=<host>,CN=Servers,CN=First Administrative Group,CN=Administrative Groups,CN=Oracle,CN=Microsoft Exchange,CN=Services,CN=Configuration,<Domain_DN>

次に例を示します。

CN=Microsoft MTA,CN=DADVMN0152,CN=Servers,CN=First Administrative Group,CN=Administrative Groups,CN=Oracle,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=diptest,DC=us,DC=oracle,DC=com

3. msexchangeexp.map.masterマッピング・ファイルで、次の属性マッピング・ルールを検索します。
uid:: :inetorgperson:homeMDB: :User:'%DN_OF_MDB%'

4. %DN_OF_MDB%をMDB DNの実際の値に置き換えます。
homeMDBの値を取得するには、Active Directoryの任意のユーザーに対して単純なLDAP検索問合せを実行します。

MDB DNの形式は次のとおりです。

CN=Mailbox Store (<host>),CN=First Storage Group, CN=InformationStore,CN=<host>,CN=Servers,CN=First Administrative Group,CN=Administrative Groups,CN=Oracle,CN=Microsoft Exchange,CN=Services,CN=Configuration,<Domain_DN>

次に例を示します。

CN=Mailbox Store (DADVMN0152),CN=First Storage Group, CN=InformationStore,CN=DADVMN0152,CN=Servers,CN=First Administrative Group,CN=Administrative Groups,CN=Oracle,CN=Microsoft Exchange,CN=Services, CN=Configuration,DC=diptest,DC=us,DC=oracle,DC=com

5. 変更を保存します。

3. ORACLE_HOME/ldap/odi/conf/にあるmsexchangeexp.propertiesファイルを編集して、次を指定します。

- Microsoft Exchange Serverホスト名

- Microsoft Exchange Serverのポート番号

- ユーザー名

- パスワード

- msexchangeexp.map.masterファイルおよびactiveexp.cfg.masterファイルの場所

19 Oracle Password Filter for Microsoft Active Directoryのデプロイ

この章では、Oracle Password Filter for Microsoft Active Directoryのインストールおよび構成の方法について説明します。

注意:
Oracle Password Filter for Microsoft Active Directoryを使用するには、Oracleバックエンド・ディレクトリがOracle Internet Directoryである必要があります。Oracle Unified Directoryバックエンド・ディレクトリおよびOracle Directory Server Enterprise Editionバックエンド・ディレクトリでは、Oracle Password Filter for Microsoft Active Directoryとの統合をサポートしていません。

この章には次の項が含まれます:

- Oracle Password Filter for Microsoft Active Directoryの概要

- SSLサーバー側認証でのOracle Internet Directoryの構成およびテスト

- Microsoft Active Directoryドメイン・コントローラへの信頼できる証明書のインポート

- Oracle Internet DirectoryとMicrosoft Active Directory間のSSL通信のテスト

- Oracle Password Filter for Microsoft Active Directoryのインストールおよび再構成

- Oracle Password Filter for Microsoft Active Directoryの削除

Oracle Password Filter for Microsoft Active Directoryでの問題のトラブルシューティングに役立てるために、付録E「Oracle Directory Integration Platformのトラブルシューティング」の次のトピックを参照してください。

- Oracle Password Filter for Microsoft Active Directoryのエラーと問題

注意:
Oracle Password Filter for Microsoft Active Directoryのインストール・ファイルは、Windows版Oracle Application ServerのCDにあります。
パスワード・フィルタ・アプリケーションの32ビット・バージョンおよび64ビット・バージョンが提供されています。32ビット・バージョンは32ビットOSにのみ、64ビット・バージョンは64ビットOSにのみインストールします。インストール手順の詳細は、「Oracle Password Filter for Microsoft Active Directoryのインストール」を参照してください。

19.1 Oracle Password Filter for Microsoft Active Directoryの概要

この項では、Oracle Password Filter for Microsoft Active Directoryの目的と動作について説明します。内容は次のとおりです。

- Oracle Password Filter for Microsoft Active Directoryの概要

- Oracle Password Filter for Microsoft Active Directoryの動作

- Oracle Password Filter for Microsoft Active Directoryのデプロイ方法

19.1.1 Oracle Password Filter for Microsoft Active Directoryの概要

Oracle Directory Integration Platformを使用すると、Oracleバックエンド・ディレクトリ(Oracle Password Filter for Microsoft Active Directoryを使用するには、バックエンド・ディレクトリがOracle Internet Directoryである必要があります)とMicrosoft Active Directoryの間で同期できます。Oracle Directory Integration Platformでは、ユーザー・パスワードを除いたすべてのMicrosoft Active Directoryの属性を取得できます。Oracle Application Server Single Sign-Onは、外部認証プラグインを使用してMicrosoft Active Directoryのユーザー資格証明を確認し、更新されたパスワードを自動的にOracleバックエンド・ディレクトリに格納します。Oracle Application Server Single Sign-Onを使用しないOracle Databaseエンタープライズ・ユーザー・セキュリティなどのアプリケーションでは、Oracle Password Filter for Microsoft Active Directoryを使用して、Microsoft Active Directoryからパスワードを取り出して、Oracleバックエンド・ディレクトリにパスワードを格納します。

注意:
エンタープライズ・ユーザー・セキュリティをサポートするには、Oracleバックエンド・ディレクトリがOracle Internet Directoryである必要があります。Oracle Unified Directoryバックエンド・ディレクトリおよびOracle Directory Server Enterprise Editionバックエンド・ディレクトリでは、エンタープライズ・ユーザー・セキュリティを含む、その他のFusion Middlewareコンポーネントとの統合をサポートしていません。

ユーザーがデスクトップからパスワードを変更すると、更新されたパスワードはOracleバックエンド・ディレクトリと自動的に同期化されます。つまり、Oracle Password Filter for Microsoft Active Directoryは、パスワードの変更についてMicrosoft Active Directoryを監視し、その変更をOracleバックエンド・ディレクトリに格納します。これにより、ユーザーはMicrosoft Active Directoryの資格証明で認証され、Oracleバックエンド・ディレクトリに格納された情報を使用してリソースへのアクセスを認可されます。また、Microsoft Active Directoryユーザーの資格証明をOracleバックエンド・ディレクトリに格納すると、Microsoft Active Directoryサーバーが停止した場合には可用性の高いソリューションが提供されます。Oracle Password Filterは、各Microsoft Active Directoryサーバーにインストールされ、パスワードの変更をOracleバックエンド・ディレクトリに自動的に転送します。

注意:
エンタープライズ・ユーザー・セキュリティは、Oracle Internet Directoryバックエンド・ディレクトリに格納されているユーザーの資格証明しか検証できません。このため、Microsoft Active Directoryのユーザーの資格証明をエンタープライズ・ユーザー・セキュリティを使用して検証するには、Oracle Password Filterを使用してMicrosoft Active DirectoryからOracle Internet Directoryバックエンド・ディレクトリにパスワードを取り出す必要があります。

Oracle Password Filter for Microsoft Active Directoryでは、Oracle Directory Integration PlatformによるMicrosoft Active DirectoryからOracleバックエンド・ディレクトリへのパスワードの同期は必要ありません。唯一の要件は、Microsoft Active DirectoryからOracleバックエンド・ディレクトリに同期化されたユーザーに、両方のディレクトリでユーザーを識別するためのObjectGUID属性値が含まれている必要があることです。Oracle Password Filter for Microsoft Active Directoryは、Microsoft Active DirectoryとOracleバックエンド・ディレクトリの間に複数のパスワード・ポリシー(すなわち異なるパスワード・ポリシー)を施行しません。かわりに、システム管理者が両方のディレクトリのパスワード・ポリシーが一致するようにする必要があります。

パスワード変更リクエストは、アカウントが作成されるとき、管理者がユーザーのパスワードをリセットするとき、ユーザーが自分のパスワードを変更するときに発生します。Oracle Password Filter for Microsoft Active DirectoryでMicrosoft Active Directoryのパスワードを取得するには、これらのイベントのいずれかが発生する必要があります。Oracle Password Filter for Microsoft Active Directoryのインストール前に設定されたパスワードは、システム管理者がすべてのユーザーに対してパスワード変更のグローバル・リクエストを強制しないかぎり取得できません。

注意:
Oracle Password Filter for Microsoft Active Directoryは、Microsoft Active Directoryと統合されている32ビット以上のWindowsシステムに対するパスワードの変更のみを取得します。

19.1.2 Oracle Password Filter for Microsoft Active Directoryの動作

この項では、Oracle Password Filter for Microsoft Active Directoryの動作について説明します。内容は次のとおりです。

- クリアテキストのパスワードの変更方法

- Oracleバックエンド・ディレクトリが使用不可の際にパスワードの変更が格納される

- Microsoft Active DirectoryユーザーがOracle Identity Managementと同期化されるまでパスワードの同期が遅延される

- パスワードのブートストラッピング

19.1.2.1 クリアテキストのパスワードの変更方法

パスワード変更リクエストが作成されると、Windowsオペレーティング・システムのLocal Security Authority(LSA)は、システムに登録されているOracle Password Filter for Microsoft Active Directoryパッケージをコールします。LSAは、Oracle Password Filter for Microsoft Active Directoryパッケージをコールすると、ユーザー名と変更されたパスワードを渡します。次に、Oracle Password Filter for Microsoft Active Directoryは同期を実行します。

19.1.2.2 Oracleバックエンド・ディレクトリが使用不可の際にパスワードの変更が格納される

Oracleバックエンド・ディレクトリが使用できないとき、パスワード変更イベントは安全にアーカイブされ、暗号化されたパスワードはMicrosoft Active Directoryに格納されます。Oracle Password Filter for Microsoft Active Directoryは、指定された最大再試行回数に達するまでこれらのエントリの同期を試みます。

19.1.2.3 Microsoft Active DirectoryユーザーがOracle Identity Managementと同期化されるまでパスワードの同期が遅延される

Oracle Password Filter for Microsoft Active Directoryには、ユーザーがMicrosoft Active Directoryに新規作成されるとすぐに通知されます。しかし、Oracle Directory Integration Platformは次にスケジュールされた同期間隔までエントリを同期化しません。このため、次の同期まで、新規ユーザー・エントリのパスワードは暗号化された形式でMicrosoft Active Directoryに格納されます。その後、Oracle Password Filter for Microsoft Active Directoryは、指定された最大再試行回数に達するまでこれらのエントリの同期を試みます。

19.1.2.4 パスワードのブートストラッピング

Oracle Password Filter for Microsoft Active Directoryでは元のクリアテキスト形式のパスワードを取得できないため、Microsoft Active DirectoryからOracleバックエンド・ディレクトリにパスワードを同期化するための初期ブートストラップは実行できません。しかし、ユーザーにパスワードの変更を指示するか、またはパスワードの有効期限ポリシーを変更してMicrosoft Active Directory内のすべてのユーザーに対してパスワードの変更を強制することができます。

19.1.3 Oracle Password Filter for Microsoft Active Directoryのデプロイ方法

Oracle Password Filter for Microsoft Active Directoryのインストールおよび構成の一般的な手順は、次のとおりです。

1. 第18章「Microsoft Active Directoryとの統合」の指示に従って、Oracleバックエンド・ディレクトリ(Oracle Internet Directory)とMicrosoft Active Directoryの間の同期を有効にします。

2. 「SSLサーバー側認証でのOracle Internet Directoryの構成およびテスト」の指示に従い、SSLサーバー認証モードでOracleバックエンド・ディレクトリを構成およびテストします。

3. 「Microsoft Active Directoryドメイン・コントローラへの信頼できる証明書のインポート」の指示に従い、Microsoft Active Directoryドメイン・コントローラにOracleバックエンド・ディレクトリの信頼できるサーバー証明書をインポートします。

4. 「Oracle Internet DirectoryとMicrosoft Active Directory間のSSL通信のテスト」の指示に従って、Oracleバックエンド・ディレクトリとMicrosoft Active DirectoryがSSLサーバー認証により通信できることを確認します。

5. 「Oracle Password Filter for Microsoft Active Directoryのインストール」の指示に従い、Oracle Password Filter for Microsoft Active Directoryをインストールします。

6. 「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、Oracle Password Filter for Microsoft Active Directoryを構成します。

19.2 SSLサーバー側認証でのOracle Internet Directoryの構成およびテスト

Oracle Password Filterは、TCP/IP接続に対してデータの暗号化とメッセージの整合性を提供するSecure Sockets Layer(SSL)プロトコルを使用して、Microsoft Active DirectoryからOracle Internet Directoryにパスワードの変更を通信します。つまり、Oracle Internet DirectoryとMicrosoft Active Directory間でパスワードの変更を同期化するには、SSLサーバー認証モードを使用して、クライアントでサーバーのアイデンティティを確認できるようにする必要があります。

また、デジタル証明と組み合せると、SSLはサーバー認証とクライアント認証の両方を提供します。SSLによるサーバー認証では、通信リンクのサーバー側にデジタル証明をインストールする必要があります。SSLトランザクションがクライアントによって開始されると、サーバーはデジタル証明をクライアントに送信します。クライアントは証明書を調べ、証明書が信頼できる認証局(CA)によって発行されていることを含め、サーバーが正しく自身を証明していることを確認します。

Oracle Internet Directoryサーバー証明書のサブジェクト属性は、Oracle Internet Directoryサーバーのホスト名と一致する必要があります。たとえば、Oracle Internet Directoryサーバーのホスト名がoid.oracle.comである場合、Oracle Internet Directoryのサーバー証明書のサブジェクト属性もoid.oracle.comである必要があります。Oracle Internet Directoryのサーバー証明書のサブジェクト属性がOracle Internet Directoryサーバーのホスト名と一致しない場合、Microsoft Active Directoryのパスワード・フィルタAPIは、ldapbind -U 2コマンドが成功しても、Oracle Internet Directoryのサーバー証明書を有効なものとして受け入れません。サーバー認証用に構成されたOracle Internet Directoryは、SSLタイプ2とも呼ばれます。

Oracle Internet DirectoryとMicrosoft Active Directoryの統合の場合、Oracle Internet Directoryがサーバーで、Microsoft Active Directoryがクライアントです。Oracle Password Filter for Microsoft Active Directoryでは、Microsoft Active Directoryドメイン・コントローラとOracle Internet Directoryサーバー間の送信時、SSLを使用してパスワードを保護します。

注意:
Oracle Password Filter for Microsoft Active Directoryとともに使用する証明書は、PKCS#10規格の証明書リクエストを受け入れ、X.509バージョン3、ISO規格およびRFC2459に準拠した証明書を作成できるX.509準拠の認証局であればどれでも生成できます。

Oracle Internet DirectoryをSSLサーバー側認証で構成およびテストするには、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』を参照してください。

19.3 Microsoft Active Directoryドメイン・コントローラへの信頼できる証明書のインポート

Microsoft Active Directoryドメイン・コントローラとOracle Internet Directory間のサーバー認証されたSSL通信は、ドメイン・コントローラがOracle Internet DirectoryのSSL証明書を有効と認識しないと障害が発生します。ドメイン・コントローラがOracle Internet DirectoryのSSL証明書を受け入れるようにするには、Microsoft管理コンソールを使用して認証局の信頼できる証明書をドメイン・コントローラにインポートする必要があります。

Microsoft管理コンソールを使用して認証局の信頼できる証明書をドメイン・コントローラにインポートするには、次のようにします。

1. Windowsの「スタート」メニューから「ファイル名を指定して実行」を選択します。「ファイル名を指定して実行」ダイアログ・ボックスが表示されます。「ファイル名を指定して実行」ダイアログ・ボックスにmmcと入力し、「OK」をクリックします。「Microsoft管理コンソール」ウィンドウが表示されます。

2. 「ファイル」メニューから「スナップインの追加と削除」を選択します。「スナップインの追加と削除」ダイアログ・ボックスが表示されます。

3. 「スナップインの追加と削除」ダイアログ・ボックスで、「追加」をクリックします。「スタンドアロン スナップインの追加」ダイアログ・ボックスが表示されます。

4. 「スタンドアロン スナップインの追加」ダイアログ・ボックスで「証明書」を選択した後、「追加」をクリックします。「証明書スナップイン」ダイアログ・ボックスが表示され、このスナップインで管理する証明書のオプションを選択するように要求されます。

5. 「証明書スナップイン」ダイアログ・ボックスで、「コンピュータ アカウント」を選択して「次へ」をクリックします。「コンピュータの選択」ダイアログ・ボックスが表示されます。

6. 「コンピュータの選択」ダイアログ・ボックスで「ローカル コンピュータ」を選択した後、「完了」をクリックします。

7. 「スタンドアロン スナップインの追加」ダイアログ・ボックスで「閉じる」をクリックした後、「スナップインの追加と削除」ダイアログ・ボックスで「OK」をクリックします。新しいコンソールのコンソール・ツリーに「証明書 (ローカル コンピュータ)」と表示されます。

8. コンソール・ツリーで「証明書 (ローカル コンピュータ)」を開き、「信頼されたルート証明機関」をクリックします。

9. 「操作」メニューの「すべてのタスク」を選択し、次に「インポート」を選択します。「証明書のインポート ウィザードの開始」ページが表示されます。「次へ」をクリックして「インポートする証明書ファイル」ページを表示します。

10. 「インポートする証明書ファイル」ページで、認証局の信頼できるルート証明書のパスとファイル名を入力するか、「参照」をクリックしてファイルを検索して、「次へ」をクリックします。「証明書ストア」ページが表示されます。

11. 「証明書ストア」ページで、「証明書をすべて次のストアに配置する」を選択します。「信頼されたルート証明機関」が証明書ストアとして選択されていない場合は、「参照」をクリックして選択します。「次へ」をクリックします。「証明書のインポート ウィザードの完了」ページが表示されます。

12. 「証明書のインポート ウィザードの完了」ページで、「完了」をクリックします。インポートが成功したことを示すダイアログ・ボックスが表示されます。「OK」をクリックします。

13. 「ファイル」メニューから「上書き保存」をクリックします。「名前を付けて保存」ダイアログ・ボックスが表示されます。新しいコンソールの名前を入力した後、「保存」をクリックします。

14. 「Microsoft管理コンソール」を閉じます。

注意:
Microsoft管理コンソールを使用した信頼できる証明書のインポートに関するヘルプは、Windows製品のドキュメントを参照するか、Microsoft社のサポート オンライン(http://support.microsoft.com)を参照してください。

19.4 Oracle Internet DirectoryとMicrosoft Active Directoryとの間のSSL通信のテスト

Oracle Password Filter for Microsoft Active Directoryは、ldapbindsslコマンドをドメイン・コントローラにインストールします。このコマンドは、Oracle Internet DirectoryとMicrosoft Active Directory間のSSL通信のテストに使用できます。

注意:
ldapbindsslバイナリは、Oracle Password Filter for Microsoft Active Directoryのインストールに含まれます。Oracle Password Filter for Microsoft Active Directoryをインストールしなければ、ldapbindsslコマンドを実行できません。

ldapbindsslの構文は、次のとおりです。

ldapbindssl -h oid_hostname -p ssl_port -D binddn -w password

Microsoft Active DirectoryからOracle Internet DirectoryへのSSL通信をテストするには、次のようにします。

1. ドメイン・コントローラで「コマンド プロンプト」ウィンドウを開き、Oracle Password Filter for Microsoft Active Directoryをインストールしたフォルダにナビゲートします。

2. ldapbindsslコマンドを入力してOracle Internet DirectoryとのSSL通信をテストします。たとえば、次のコマンドでは、SSLポート3133でoraas.mycompany.comというOracle Internet Directoryホストにバインドしようとします。

ldapbindssl -h oraas.mycompany.com -p 3133 -D binddn -w password

ldapbindsslコマンドが成功した場合は、次のレスポンスが返されます。

bind successful

ldapbindsslコマンドが失敗した場合は、次のレスポンスが返されます。

Cannot connect to the LDAP server

Microsoft Active DirectoryからOracle Internet DirectoryにSSLモードで接続できない場合は、「Microsoft Active Directoryドメイン・コントローラへの信頼できる証明書のインポート」で説明されているように、Microsoft Active Directoryドメイン・コントローラに信頼できる証明書が正常にインポートされていることを確認してください。

3. 「コマンド プロンプト」ウィンドウを閉じます。

19.5 Oracle Password Filter for Microsoft Active Directoryのインストールおよび再構成

この項では、Oracle Password Filter for Microsoft Active Directoryのインストールおよび再構成の方法について説明します。内容は次のとおりです。

- Oracle Password Filter for Microsoft Active Directoryのインストール

- Oracle Password Filter for Microsoft Active Directoryの再構成

Oracle Password Filter for Microsoft Active Directoryをインストールまたは再構成する前に、Microsoft Active DirectoryおよびOracle Internet Directoryに必要な構成パラメータの情報を必ず収集してください。表19-1にMicrosoft Active Directory用に必要な構成パラメータを示し、表19-2にOracle Internet Directory用に必要な構成パラメータを示します。

表19-1 Microsoft Active Directory用のOracle Password Filterの構成パラメータ

パラメータ

説明

ドメイン

このドメイン・コントローラのMicrosoft Active Directoryドメイン。この値は、通常、mycompany.com形式のDNSドメイン名です。

ベースDN

Oracle Password Filterが変更済パスワードのエントリを検索するMicrosoft Active DirectoryのDIT内のコンテナ。パスワード伝播が失敗した場合、失敗したパスワードのDNSは、指定されたコンテナ内のorganizationalUnitというエントリに格納されます。このため、指定されたコンテナはorganizationalUnitオブジェクトを保持できる必要があります。このフィールドの形式は、通常、dc=mycompany,dc=comです。

ポート

Microsoft Active DirectoryのLDAPポート(通常3060)。

ホスト

Microsoft Active Directoryドメイン・コントローラのIPアドレス(ホスト名ではありません)。

Microsoft Active Directoryユーザー

Microsoft Active DirectoryのDIT全体に対しての読取り権限と、Microsoft Active DirectoryのベースDNの下に組織単位およびサブツリーのエントリを作成する権限を持つユーザー名。管理ユーザーのDNではなく、ユーザー名を入力する必要があります。この値の形式は、通常、administrator@machine_nameです。

Microsoft Active Directoryユーザー・パスワード

指定されたMicrosoft Active Directoryユーザーのパスワード。

ログ・ファイル・パス

ログ・ファイルが作成されるディレクトリ(E:\ADPasswordFilter\Logなど)。

表19-2 Oracle Internet Directory用のOracle Password Filterの構成パラメータ

パラメータ

説明

ベースDN

Oracle Password FilterがMicrosoft Active Directoryから同期化されたエントリを検索するOracle Internet DirectoryのDIT内のコンテナ。o=Microsoft Active Directory,c=usなど。

ホスト

Oracle Internet DirectoryのLDAPプロセスが実行されるホスト名を指定します。高可用性構成で稼働するOracle Internet Directoryの場合、ロード・バランサの仮想ホスト名を使用します。

SSLポート

SSLサーバー認証用に構成されたOracle Internet Directoryのポート。

非SSLポート

暗号化されていない通信用のOracle Internet Directory。

Oracle Internet Directoryユーザー

ベースDNのユーザー・パスワードを更新する権限を持つOracle Internet Directoryユーザーの識別名。cn=orcladminなど。

Oracle Internet Directoryユーザー・パスワード

指定されたOracle Internet Directoryユーザーのパスワード。

19.5.1 Oracle Password Filter for Microsoft Active Directoryのインストール

この項では、Oracle Password Filter for Microsoft Active Directoryをドメイン・コントローラにインストールする方法について説明します。

注意:
次の手順に示すMicrosoft Active DirectoryとOracle Internet Directoryの構成パラメータについては、表19-1および表19-2を参照してください。

Oracle Password Filter for Microsoft Active Directoryをドメイン・コントローラにインストールするには、次のようにします。

1. 次を実行します。
32-bitシステムの場合

1. 配布パッケージのutils\adpwdfilterディレクトリにあるsetup.exeファイルを見つけます。

2. setup.exeコマンドを実行して、インストール・ファイルをドメイン・コントローラのディレクトリに解凍します。

3. インストール・ファイルを解凍したディレクトリにナビゲートし、setup.exeをダブルクリックします。
Oracle Password Filter for Microsoft Active Directoryインストール・プログラムの「ようこそ」ページが表示され、プログラムによるOracle Password Filter for Microsoft Active Directoryのインストールが通知されます。

64-bitシステムの場合

1. WindowsシステムのPATH環境変数の更新は、64ビット・バージョンのOracle Password Filter for Microsoft Active Directoryのインストールの前提条件です。
WindowsシステムのPATH環境変数に次を追加します。

C:\windows\SysWOW64

Windows環境変数を編集する方法については、次のページを参照してください。

http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/sysdm_advancd_environmnt_addchange_variable.mspx

2. 配布パッケージのutils\adpwdfilter\64bitディレクトリにあるsetup.exeファイルを見つけます。

3. setup.exeコマンドを実行して、インストール・ファイルをドメイン・コントローラのディレクトリに解凍します。

4. インストール・ファイルを解凍したディレクトリにナビゲートし、setup.exeをダブルクリックします。
Oracle Password Filter for Microsoft Active Directoryインストール・プログラムの「ようこそ」ページが表示され、プログラムによるOracle Password Filter for Microsoft Active Directoryのインストールが通知されます。

2. 「ようこそ」ページで、「次へ」をクリックします。インストール要件のページが表示され、Oracle Internet DirectoryとMicrosoft Active Directory間のSSLが有効である必要があり、インストール・プロセスの最後にOracle Password Filter for Microsoft Active Directoryによるコンピュータの再起動が必要であることが通知されます。

3. インストール要件のページで、「次へ」をクリックします。「インストール・オプション」ページが表示されます。
図oimig018.gifの説明

4. 「インストール・オプション」ページで、「標準(推奨)」または「拡張」を選択します。拡張インストールの実行を選択すると、インストール・プロセスの後半(手順13)でOracle Internet DirectoryおよびMicrosoft Active Directoryの属性を指定できます。「次へ」をクリックします。インストール場所のページが表示され、Oracle Password Filter for Microsoft Active Directoryをインストールするフォルダを指定するように要求されます。

5. インストール場所のページで、デフォルトのインストール・ディレクトリを使用するか、別のディレクトリを入力します。「参照」をクリックして別のディレクトリを探すこともできます。インストール・ディレクトリを選択したら、「次へ」をクリックします。Microsoft Active Directory構成パラメータページが表示されます。
図oimig020.gifの説明

6. Microsoft Active Directory構成パラメータページで、次のパラメータの値を入力します。

- ドメイン

- ベースDN

- ポート

- ホスト

7. 「次へ」をクリックします。Microsoft Active Directoryドメイン・コントローラ情報ページが表示されます。
図oimig021.gifの説明

8. Microsoft Active Directoryドメイン・コントローラ情報ページで、次のパラメータの値を入力します。

- ユーザー

- ユーザー・パスワード

- ログ・ファイル・パス

9. 「次へ」をクリックして続行します。「Oracle Internet Directory構成パラメータ」ページが表示されます。
図oimig022.gifの説明

10. 「Oracle Internet Directory構成パラメータ」ページで、次のパラメータの値を入力します。

- ベースDN

- ホスト

- SSLポート

- 非SSLポート

- ユーザー

- ユーザー・パスワード

重要:
Oracle Internet DirectoryとMicrosoft Active Directory間にインポート同期とエクスポート同期の両方を構成した場合、Microsoft Active DirectoryからOracle Internet Directoryに値をインポートする同期プロファイルに指定されているものと同じバインドDNとパスワードを、ユーザー・パラメータとユーザー・パスワード・パラメータとして入力してください。この指定は、Oracle Internet DirectoryとMicrosoft Active Directory間でのパスワード更新のループを回避するために必要です。

11. 「次へ」をクリックして続行します。Oracle Password Filter構成パラメータページが表示されます。
図oimig023.gifの説明

12. Oracle Password Filter構成パラメータページで、次のパラメータの値を入力します。

- SleepTime: Oracle Internet DirectoryとMicrosoft Active Directory間でパスワードの変更を同期化する試行の時間間隔(分)。

- ConfigSleepTime: Oracle Internet DirectoryとMicrosoft Active Directory間で構成の変更を同期化する試行の時間間隔(分)。

- ExcludeListDN: 同期化する必要がないパスワードを持つユーザーのリストが格納されている完全修飾識別名。

- 再試行最大数: パスワードの同期化を試行する最大回数。

13. 「次へ」をクリックして続行します。「インストール・オプション」ページの「拡張」を選択すると、属性の指定ページが表示されます。

図oimig024.gifの説明

拡張インストールの場合、次の手順を実行します。

1. 表示される属性の指定ページで、2つのディレクトリ間で同期化する属性のソース属性(Microsoft Active Directory)ボックスおよびターゲット属性(Oracle Internet Directory)ボックスに値を入力します。また、「バイナリ属性タイプ*」ボックスで「True」または「False」の値を選択し、ソースの属性タイプがバイナリかどうかを指定します。

2. 「次へ」をクリックして続行します。サマリー・ページが表示され、Oracle Password Filter for Microsoft Active Directoryがインストールされるパスが表示されます。

14. サマリー・ページで、「次へ」をクリックし、Oracle Password Filterをインストールします。

15. Oracle Internet Directoryにスキーマ拡張をアップロードするかどうかの入力を求めるプロンプトが表示されたら、常に「No」を選択します。Oracle Internet Directoryには、Microsoft Active Directoryのパスワード・フィルタに必要なスキーマ拡張属性があらかじめロードされているため、スキーマ拡張をOracle Internet Directoryにアップロードする必要はありません。
ドメイン・コントローラの再起動ページが表示されます。

16. ドメイン・コントローラの再起動ページで、「次へ」をクリックしてコンピュータを再起動します。

17. 次を実行します。
32-bitシステムの場合

1. コンピュータが再起動したら、管理者としてログインします。ログインすると、Oracle Password Filterの残りの構成タスクが自動的に実行されます。

64-bitシステムの場合

1. コンピュータが再起動したら、管理者としてログインします。

2. 「スタート」、「ファイル名を指定して実行」の順に選択し、「ファイル名を指定して実行」ダイアログ・ボックスにregeditと入力して「OK」をクリックします。
レジストリ エディタが表示されます。

3. 次のレジストリ・キーにナビゲートします。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\ orclidmpwf\ADConfig

4. ResourceFilePathを次のとおり編集してから、「OK」をクリックします。

C:\\WINDOWS\\system32\\orclmessages.dll
を
C:\WINDOWS\sysWOW64\orclmessages.dllに変更します。

5. レジストリ・エディタを閉じます。

これで、Oracle Password Filter for Microsoft Active Directoryがインストールされました。

19.5.2 Oracle Password Filter for Microsoft Active Directoryの再構成

ほとんどの場合、インストール・プロセス後にOracle Password Filterを再構成する必要はありません。しかし、Oracle Password Filter for Microsoft Active Directoryインストール・プログラムを実行すると、Oracle Password Filter for Microsoft Active Directoryを再構成できます。

注意:
次の手順に示すMicrosoft Active DirectoryとOracle Internet Directoryの構成パラメータについては、表19-1および表19-2を参照してください。

Oracle Password Filter for Microsoft Active Directoryを再構成するには、次のようにします。

1. インストール・ファイルを解凍したディレクトリにナビゲートし、setup.exeをダブルクリックします。Oracle Password Filter for Microsoft Active Directory構成プログラムの「ようこそ」ページが表示され、プログラムによるOracle Password Filter for Microsoft Active Directoryの再構成が通知されます。

2. 「ようこそ」ページで、「次へ」をクリックします。Microsoft Active Directory構成パラメータページが表示されます。
図oimig020.gifの説明

3. Microsoft Active Directory構成パラメータページで、次のパラメータの値を変更します。

- ドメイン

- ベースDN

- ポート

- ホスト

4. 「次へ」をクリックします。「Oracle Internet Directory構成パラメータ」ページが表示されます。
図oimig026.gifの説明

5. 「Oracle Internet Directory構成パラメータ」ページで、次のパラメータの値を変更します。

- ベースDN

- ホスト

- SSLポート

注意:
再構成の時点では、Oracle Internet Directoryに2つの構成設定エントリが存在し、それぞれが1つの構成設定エントリを使用するOracle Internet Directoryサーバーの2つのインスタンスが稼働しています。2番目の構成設定エントリのSSLポートを「SSLポート*」フィールドに入力してください。

6. 「次へ」をクリックして続行します。Oracle Password Filter構成パラメータページが表示されます。
図oimig023.gifの説明

7. Oracle Password Filter構成パラメータページで、次のパラメータの値を変更します。

- SleepTime: Oracle Internet DirectoryとMicrosoft Active Directory間でパスワードの変更を同期化する試行の時間間隔(分)。

- ConfigSleepTime: Oracle Internet DirectoryとMicrosoft Active Directory間で構成の変更を同期化する試行の時間間隔(分)。

- ExcludeListDN: 同期化する必要がないパスワードを持つユーザーのリストが格納されている完全修飾識別名。

- 再試行最大数: パスワードの同期化を試行する最大回数。

8. 「次へ」をクリックして続行します。Oracle Password Filterユーザーページが表示されます。
図oimig027.gifの説明

9. Oracle Password Filterユーザーページで、次のパラメータの値を変更します。

- Microsoft Active Directoryユーザー

- Microsoft Active Directoryユーザー・パスワード

- Oracle Internet Directoryユーザー

- Oracle Internet Directoryユーザー・パスワード

重要:
Oracle Internet DirectoryとMicrosoft Active Directory間にインポート同期とエクスポート同期の両方を構成した場合、Microsoft Active DirectoryからOracle Internet Directoryに値をインポートする同期プロファイルに指定されているものと同じバインドDNとパスワードを、ユーザー・パラメータとユーザー・パスワード・パラメータとして入力してください。この指定は、Oracle Internet DirectoryとMicrosoft Active Directory間でのパスワード更新のループを回避するために必要です。

10. 「次へ」をクリックして続行します。「再構成は正常に完了しました」ページが表示されます。

11. 「再構成は正常に完了しました」ページで、「終了」をクリックしてOracle Password Filterを再構成します。

19.6 Oracle Password Filter for Microsoft Active Directoryの削除

この項では、Oracle Password Filter for Microsoft Active Directoryの削除(アンインストール)方法について説明します。

Oracle Password Filter for Microsoft Active Directoryを削除するには、次のようにします。

1. Oracle Password Filter for Microsoft Active Directoryをインストールしたディレクトリ内にあるprepAD.ldifファイルを、テキスト・エディタでを開きます。Microsoft Active Directoryのインストールから、prepAD.ldifファイルに示されているエントリおよびコンテナを削除します。

2. Windowsの「スタート」メニューをクリックして「ファイル名を指定して実行」を選択します。
「ファイル名を指定して実行」ダイアログ・ボックスが表示されます。

3. 「ファイル名を指定して実行」ダイアログ・ボックスにregedt32と入力し、「OK」をクリックします。
レジストリ エディタが表示されます。

4. 次のレジストリ・キーにナビゲートします。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\orclidmpwf\OIDConfig

5. OidSinkNodeエントリに割り当てられたコンテナをメモします。このエントリに割り当てられたデフォルト値はcn=Products,cn=OracleContextです。

6. Windowsの「スタート」メニューから「コントロール パネル」を選択します。「コントロール パネル」ウィンドウが表示されます。「コントロール パネル」ウィンドウで、「プログラムの追加と削除」を選択します。「プログラムの追加と削除」ウィンドウが表示されます。

7. 「プログラムの追加と削除」ウィンドウで、現在インストールされているプログラムのリストから「Oracle Password Filter for Microsoft Active Directory」を選択し、「変更/削除」をクリックします。Oracle Password Filter for Microsoft Active Directoryインストール・プログラムの「ようこそ」ページが表示され、プログラムによるOracle Password Filter for Microsoft Active Directoryの削除が通知されます。

8. 「ようこそ」ページで、「次へ」をクリックします。サマリー・ページが表示され、Oracle Password Filter for Microsoft Active Directoryが削除されるパスが表示されます。

9. サマリー・ページで、「次へ」をクリックします。「再起動が必要」ページが表示され、Oracle Password Filter for Microsoft Active Directoryの削除には削除プロセスの最後に再起動が必要であることが通知されます。

10. 「再起動が必要」ページで、「次へ」をクリックします。最後のページが表示され、コンピュータを再起動する必要があることが通知されます。「次へ」をクリックしてコンピュータを再起動します。

11. Oracle Internet Directoryがインストールされているシステムでは、Oracle Directory Services Managerまたはldapdeleteを使用して、cn=PWSync,OidSinkNodeコンテナの次のエントリおよびそのサブエントリを削除します。

CN=Active_Directory_Host, cn=PWSync,OidSinkNode

12. 次の内容のテキスト・ファイルをdeleteOIDSchema.ldifという名前で新規作成します。

dn: cn=subschemasubentry
changetype: modify
delete: objectclasses
objectclasses: ( 2.16.840.1.113894.8.2.1002 NAME 'adconfig' SUP top STRUCTURAL MUST ( cn ) MAY ( ADBaseDN $ deleteomain $ ADHost $ ADPort $ Log $ ResourceFilePath ) )

dn: cn=subschemasubentry
changetype: modify
delete: objectclasses
objectclasses: ( 2.16.840.1.113894.8.2.1001 NAME 'oidconfig' SUP top STRUCTURAL
MUST ( cn ) MAY ( OIDBaseDN $ OIDHost $ OIDPort $ passwdattr $ MSDEDSN $
OIDObjectClass $ OIDLog $ ExcludeListDN $ MAX_RETRIES $ OIDSSLType $
OIDWalletLoc $ OidSinkNode $ SleepTime $ stop $ ConfigSleepTime $
OIDConfigSynchKey ) )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1001  NAME 'OIDBaseDN' DESC 'OID Base Search DN' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1002  NAME 'OIDHost' DESC 'OID Host' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1003  NAME 'OIDPort' DESC 'OID Port' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1004  NAME 'passwdattr' DESC 'Pass Attribute' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1005  NAME 'MSDEDSN' DESC 'DB DSN' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1006  NAME 'OIDObjectClass' DESC 'AD Object Class' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1007  NAME 'OIDLog' DESC 'OID Log' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1008  NAME 'ExcludeListDN' DESC 'Exclude List' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1009  NAME 'MAX_RETRIES' DESC 'Max Retries' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1010  NAME 'OIDSSLType' DESC 'OID SSL Type' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1011  NAME 'OIDWalletLoc' DESC 'OID Wallet Loc' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1012  NAME 'OidSinkNode' DESC 'Config Sync Node' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1013  NAME 'SleepTime' DESC 'Sleep Time for store thread' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1014 NAME 'stop' DESC 'Stop flag for store thread' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1015 NAME 'ConfigSleepTime' DESC 'Sleep Time for config thread' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 22.16.840.1.113894.8.1.1016 NAME 'OIDConfigSynchKey' DESC 'Config Sync key' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1017 NAME 'ADBaseDN' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1018 NAME 'ADPort' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1019 NAME 'ADHost' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1020 NAME 'ADDomain' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1021 NAME 'Log' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

dn: cn=subschemasubentry
changetype: modify
delete: attributetypes
attributetypes: ( 2.16.840.1.113894.8.1.1022 NAME 'ResourceFilePath' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )

13. ldapmodifyコマンドを使用して、deleteOIDSchema.ldifファイルをロードします。

$ORACLE_HOME/bin/ldapmodify -h OID host -p OID port \
-D binddn -q -f deleteOIDSchema.ldif

注意:
パスワードを要求されます。

20 Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)との統合

この章では、Oracle Identity ManagementとOracle Directory Server Enterprise Edition(以前のSun Java System Directory Server、その前はSunONE iPlanet)を統合する手順について説明します。内容は次のとおりです。

- Oracle Directory Server Enterprise Editionの同期要件の確認

- Oracle Directory Server Enterprise Editionとの基本同期の構成

- Oracle Directory Server Enterprise Editionとの拡張統合の構成

注意:
この章に進む前に、前の章で説明している概念を理解している必要があります。次の章は特に重要です。

- 第1章「Oracle Identity Management統合の概要」

- 第4章「Oracle Directory Integration Platformの操作」

- 第5章「Oracle Directory Synchronization Serviceの概要」

- 第16章「接続ディレクトリ統合の概念と考慮事項」

Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)との統合のデモンストレーションを構成する場合は、Oracle Technology Network(http://www.oracle.com/technology/)で参照可能なOracle Identity Management 11gリリース1(11.1.1)のOracle By Exampleシリーズを参照してください。

20.1 Oracle Directory Server Enterprise Editionの同期要件の確認

Oracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)で基本同期または拡張同期を構成するには、「同期要件の確認」の指示に従い、使用する環境で必要な同期要件が満たされていることを確認してください。Oracle Directory Server Enterprise Editionと同期化する前に、次の手順も実行する必要があります。

- インポート操作とエクスポート操作の実行に十分な権限を持つユーザー・アカウントをOracle Directory Server Enterprise Editionに作成する際に、tombstoneの読取りに十分な権限を必ず割り当てます。

- Oracle Directory Server Enterprise Editionで変更ログを有効にします。

- Retro Change Logプラグインを有効にします。

20.2 Oracle Directory Server Enterprise Editionとの基本同期の構成

expressSyncSetupコマンドを使用すると、Oracleバックエンド・ディレクトリとOracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)間の同期を迅速に確立できます。expressSyncSetupコマンドでは、デフォルトの設定を使用してすべての必須構成を自動的に実行し、インポート用とエクスポート用の2つの同期プロファイルも作成します。expressSyncSetupコマンドを使用してOracle Directory Server Enterprise Editionと同期化するには、「expressSyncSetupを使用したインポートおよびエクスポートの同期プロファイルの作成」を参照してください。

20.3 Oracle Directory Server Enterprise Editionとの拡張統合の構成

Oracle Directory Integration Platformのインストール時に、Oracle Directory Integration Platformが接続できるサポート対象のディレクトリごとに、サンプルのインポートおよびエクスポート同期プロファイルが自動的に作成されます。Oracle Directory Server Enterprise Edition用に作成された同期プロファイルのサンプルは、次のとおりです。

- iPlanetImport - Oracle Directory Server Enterprise EditionからOracleバックエンド・ディレクトリに変更をインポートするためのプロファイル

- iPlanetExport - Oracleバックエンド・ディレクトリからOracle Directory Server Enterprise Editionに変更をエクスポートするためのプロファイル

expressSyncSetupコマンドまたはOracle Enterprise Manager Fusion Middleware Controlを使用して、追加の同期プロファイルを作成することもできます。インストール・プロセス時またはexpressSyncSetupコマンドによって作成されたインポートおよびエクスポートの同期プロファイルは、Oracleバックエンド・ディレクトリとOracle Directory Server Enterprise Editionの統合をデプロイする際に使用する開始点としてのみ利用されます。デフォルトの同期プロファイルは事前定義の仮定を使用して作成されるため、次の手順を順序どおりに実行して、環境に合せてそれらをさらにカスタマイズする必要があります。

- 手順1: 統合の計画

- 手順2: レルムの構成

- 手順3: ACLのカスタマイズ

- 手順4: 属性マッピングのカスタマイズ

- 手順5: 削除を同期化するためのOracle Directory Server Enterprise Edition(Sun Java System Directory Server)コネクタのカスタマイズ

- 手順6: パスワードの同期化

- 手順7: SSLモードでの同期

- 手順8: Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)外部認証プラグインの構成

- 手順9: 構成後タスクおよび管理タスクの実行

20.3.1 手順1: 統合の計画

第16章「接続ディレクトリ統合の概念と考慮事項」、特に「Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)統合の概念」を読んで、統合を計画します。「同期プロファイルの作成」の指示に従い、既存のOracle Directory Server Enterprise EditionまたはSun Java System Directory Serverのテンプレート・プロファイルをコピーして、必ず新規のプロファイルを作成します。

20.3.2 手順2: レルムの構成

「レルムの構成」の指示に従い、レルムを構成します。

20.3.3 手順3: ACLのカスタマイズ

「Access制御リストのカスタマイズ」で説明されているように、ACLをカスタマイズします。

20.3.4 手順4: 属性マッピングのカスタマイズ

Oracle Directory Server Enterprise Editionと統合する場合は、次の属性レベル・マッピングがすべてのオブジェクトに対して必須です。

Targetdn:1: :person:orclsourceobjectdn: : orclSUNOneobject:

例20-1 Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)のユーザー・オブジェクト用の属性レベル・マッピング

Cn:1: :person: cn: :person:
sn:1: :person: sn: :person:

例20-2 Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)のグループ・オブジェクト用の属性レベル・マッピング

Cn:1: :groupofname: cn:groupofuniquenames

この例では、Oracle Directory Server Enterprise EditionのCnおよびsnは、それぞれOracleバックエンド・ディレクトリのcnおよびsnにマップされます。

「マッピング・ルールのカスタマイズ」の指示に従い、属性マッピングをカスタマイズします。

20.3.5 手順5: 削除を同期化するためのOracle Directory Server Enterprise Edition(Sun Java System Directory Server)コネクタのカスタマイズ

削除の同期が必要で、マッピング・ルールに必須属性がある場合、tombstoneが正しく構成されていることを確認してください。

Oracle Directory Server Enterprise Editionでtombstoneが構成されていることを確認するには、次のコマンドを実行します。

$ORACLE_HOME/bin/ldapsearch -h connected_directory_host \
-p connected_directory_port -D  connected_directory_account -q \
-b source_domain -s sub "objectclass=nstombstone"

注意:
パスワードを要求されます。

このコマンドにより、すべての削除済エントリの情報が得られます。

関連項目:
tombstoneの構成の詳細は、Oracle Directory Server Enterprise EditionまたはSun Java System Directory Serverのドキュメントを参照してください。

注意:
レプリケーションが有効な場合、tombstoneはOracle Directory Server Enterprise Editionに対して自動的に構成されます。

20.3.6 手順6: パスワードの同期化

Oracleバックエンド・ディレクトリおよびOracle Directory Server Enterprise Editionでは、同じ一連のパスワード・ハッシング技術をサポートしています。Oracle Internet DirectoryとOracle Directory Server Enterprise Edition間でパスワードを同期化するには、両方のディレクトリに対してSSLサーバー認証モードが構成され、次のマッピング・ルールがマッピング・ファイルに存在する必要があります。

Userpassword: : :person:userpassword: :person

Oracleバックエンド・ディレクトリがOracle Unified Directoryである場合、Oracle Directory Integration Platformでは、Oracle Unified DirectoryからOracle Directory Server Enterprise Editionへのパスワードの同期をサポートしません。Oracle Directory Server Enterprise EditionからOracle Unified Directoryバックエンド・ディレクトリへの一方向のパスワードの同期はサポートされます。

20.3.7 手順7: SSLモードでの同期

「SSLモードでの同期用接続ディレクトリ・コネクタの構成」の指示に従い、SSLモードでの同期用にOracle Directory Server Enterprise Editionを構成します。

20.3.8 手順8: Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)外部認証プラグインの構成

「外部認証プラグインの構成」の指示に従い、Oracle Directory Server Enterprise Edition(Sun Java System Directory Server)外部認証プラグインを構成します。

20.3.9 手順9: 構成後タスクおよび管理タスクの実行

構成後タスクおよび継続的な管理タスクの詳細は、第23章「接続ディレクトリとの統合の管理」を参照してください。

21 IBM Tivoli Directory Serverとの統合

この章では、Oracle Identity ManagementとIBM Tivoli Directory Serverを統合する手順について説明します。内容は次のとおりです。

- IBM Tivoli Directory Serverの同期要件の確認

- IBM Tivoli Directory Serverとの基本同期の構成

- IBM Tivoli Directory Serverとの拡張統合の構成

注意:
この章に進む前に、前の章で説明している概念を理解している必要があります。次の章は特に重要です。

- 第1章「Oracle Identity Management統合の概要」

- 第4章「Oracle Directory Integration Platformの操作」

- 第5章「Oracle Directory Synchronization Serviceの概要」

- 第16章「接続ディレクトリ統合の概念と考慮事項」

IBM Tivoli Directory Serverとの統合のデモンストレーションを構成する場合は、Oracle Identity Management 11gリリース1(11.1.1)のOracle By Exampleシリーズを参照してください。Oracle Technology Network(http://www.oracle.com/technology/)で参照可能です。

21.1 IBM Tivoli Directory Serverの同期要件の確認

IBM Tivoli Directory Serverで基本同期または拡張同期を構成するには、「同期要件の確認」の指示に従い、使用する環境で必要な同期要件が満たされていることを確認してください。また、IBM Tivoli Directory Serverと統合する前に、次の手順を実行する必要があります。

- インポート操作とエクスポート操作の実行に十分な権限を持つユーザー・アカウントをIBM Tivoli Directory Serverに作成する際に、tombstoneの読取りに十分な権限を必ず割り当てます。

- IBM Tivoli Directory Serverで変更ログを有効にします。

21.2 IBM Tivoli Directory Serverとの基本同期の構成

expressSyncSetupコマンドを使用すると、Oracleバックエンド・ディレクトリとIBM Tivoli Directory Serverの同期を迅速に確立できます。expressSyncSetupコマンドでは、デフォルトの設定を使用してすべての必須構成を自動的に実行し、インポート用とエクスポート用の2つの同期プロファイルも作成します。expressSyncSetupコマンドを使用してIBM Tivoli Directory Serverと同期化するには、「expressSyncSetupを使用したインポートおよびエクスポートの同期プロファイルの作成」を参照してください。

21.3 IBM Tivoli Directory Serverとの拡張統合の構成

Oracle Directory Integration Platformをインストールすると、サポート対象のサード・パーティ・ディレクトリごとにインポートおよびエクスポートの同期プロファイルのサンプルが自動的に作成されます。IBM Tivoli Directory Server用に作成された同期プロファイルのサンプルは、次のとおりです。

- TivoliImport: IBM Tivoli Directory ServerからOracleバックエンド・ディレクトリに変更をインポートするためのプロファイル。

- TivoliExport: Oracleバックエンド・ディレクトリからIBM Tivoli Directory Serverに変更をエクスポートするためのプロファイル。

expressSyncSetupコマンドを使用して、追加の同期プロファイルを作成することもできます。インストール・プロセス時またはexpressSyncSetupによって作成されたインポートおよびエクスポートの同期プロファイルは、Oracleバックエンド・ディレクトリとIBM Tivoli Directory Serverの統合をデプロイする際に使用する開始点としてのみ利用されます。デフォルトの同期プロファイルは事前定義の仮定を使用して作成されるため、次の手順を順序どおりに実行して、環境に合せてそれらをさらにカスタマイズする必要があります。

- 手順1: 統合の計画

- 手順2: レルムの構成

- 手順3: ACLのカスタマイズ

- 手順4: 属性マッピングのカスタマイズ

- 手順5: 削除を同期化するためのIBM Tivoli Directory Serverコネクタのカスタマイズ

- 手順6: パスワードの同期化

- 手順7: SSLモードでの同期

- 手順8: IBM Tivoli Directory Server外部認証プラグインの構成

- 手順9: 構成後タスクおよび管理タスクの実行

21.3.1 手順1: 統合の計画

第16章「接続ディレクトリ統合の概念と考慮事項」、特に「IBM Tivoli Directory Server統合の概念」を読んで、統合を計画します。「同期プロファイルの作成」の指示に従い、既存のIBM Tivoli Directory Serverテンプレート・プロファイルをコピーして、必ず新規のプロファイルを作成します。

21.3.2 手順2: レルムの構成

「レルムの構成」の指示に従い、レルムを構成します。

21.3.3 手順3: ACLのカスタマイズ

「Access制御リストのカスタマイズ」で説明されているように、ACLをカスタマイズします。

21.3.4 手順4: 属性マッピングのカスタマイズ

IBM Tivoli Directory Serverと統合する場合は、次の属性レベル・マッピングがすべてのオブジェクトに対して必須です。

targetdn: : :top:orclSourceObjectDN: :orclTDSObject:

例21-1 IBM Tivoli Directory Serverのユーザー・オブジェクト用の属性レベル・マッピング

Cn:1: :person: cn: :person:
sn: : :person: sn: :person:

例21-2 IBM Tivoli Directory Serverのグループ・オブジェクト用の属性レベル・マッピング

Cn:1: :groupofname: cn:groupofuniquenames

この例では、IBM Tivoli Directory ServerのCnおよびsnは、それぞれOracleバックエンド・ディレクトリのcnおよびsnにマップされます。

マッピング・ファイルの必須属性としてRDN属性以外のものを指定した場合、その変更は同期化されません。これは、tombstoneが有効な場合に、変更が削除として変更ログに表示されないIBM Tivoli Directory Serverの制限によります。

「マッピング・ルールのカスタマイズ」の指示に従い、属性マッピングをカスタマイズします。

21.3.5 手順5: 削除を同期化するためのIBM Tivoli Directory Serverコネクタのカスタマイズ

削除を同期化する場合、IBM Tivoli Directory Serverでtombstoneが有効化されていないことを確認する必要があります。tombstoneが有効化されているかどうかを確認するには、次のコマンドを実行します。

ldapsearch -h connected_directory_host -p connected_directory_port \
-D binddn -q \
-b "cn=Directory, cn=RDBM Backends, cn=IBM
Directory, cn=Schemas, cn=Configuration" -s base "objectclass=*"
ibm-slapdTombstoneEnabled

注意:
パスワードを要求されます。

このコマンドにより、すべての削除済エントリの情報が得られます。

関連項目:
tombstoneの構成の詳細は、IBM Tivoli Directory Serverのドキュメントを参照してください。

21.3.6 手順6: パスワードの同期化

Oracleバックエンド・ディレクトリおよびIBM Tivoli Directory Serverでは、同じ一連のパスワード・ハッシング技術をサポートしています。IBM Tivoli Directory ServerからOracleバックエンド・ディレクトリにパスワードを同期化するには、両方のディレクトリに対してSSLサーバー認証モードが構成され、次のマッピング・ルールがマッピング・ファイルに存在する必要があります。

Userpassword: : :person:userpassword: :person

Oracle Unified Directoryバックエンド・ディレクトリまたはOracle Directory Server Enterprise Editionバックエンド・ディレクトリからの双方向パスワードの同期化はサポートされていません。双方向のパスワードの同期化は、バックエンド・ディレクトリがOracle Internet Directoryである場合にのみサポートされます。

21.3.7 手順7: SSLモードでの同期

「SSLモードでの同期用接続ディレクトリ・コネクタの構成」の指示に従い、SSLモードでの同期用にIBM Tivoli Directory Serverを構成します。

21.3.8 手順8: IBM Tivoli Directory Server外部認証プラグインの構成

IBM Tivoli Directory Server外部認証プラグインを構成するには、次の手順を実行します。

1. 次の手順を実行して、Oracleバックエンド・ディレクトリにIBM Tivoli Directory Server用の外部認証プラグインのための構成エントリを追加します。

注意:
IBM Tivoli Directory Server用の外部認証プラグインのための構成エントリで参照されるウォレットは、Oracle Walletです。したがって、ウォレットに対して証明書を追加および削除するには、Oracle Walletコマンドを使用します。JKSコマンドは、Oracle Directory Integration Platformが使用する証明書でのみ使用されます。

1. 次のエントリをLDIFファイル(たとえば、input.ldif)にコピーします。

dn: cn=oidexplg_compare_tivoli,cn=plugin,cn=subconfigsubentry
cn: oidexplg_compare_tivoli
objectclass: orclPluginConfig
objectclass: top
orclpluginname: oidexplg
orclplugintype: operational
orclpluginkind: Java
orclplugintiming: when
orclpluginldapoperation: ldapcompare
orclpluginsecuredflexfield;walletpwd: password
orclpluginsecuredflexfield;walletpwd2: password
orclpluginversion: 1.0.1
orclpluginisreplace: 1
orclpluginattributelist: userpassword
orclpluginentryproperties: (!(&(objectclass=orclTDSobject)(objectclass=orcluserv2)))
orclpluginflexfield;host2: host.domain.com
orclpluginflexfield;port2: 636
orclpluginflexfield;isssl2: 1
orclpluginflexfield;host: host.domain.com
orclpluginflexfield;walletloc2: /location/wallet
orclpluginflexfield;port: 389
orclpluginflexfield;walletloc: /tmp
orclpluginflexfield;isssl: 0
orclpluginflexfield;isfailover: 0
orclpluginclassreloadenabled: 0
orclpluginenable: 0
orclpluginsubscriberdnlist: cn=users,dc=us,dc=oracle,dc=com

dn: cn=oidexplg_bind_tivoli,cn=plugin,cn=subconfigsubentry
cn: oidexplg_bind_tivoli
objectclass: orclPluginConfigobjectclass: top
orclpluginname: oidexplg
orclplugintype: operational
orclpluginkind: Java
orclplugintiming: when
orclpluginldapoperation: ldapbind
orclpluginversion: 1.0.1
orclpluginisreplace: 1
orclpluginentryproperties: (!(&(objectclass=orclTDSobject)(objectclass=orcluserv2)))
orclpluginclassreloadenabled: 0
orclpluginflexfield;walletloc2: /location/wallet
orclpluginflexfield;port: 389
orclpluginflexfield;walletloc: /tmp
orclpluginflexfield;isssl: 0
orclpluginflexfield;isfailover: 0
orclpluginflexfield;host2: host.domain.com
orclpluginflexfield;port2: 636
orclpluginflexfield;isssl2: 1
orclpluginflexfield;host: host.domain.com
orclpluginenable: 0
orclpluginsecuredflexfield;walletpwd: password
orclpluginsecuredflexfield;walletpwd2: password
orclpluginsubscriberdnlist:
cn=users,dc=us,dc=oracle,dc=com

2. 次のようなコマンドを使用して、LDIFファイルのエントリをOracleバックエンド・ディレクトリにコピーします。

ldapadd -h HOST -p PORT -D binddn -q -v -f input.ldif

注意:
パスワードを要求されます。

2. 「外部認証プラグインの構成」の手順を使用してプラグインを構成します。

21.3.9 手順9: 構成後タスクおよび管理タスクの実行

構成後タスクおよび継続的な管理タスクの詳細は、第23章「接続ディレクトリとの統合の管理」を参照してください。

22 Novell eDirectoryまたはOpenLDAPとの統合

この章では、本番環境でOracle Identity ManagementとNovell eDirectoryまたはOpenLDAPを統合する手順について説明します。内容は次のとおりです。

- Novell eDirectoryまたはOpenLDAPの同期要件の確認

- Novell eDirectoryまたはOpenLDAPとの基本同期の構成

- Novell eDirectoryまたはOpenLDAPとの拡張統合の構成

注意:
この章に進む前に、前の章で説明している概念を理解している必要があります。次の章は特に重要です。

- 第1章「Oracle Identity Management統合の概要」

- 第4章「Oracle Directory Integration Platformの操作」

- 第5章「Oracle Directory Synchronization Serviceの概要」

- 第16章「接続ディレクトリ統合の概念と考慮事項」

同期は、Oracle Fusion Middleware 11g リリース1(11.1.1)以上と、Novell eDirectory 8.6.2以上またはOpenLDAP 2.2との間でサポートされます。

22.1 Novell eDirectoryまたはOpenLDAPの同期要件の確認

Novell eDirectoryまたはOpenLDAPで基本同期または拡張同期を構成するには、「同期要件の確認」の指示に従い、使用する環境で必要な同期要件が満たされていることを確認してください。

注意:
調整が正しく行われるためには、追加と削除が、同期化ディレクトリの1つのみから実行される必要があります。つまり、Oracleバックエンド・ディレクトリから、またはeDirectory/OpenLDAPから追加と削除を実行できますが、その両方から行うことはできません。ただし、変更はどちらのディレクトリからも実行できます。

22.2 Novell eDirectoryまたはOpenLDAPとの基本同期の構成

expressSyncSetupコマンドを使用すると、Oracleバックエンド・ディレクトリとNovell eDirectoryまたはOpenLDAP間の同期を迅速に確立できます。expressSyncSetupコマンドでは、デフォルト設定を使用して、必須の構成をすべて自動的に実行します。expressSyncSetupコマンドを使用してNovell eDirectoryまたはOpenLDAPと同期化するには、「expressSyncSetupを使用したインポートおよびエクスポートの同期プロファイルの作成」を参照してください。

22.2.1 eDirectoryまたはOpenLDAPから1つのOracleバックエンド・ディレクトリ・コンテナへの複数のプロファイルの同期化

eDirectoryまたはOpenLDAPから1つのOracleバックエンド・ディレクトリ・コンテナへ複数のプロファイルを同期化する場合は、調整処理で誤ってユーザーが削除されないように、フィルタ処理して調整対象の特定のユーザーのみを除外する必要があります。フィルタ処理して調整対象の特定のユーザーのみを除外するには、次のいずれかの手順を実行します。

- マッピング・ルールを変更して、各プロファイルによって異なるコンテナにユーザーが作成されるようにします。詳細は、「マッピング・ルールのカスタマイズ」を参照してください。

- マッピング・ファイル内のリコンシリエーション・ルールを変更して、ユーザーの特定のサブセットのみが同期化されるようにします。詳細は、「リコンシリエーション・ルールの定義方法」を参照してください。

22.3 Novell eDirectoryまたはOpenLDAPとの拡張統合の構成

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の統合をデプロイする際に使用する開始点としてのみ利用されます。デフォルトの同期プロファイルは事前定義の仮定を使用して作成されるため、次の手順を順序どおりに実行して、環境に合せてそれらをさらにカスタマイズする必要があります。

- 手順1: 統合の計画

- 手順2: レルムの構成

- 手順3: Novell eDirectoryまたはOpenLDAPから情報を取得する検索フィルタのカスタマイズ

- 手順4: ACLのカスタマイズ

- 手順5: 属性マッピングのカスタマイズ

- 手順6: 削除を同期化するためのNovell eDirectoryまたはOpenLDAPコネクタのカスタマイズ

- 手順7: 「拡張構成情報」属性用の同期パラメータの指定

- 手順8: パスワードを同期化するためのOpenLDAPコネクタの構成

- 手順9: SSLモードでの同期

- 手順10: Novell eDirectoryまたはOpenLDAP外部認証プラグインの構成

- 手順11: 構成後タスクおよび管理タスクの実行

22.3.1 手順1: 統合の計画

第16章「接続ディレクトリ統合の概念と考慮事項」、特に「Novell eDirectoryおよびOpenLDAP統合の概念」を読んで、統合を計画します。「同期プロファイルの作成」の指示に従い、既存のeDirectoryまたはOpenLDAPのテンプレート・プロファイルをコピーして、必ず新規のプロファイルを作成します。

22.3.2 手順2: レルムの構成

「レルムの構成」の指示に従い、レルムを構成します。

22.3.3 手順3: Novell 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))

注意:

- searchfilter属性に指定する属性はすべて、Novell eDirectoryまたはOpenLDAPの索引付き属性のように構成する必要があります。

- manageSyncProfilesコマンドの詳細は、「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

関連項目:
LDAP検索フィルタを構成する方法は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のLDAPフィルタ定義に関する付録を参照してください。

22.3.4 手順4: ACLのカスタマイズ

「Access制御リストのカスタマイズ」で説明されているように、ACLをカスタマイズします。

22.3.5 手順5: 属性マッピングのカスタマイズ

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にマップされます。

「マッピング・ルールのカスタマイズ」の指示に従い、属性マッピングをカスタマイズします。

22.3.6 手順6: 削除を同期化するためのNovell eDirectoryまたはOpenLDAPコネクタのカスタマイズ

「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つの手順に該当します。

1. inetorgpersonオブジェクト・クラス内のすべてのエントリを検索します。属性値に応じて、このルール内に異なるサブセットを指定することもできます。

2. Novell eDirectoryのgroupofnamesオブジェクト・クラス内またはOpenLDAPのgroupofuniquenamesオブジェクト・クラス内のすべてのエントリを検索します。

22.3.6.1 リコンシリエーション・ルールの定義方法

リコンシリエーション・ルールは、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バックエンド・ディレクトリの対応する属性で、索引付けする必要があります。

22.3.6.2 リコンシリエーション・ルールを使用して削除を同期化する方法

リコンシリエーション・ルールを定義すると、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))

22.3.7 手順7: 「拡張構成情報」属性用の同期パラメータの指定

同期プロファイルの「拡張構成情報」(orclodipAgentConfigInfo)属性には、コネクタでOracleバックエンド・ディレクトリと接続ディレクトリの同期化を行うために必要な追加の構成情報が格納されます。SearchDeltaSizeおよびSkipErrorToSyncNextChangeパラメータは任意の接続ディレクトリとともに使用できます。

Novell eDirectoryとOpenLDAPでは、表22-1に示すパラメータを使用して追加構成情報を指定することもできます。

ヒント:
同期プロファイルのすべての拡張構成パラメータの説明は、「拡張」の項を参照してください。

表22-1 拡張構成情報属性用のNovell eDirectoryとOpenLDAPの同期パラメータ

パラメータ

説明

AttributeType

UniqueAttributeパラメータのタイプを示します。このパラメータには、Novell eDirectoryの場合はBinary値、OpenLDAPの場合はnonBinary値を指定します。このパラメータは、マッピング・ファイルに定義されている属性に対応するOracleバックエンド・ディレクトリの属性を取得するために使用します。

SearchTimeDeltaInSeconds

このパラメータは、タイムスタンプに基づいて同期を処理し、変更ログをサポートしないeDirectoryおよびOpenLDAPにのみ適用されます。「時間デルタの検索」によって、各同期サイクルの反復中に変更を処理する時間間隔が決定されます。デフォルト値は3600です。各同期サイクルで実行される反復の回数は、保留中の変更の数によって異なります。たとえば、「時間デルタの検索」パラメータが60に設定されていると、約1分間保留中の変更がある場合、同期に必要な反復は1回です。変更が3分間保留中である場合、同期に必要な反復は3回です。

1分当たりの変更数が少ない場合は、「時間デルタの検索」の値を増やすと、同期の効率が向上します。

「時間デルタの検索」パラメータに設定する値が、接続ディレクトリ・サーバーのLDAP検索制限を超えないことを確認してください。そうでない場合、同期時にエラーが発生して一部の変更が処理されないことがあります。

CheckAllEntries

Novell eDirectoryまたはOpenLDAPの削除済エントリをOracleバックエンド・ディレクトリと同期化する方法を決定します。このパラメータにtrue値を指定すると、Oracle Directory Integration Platformでは、Oracleバックエンド・ディレクトリのエントリとNovell eDirectoryまたはOpenLDAPとの間で線形比較して削除済エントリを識別します。エントリがNovell eDirectoryまたはOpenLDAPに存在しない場合、そのエントリはOracleバックエンド・ディレクトリから削除されます。このパラメータにfalse値を指定すると、接続ディレクトリのエントリ数とOracleバックエンド・ディレクトリのエントリ数の差によって削除済エントリは同期化されます。削除済エントリ数が0以下の場合、同期化する削除済エントリはありません。しかし、削除済エントリ数が1以上の場合は、Oracle Directory Integration PlatformはOracleバックエンド・ディレクトリの各エントリをNovell eDirectoryまたはOpenLDAPと比較して同期化する削除済エントリを識別します。Oracle Directory Integration Platformでは、接続ディレクトリのエントリ数とOracleバックエンド・ディレクトリのエントリ数の差と同じ数の削除済エントリを検出するまでエントリの比較を続けます。パフォーマンスを向上させるには、このパラメータにfalse値を指定します。

ReduceFilterTimeInSeconds

Oracleバックエンド・ディレクトリを実行しているコンピュータとNovell eDirectoryを実行しているコンピュータの間の時間差を指定します。Novell eDirectoryのコンピュータ上の時間がOracleバックエンド・ディレクトリのコンピュータの時間より早い場合、Oracleバックエンド・ディレクトリとNovell eDirectory間の同期が正しく機能しないため、このパラメータが必要になります。このパラメータには、2つのコンピュータ間の時間差と等しい値を秒単位で指定します。デフォルト値は0です。

UniqueAttribute

エントリの検索に使用できるNovell eDirectoryまたはOpenLDAPの一意の属性を指定します。このパラメータには、Novell eDirectoryの場合はGUID値、OpenLDAPの場合はentryuuid値を指定します。

Reconciler

プロファイルにより調整処理のために使用されるクラスを指定します。

22.3.8 手順8: パスワードを同期化するためのOpenLDAPコネクタの構成

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バックエンド・ディレクトリにパスワードを同期化するには、次のタスクを実行します。

1. パスワードの同期を有効にするマッピング・ルールの追加。次に例を示します。

userpassword: : : inetorgperson: userpassword: person

2. (オプション)この手順は、OpenLDAPのハッシング・アルゴリズムとOracle Directory Integration Platformのハッシング・アルゴリズムに互換性がない場合にのみ必要となります。

警告:

この手順を完了すると、userpassword属性がOpenLDAPにプレーン・テキスト・パスワードとして保存されます。

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モードでの同期用接続ディレクトリ・コネクタの構成」

- マッピング・ルールを追加する方法は、「マッピング・ルールの構成」を参照してください。

- Oracleバックエンド・ディレクトリがOracle Internet Directoryである場合、可逆暗号化の有効化の詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のパスワード・ベリファイアのディレクトリ格納に関する章を参照してください。

22.3.9 手順9: SSLモードでの同期

「SSLモードでの同期用接続ディレクトリ・コネクタの構成」の指示に従い、SSLモードでの同期用にNovell eDirectoryまたはOpenLDAPコネクタを構成します。

22.3.10 手順10: Novell eDirectoryまたはOpenLDAP外部認証プラグインの構成

「外部認証プラグインの構成」の指示に従い、Novell eDirectoryまたはOpenLDAPの外部認証プラグインを構成します。

22.3.11 手順11: 構成後タスクおよび管理タスクの実行

構成後タスクおよび継続的な管理タスクの詳細は、第23章「接続ディレクトリとの統合の管理」を参照してください。

23 接続ディレクトリとの統合の管理

この章では、構成後タスクおよび継続的な管理タスクについて説明します。内容は次のとおりです。

- 接続ディレクトリでの構成後のタスク

- 接続ディレクトリとの統合の一般的な管理

23.1 接続ディレクトリでの構成後のタスク

構成の完了後、次のタスクを実行します。

1. 一方のディレクトリから他方のディレクトリに、必要に応じてデータを移行します。詳細は、「ディレクトリ間でのデータのブートストラップ」を参照してください。

2. manageSyncProfilesコマンドのactivate操作を使用して次のコマンドを入力し、同期プロファイルを有効にします。

manageSyncProfiles activate -profile profile_name

23.2 接続ディレクトリとの統合の一般的な管理

管理タスクには一般に次のものがあります。

- 同期プロファイルおよびマッピング・ルールの管理

- 新しいプロファイルの作成。複数ドメイン環境で追加のドメイン・コントローラと同期化する必要がある場合は、新しいプロファイルを作成します。新しいプロファイルは、既存のプロファイルをテンプレートとして使用することで作成できます。

- プロファイルの構成(属性)の変更。

- プロファイルによるメンテナンス許可の無効化およびその再有効化。プロファイルを無効にすると、そのプロファイルに関連する同期が停止されます。

- マッピング・ルールの管理

- 新しいルールの作成(追加の属性を同期化する必要がある場合)。

- 既存ルールの変更(属性を同期化する方法を変更する必要がある場合)。

- 不要なルールの削除またはコメント化(特定の属性を同期化する必要がない場合)。

- アクセス制御の管理。

- Oracleディレクトリ・サーバーおよびOracle Directory Integration Platformの起動と停止。

この項の内容は次のとおりです。

- ディレクトリ間でのデータのブートストラップ

- サード・パーティ・ディレクトリ外部認証プラグインの管理

関連項目:
Identity Management Grid Control Plug-inを使用した接続ディレクトリとの統合の管理方法は、『Oracle Fusion Middleware Oracle Identity Managementスタート・ガイド』を参照してください。

23.2.1 ディレクトリ間でのデータのブートストラップ

ブートストラップは、データの移行と呼ばれることがあります。データをブートストラップするには、サード・パーティ・ディレクトリのコネクタおよびプラグインの構成完了後に次の手順を実行します。

1. 移行するデータを識別します。ディレクトリ内のデータ全体またはサブセットのみの移行を選択できます。

2. 次のコマンドを使用して、インポートおよびエクスポート同期プロファイルを無効にします。

manageSyncProfiles deactivate -profile profile_name

3. syncProfileBootstrapコマンドを使用して、一方のディレクトリから他方のディレクトリへブートストラップします。ブートストラップの詳細は、第8章「Oracle Directory Integration Platformにおけるディレクトリのブートストラップ」を参照してください。
ブートストラップが完了すると、manageSyncProfilesコマンドによって同期プロファイルのプロファイル・ステータス属性が適切に更新されます。

4. LDIFファイルベースのブートストラップを使用した場合、manageSyncProfilesコマンドのupdatechgnum操作を使用して、次のようにlastchangekey値を初期化します。

manageSyncProfiles updatechgnum -profile profile_name

このlastchangekey属性は、ブートストラップを開始する前に、ソース・ディレクトリの最終変更番号の値に設定する必要があります。

5. 双方向同期が必要な場合は、エクスポート・プロファイルを有効にし、Oracleディレクトリ・サーバーで変更ロギング・オプションが有効になっていることを確認します。
Oracle Internet Directoryでは、変更ロギングはOracle Internet Directoryの起動時に-lオプションによって制御されます。デフォルトでは、変更ロギングが有効なことを意味するTRUEに設定されています。これがFALSEに設定されている場合は、OID制御ユーティリティを使用してOracle Internet Directoryサーバーを停止し、その後、変更ログを有効にしてサーバーを再起動してください。

23.2.2 サード・パーティ・ディレクトリ外部認証プラグインの管理

この項では、サード・パーティの外部認証プラグインを削除、無効化および再有効化する方法について説明します。

23.2.2.1 サード・パーティ・ディレクトリ外部認証プラグインの削除

サード・パーティの外部認証プラグインを削除するには、次のコマンドを入力します。コマンドを実行すると、パスワードを要求されます。

ldapdelete -h host -p port -D binddn -q \
"cn=adwhencompare,cn=plugin,cn=subconfigsubentry"

ldapdelete -h host -p port -D binddn -q \
"cn=adwhenbind,cn=plugin,cn=subconfigsubentry"

23.2.2.2 サード・パーティの外部認証プラグインの無効化

サード・パーティの外部認証プラグインを無効にするには、次のようにします。

1. 次の内容で、LDIFファイルを作成します。

dn: cn=adwhencompare,cn=plugin,cn=subconfigsubentry
changetype: modify
replace: orclpluginenable
orclpluginenable: 0

dn: cn=adwhenbind,cn=plugin,cn=subconfigsubentry
changetype: modify
replace: orclpluginenable
orclpluginenable: 0

2. 次のように、ldapmodifyコマンドを使用してLDIFファイルをロードします。

ldapmodify -h host -p port -D binddn -q -f fileName

注意:
パスワードを要求されます。

23.2.2.3 サード・パーティの外部認証プラグインの再有効化

サード・パーティの外部認証プラグインを再度有効にするには、次の2つのコマンドを使用します。

1. 次の内容で、LDIFファイルを作成します。

dn: cn=adwhencompare,cn=plugin,cn=subconfigsubentry
changetype: modify
replace: orclpluginenable
orclpluginenable: 1

dn: cn=adwhenbind,cn=plugin,cn=subconfigsubentry
changetype: modify
replace: orclpluginenable
orclpluginenable: 1

2. 次のように、ldapmodifyコマンドを使用してLDIFファイルをロードします。

ldapmodify -h host -p port -D binddn -q -f fileName

注意:
パスワードを要求されます。

第VI部

付録

この部は次の付録で構成されています。

- 付録A「Oracle Directory Integration Platform 11gリリース1(11.1.1)と10gリリース(10.1.4.x)の比較」

- 付録B「同期プロファイルのプロパティ・ファイルの例」

- 付録D「Oracleスタックの起動と停止」

- 付録C「事例: Oracle Directory Integration Platformのデプロイ」

- 付録E「Oracle Directory Integration Platformのトラブルシューティング」

A Oracle Directory Integration Platform 11gリリース1(11.1.1)と10gリリース(10.1.4.x)の比較

この付録では、Oracle Directory Integration Platformの基礎項目の実装が、11gリリース1(11.1.1)と10gレガシー・リリース(10.1.4.x)でどう異なるかを比較します。この付録の情報は、それぞれのリリースでの実装の違いの概要を説明し、11gリリース1(11.1.1)へのアップグレード後の指針を提供するためのものです。

この付録は、次の項目を含みます。

- プロセス管理

- 構成ファイル

- マッピング・ファイル、構成ファイルおよびプロパティ・ファイルのテンプレート

- ログ・ファイル

- グラフィカル・ユーザー・インタフェース

- コマンドライン・ツール

- 監査の構成

A.1 プロセス管理

10gリリース(10.1.4.x):

- 起動、停止、再起動などのプロセスは、oidctlコマンドを使用して制御されていました。Oracle Directory Integration Platformは、独自のスケジューラを使用して同期とプロビジョニングを実行するJ2SEアプリケーションでした。

- 異なるプロファイル・グループを処理するために、複数のOracle Directory Integration Platformサーバー・インスタンスを起動することができました。

- configset 0のインスタンスが、プロビジョニング・プロファイルを処理していました。configsetとgroupidが異なるインスタンスが、同期プロファイルのグループを処理していました。

11gリリース1(11.1.1):

- Oracle Directory Integration Platformは、Oracle Directory Services ManagerとともにOracle WebLogic Managed ServerにデプロイされるJ2EEアプリケーションです。管理対象サーバーのデフォルト名は、wls_ods1です。起動、停止、再起動およびその他のプロセスは、Oracle WebLogic Managed Serverの起動と停止によって制御されます。

- Oracle Directory Integration Platformサーバーのデプロイやアンデプロイは、WLSTコマンドまたはOracle WebLogic Server Administrative(Admin)コンソールを使用して行います。

- スケジュール処理のためにクォーツ・スケジューラが使用されます。

- Oracle Directory Integration Platformの1つのインスタンスが、すべての同期プロファイルとプロビジョニング・プロファイルをスケジューリングします。

- configsetやプロファイル・グループという概念はありません。有効なプロファイルはすべてスケジューリングされます。

A.2 構成ファイル

10gリリース(10.1.4.x):

- $ORACLE_HOME/ldap/odi/conf/odi.propertiesファイルには、Oracle Internet Directory(Oracleバックエンド・ディレクトリ)に接続するために使用されるOracle Directory Integration Platformサーバー・パスワードが含まれていました。また、Oracle Walletの場所とパスワードも含まれていました。

- Oracle Directory Integration Platformに関連付けられたOracle Internet Directoryの接続詳細は、Oracle Directory Integration Platformを起動するためのコマンドの一部として指定されていました。

- Oracle Walletは、証明書を格納するために使用されていました。

11gリリース1(11.1.1):

- 関連付けられたOracle Internet Directoryのホストとポートの詳細は、dipapps.earのdip-config.xmlファイルに格納されます。

- SSL証明書を格納するために、Javaキーストアが使用されます。

- Oracle Directory Integration PlatformがOracle Internet Directory(Oracleバックエンド・ディレクトリ)に接続するために使用するパスワードは、資格証明ストア・フレームワークに格納されます。JKSパスワードも、資格証明ストア・フレームワークに格納されます。

- Oracle Directory Integration Platformの起動に必要なパラメータはすべて、dip-config.xmlファイルで指定されます。

A.3 マッピング・ファイル、構成ファイルおよびプロパティ・ファイルのテンプレート

10gリリース(10.1.4.x):

- すべての接続ディレクトリに対応するマッピング・ファイルと構成ファイルのテンプレートは、$ORACLE_HOME/ldap/odi/confディレクトリにありました。

- LDIF、タグ付きディレクトリのマッピング・ファイル、構成ファイルおよびプロパティ・ファイルのテンプレートは、$ORACLE_HOME/ldap/odi/samplesディレクトリにありました。

- ブートストラッピング・ファイルのテンプレートは、$ORACLE_HOME/ldap/odi/samplesディレクトリにありました。

11gリリース1(11.1.1):

- すべての接続ディレクトリに対応するマッピング・ファイルと構成ファイルのテンプレートは、$ORACLE_HOME/ldap/odi/confディレクトリにあります。

- LDIF、タグ付きディレクトリのマッピング・ファイル、構成ファイルおよびプロパティ・ファイルのテンプレートは、$ORACLE_HOME/ldap/odi/samplesディレクトリにあります。詳細は、付録B「同期プロファイルのプロパティ・ファイルの例」を参照してください。

- ブートストラッピング・ファイルのテンプレートは、$ORACLE_HOME/ldap/odi/samplesディレクトリにあります。詳細は、「パラメータ・ファイルを使用したブートストラップ」を参照してください。

A.4 ログ・ファイル

10gリリース(10.1.4.x):

- Oracle Directory Integration Platformサーバーのログ・ファイルは、$ORACLE_HOME/ldap/logディレクトリにありました。

- 各プロファイルの個別ログは、$ORACLE_HOME/ldap/odi/log/ディレクトリにありました。ログには、PROFILE_NAME.logという形式のファイル・ネーミング規則が使用されていました。

11gリリース1(11.1.1):

- ログ・ファイルの場所は次のとおりです。
$MW_HOME/user_projects/domains/DOMAIN _NAME/servers/NAME_OF_MANAGED_SERVER/logs/NAME_OF_MANAGED_SERVER.log

注意:
このログ・ファイルには、Oracle Directory Integration Platformサーバーと、すべてのプロファイルのログが含まれます。

A.5 グラフィカル・ユーザー・インタフェース

10gリリース(10.1.4.x):

- DIPAssistant -guiが、同期プロファイルを管理するためのグラフィカル・ユーザー・インタフェース(GUI)ツールでした。

11gリリース1(11.1.1):

- 同期プロファイルとプロビジョニング・プロファイルを管理するには、Oracle Enterprise Manager Fusion Middleware Controlを使用します。詳細は、「Fusion Middleware Controlの使用」を参照してください。

A.6 コマンドライン・ツール

10gリリース(10.1.4.x):

- dipassistant: 同期プロファイルを管理するために使用されていました。

- oidprovtool: プロビジョニング・プロファイルを管理するために使用されていました。

11gリリース1(11.1.1):

- dipStatus: Oracle Directory Integration Platformのステータスと、登録済かどうかを確認できます。詳細は、「dipStatusユーティリティを使用したOracle Directory Integration Platformのステータスの表示」を参照してください。

- manageDIPServerConfig: Oracle Directory Integration Platformの構成設定(リフレッシュ間隔、Oracleバックエンド・ディレクトリのポート番号、キーストアの場所およびパスワードを含む)およびスケジューラ・スレッドの数を管理します。詳細は、「manageDIPServerConfigを使用したOracle Directory Integration Platformの管理」を参照してください。

- manageSyncProfiles: Oracle Directory Integration Platformの同期プロファイルを管理します。詳細は、「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

- syncProfileBootstrap: 同期プロファイルまたはLDIFファイルに基づいて、ターゲットの接続ディレクトリとOracleバックエンド・ディレクトリ間の初期のデータ移行を実行します。詳細は、「syncProfileBootstrapを使用したディレクトリのブートストラップ」を参照してください。

- expressSyncSetup: ディレクトリ・タイプに基づいて、あらかじめパッケージされたテンプレートを使用して標準のLDAPディレクトリを作成します。詳細は、「expressSyncSetupを使用したインポートおよびエクスポートの同期プロファイルの作成」を参照してください。

- provProfileBulkProv: プロビジョニング・プロファイルのために、LDIFファイルからOracleバックエンド・ディレクトリへの初期のデータ移行を実行します。詳細は、「provProfileBulkProvツールを使用したバルク・プロビジョニング」を参照してください。

- oidprovtool: 次のようなタスクを実行可能にして、ディレクトリのプロビジョニング・プロファイル・エントリを管理します。

- 新しいプロビジョニング・プロファイルの作成

- 既存のプロビジョニング・プロファイルの有効化または無効化

- 既存のプロビジョニング・プロファイルの変更

- 既存のプロビジョニング・プロファイルの削除

- プロビジョニング・プロファイルの現行ステータスの取得

- 既存のプロビジョニング・プロファイル内にあるすべてのエラーの消去

詳細は、「oidprovtoolを使用したプロビジョニング・プロファイルの管理」を参照してください。

- schemasync: ディレクトリ統合プラットフォームでは、スキーマおよびACLの同期はサポートされません。schemasyncツールを使用して、Oracleバックエンド・ディレクトリと接続ディレクトリの間で、スキーマの違い、特に属性とオブジェクト・クラスの違いを確認できます。違いを確認した後、スキーマを含んでいるLDIFファイルに適切な変更を行ってから、ldapaddおよびldapmodifyツールを使用してスキーマの違いをアップロードできます。schemasyncは、ORACLE_HOME/binディレクトリにあります。

関連項目:
詳細は、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』を参照してください。

A.7 監査の構成

10gリリース(10.1.4.x):

- 監査の詳細は、$ORACLE_HOME/ldap/odi/logディレクトリにありました。詳細はプロファイルごとに個別に維持されていて、PROFILE_NAME.audのような、プロファイル固有のファイルに格納されていました。

- 監査には、固有の構成は必要ありませんでした。

- デフォルトでは、監査が有効で、イベントが記録されていました。

11gリリース1(11.1.1):

- Oracle Directory Integration Platformでは、Oracle Fusion Middleware共通監査フレームワークを使用します。監査を有効化するには、WLSTとOracle Enterprise Manager Fusion Middleware Controlを使用します。

A.8 監査ログの場所

10gリリース(10.1.4.x):

- ORACLE_HOME/ldap/odi/log/PROFILE_NAME.aud

11gリリース1(11.1.1):

- DOMAIN_HOME/servers/wls_ods1/logs/auditlogs/DIP/

B 同期プロファイルのプロパティ・ファイルの例

この付録では、manageSyncProfilesコマンドと-fオプションで使用できるプロファイル・プロパティ・ファイルの例を提供します。この付録には次のトピックがあります。

- 同期プロファイルのプロパティ・ファイルの例

B.1 同期プロファイルのプロパティ・ファイルの例

manageSyncProfilesコマンドと-fオプションを使用すると、同期プロファイルのプロパティを含むプロファイル・プロパティ・ファイルへのフルパスを指定することができます。次に例を示します。

manageSyncProfiles register -h myhost.mycompany.com -p 7005 -D login_ID \
-f /opt/ldap/odip/iPlImport.profile

関連項目:
manageSyncProfilesの詳細は、「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

プロファイル・プロパティ・ファイルの例を次に示します。必ず、使用する環境と構成に適合するようにプロパティ・ファイルを編集してください。

####################################################################
## This file contains information required to create a profile in ##
## OID.                                                           ##
####################################################################

# Profile Name : Name of the profile
#
# NOTE - This should be a unique name
#
odip.profile.name = ActiveImport

# Profile Status : Can be either DISABLE or ENABLE
#
# NOTE - Default is DISABLE. When it is in the disable mode you can also test the
# profile using the 'testprofile' option.
#
odip.profile.status = DISABLE

# Synchronization Mode : Specifies the direction of synchronization i.e when the
# changes are required to be propagated from the 3rd party to OID then the
# synchronization mode is IMPORT. On the other hand when the changes needs ot be
# propagated to the 3rd party directory then the synchronization mode is EXPORT.
#
#
odip.profile.syncmode = IMPORT

# Retry Count : Maximum number of times this profile should be executed
# in case of an error before the integration server gives up
#
# NOTE - the default value is 4
#
odip.profile.retry = 5

# Schedule Interval: The time interval between successive execution of this
# profile by the integration server.
#
# NOTE - the default value is 60 sec. If the previous execution has not
# compeleted then the next execution will not resume util it completes.
#
odip.profile.schedinterval = 60

# Agent Execution Command : In case of a NON-LDAP interface the command
# that needs to be executed that would produce the information in LDIF/Tagged
# format. By default this property is commented out for LDAP directories.
#
odip.profile.agentexecommand =

# Connected Directory Url : The 3rd party directory location
# The property is of teh format  "host:port:sslmode"
# Host : Connected directory/repository Host
# port : connected Directory/repository Port
# sslMode: can have valid values 0,1,2,3
#  0: Non -ssl
#  1: ssl mode 1 ( no certificate )
#  2: One way SSL ) Server only Auth - Trust Point Certificate )
#
odip.profile.condirurl = host:port:sslmode

# Connected Directory/repository Account : The Dn or user name used to connect to
# the target repository
#
odip.profile.condiraccount =

# Connected Directory Account : The password used to connect to the 3rd party
# directory
# When you create a profile using the properties file you'll be prompted for the
# password even if you specify the password in this file. For security reasons it
# is recommended that you specify the password in the commandline.
# odip.profile.condirpassword = ********

# Interface Type : Whether the LDAP or LDIF or DB or TAGGED format is
# to be used for data exchange
#
# NOTE - Default value is LDAP
#
odip.profile.interface = LDAP

# Config Info : Additional information required for execution of this
# profile by the integration server.
#
# NOTE - The value for this property is the name of the file that contains
# the additional profile specific information to be used for execution
# Specify the absolute pathname of the file here. If the absolute pathname
# contains a `\`, use the escape sequence and specify it as `\\`
#
odip.profile.configfile = /scratch/americas/product/oracle/wls/Oracle_
IDM1/ldap/odi/conf/activeimp.cfg.master

# Mapping Rules : Specifies the Mapping Rules to be used for execution
# profile by the integration server.
#
# NOTE - The value for this property is the name of the file that contains
# the domain and attribute mapping rules
# Specify the absolute pathname of the file here. If the absolute pathname
# contains a `\`, use the escape sequence and specify it as `\\`
#
odip.profile.mapfile = /scratch/americas/product/oracle/wls/Oracle_
IDM1/ldap/odi/conf/activechg.map.master

# Matching filter Con Dir : Specifies the filter that needs to be
# applied to the changes that are read from the connected directory
# before importing to OID
#
# NOTE - There are certain defaults available for different directories.
# You can look at the $ORACLE_HOME/ldap/odi/conf directory for sample
# files and filters.
#
# odip.profile.condirfilter = "searchfilter=(|(objectclass=group)(objectclass=organizationalunit)(&(objectclass=user)(!(objectclass=computer))))"

# Matching OID attribute : Specifies the matching attribute
# on OID for import from the connected directory
#
odip.profile.oidfilter = orclObjectGUID

# Change Number : Specifies the last applied change number. In case of
# an export profile this number refer's to OID's last applied change number.
# However, in case of the import profile this number refers to the last
# applied change number in the connected directory.
#
odip.profile.lastchgnum = 0

# Profile Version : Value is 4.0. Only version 4.0 profiles are supported.
#
# NOTE - Default is 4.0
#
odip.profile.version = 4.0

# Debug Level : Specifies the debug level of the profile. A value of 63 logs all
# information, including entries that are synchronized.
#
odip.profile.debuglevel = 0

# Specify the directory type here.  Supported values are , ACTIVEDIRECTORY,ADAM,
# EDIRECTORY, IPLANET, OID, OPENLDAP, and TIVOLI
#
odip.profile.directorytype=ACTIVEDIRECTORY

# associated Profile name. Specify the profile you would like to associate with
# the current profile. This is applicable only for LDAP directories and is
# required only if you are using bi-directional
# synchronization with a connected directory. If you have only one direction of
# synchronization you can leave this field empty.
odip.profile.associatedProfile =

# updateChangeNumberatCreate: if the field is set to false,
# Last Change Number(lastchgnum) will be set to
# current time stamp or value at the time of profile creation.
# Instead you can set it true to retain its deafult value.
#
odip.profile.updateChangeNumberatCreate = TRUE

C 事例: Oracle Directory Integration Platformのデプロイ

この付録では、MyCompanyという企業内の様々なアプリケーションがOracle Directory Integration Platformによって統合されているデプロイ例を説明します。

この項の内容は次のとおりです。

- 企業MyCompany内のコンポーネント

- 企業MyCompanyの要件

- 企業MyCompany内の全体的なデプロイ

- 企業MyCompanyでのユーザーの作成とプロビジョニング

- 企業MyCompanyでのユーザー・プロパティの変更

- 企業MyCompanyでのユーザーの削除

C.1 企業MyCompany内のコンポーネント

この仮想の企業には、次のコンポーネントがあります。

- Oracle Human Resourcesシステム。すべての従業員と契約社員が管理されています。

- Oracleバックエンド・ディレクトリであるOracle Internet Directory。

- 特定のアプリケーションによって使用される接続ディレクトリである、Oracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)。

- Oracle Portal。全従業員のイントラネット・ポータルとして使用されています。

C.2 企業MyCompany内の要件

企業MyCompanyの要件は次のとおりです。

- すべての従業員と契約社員をOracle Human Resourcesで作成すること。作成後の情報は、Oracleバックエンド・ディレクトリ(Oracle Internet Directory)を介して企業内のすべてのアプリケーションで共有する必要があります。

- シングル・サインオン・サービスなど、企業内のすべてのアプリケーションが、Oracle Human Resourcesで作成された従業員を認識できること。

- ユーザー・プロパティの変更が発生したときには、影響を受けるすべてのアプリケーションにその変更が通知されること。

- Oracle Human Resourcesでユーザーが期限切れのときは、そのユーザーのすべてのアクセス権限が取り消されること。

C.3 企業MyCompany内の全体的なデプロイ

図C-1は、様々なコンポーネントとそれらの相互関係を示しています。

図C-1 MyCompany内でのOracle Directory Integration Platformのデプロイの例

図C-1の例では、次のことが示されています。

- Oracle Internet Directory(Oracleバックエンド・ディレクトリ)は、企業の全アプリケーションの中央ユーザー・リポジトリです。

- Oracle Human Resourcesは、すべてのユーザー関連の情報の基準です。Oracle Directory Synchronization Serviceを使用してOracle Internet Directoryと同期化されます。

- Oracle Directory Server Enterprise Editionは、すでに企業内にデプロイされており、Oracle Directory Synchronization Serviceを使用してOracle Internet Directoryと同期化されます。

- Oracle Portalは、Oracle Directory Integration Platform Serviceを使用して、Oracle Internet Directory内の変更に関する通知を受けます。

C.4 企業MyCompanyでのユーザーの作成とプロビジョニング

この例では、MyCompanyという企業が、すべてのユーザーをOracle Human Resourcesで作成する必要があるとします。Oracle Directory Integration Platformは、企業内のその他のすべてのリポジトリに新規ユーザー・レコードを伝播する必要があります。

図C-2は、Oracle Directory Integration Platformによりこのタスクがどのように実行されるかを示しています。

図C-2 ユーザーの作成とプロビジョニング

図C-2に、Oracle Human Resourcesでの新しいユーザーの作成を示します(これによってそのユーザーのエントリがOracle Internet DirectoryおよびOracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)に作成されます)。また、Oracle Portalアプリケーションにアクセスするためにユーザーをプロビジョニングするプロセスも示します。ユーザーの作成およびプロビジョニングは次のように行われます。

1. Oracle Human Resources管理者は、ユーザーをOracle Human Resourcesデータベースに作成します。

2. Oracle Directory Integration Platformは、Oracle Directory Synchronization Serviceを介して新規ユーザーの作成を検出します。

3. Oracle Directory Integration Platformは、Oracle Directory Synchronization Serviceを介してユーザーのエントリをOracle Internet Directoryに作成します。

4. Oracle Directory Integration Platformは、Oracle Directory Synchronization Serviceを介してエントリをOracle Directory Server Enterprise Editionに作成します。

5. このユーザー・エントリはOracle Internet Directoryで使用可能なため、Oracle Portalの管理者は、Oracle Portalのサービスを使用するユーザーをプロビジョニングできます。このタスクの実行時、Oracle Portalソフトウェアは、Oracle Internet Directoryからユーザー情報を自動的に取得します。

Oracle Directory Integration Platformは、新規ユーザーについてOracle Portalに直接通知しないことに注意してください。これは、Oracle Human Resourcesで作成されたすべてのユーザーが、すべてのサービスへのアクセスを必要とするとはかぎらないためです。この場合のデプロイでは、これらのサービスを使用するユーザーを、手順5に従って、明示的にプロビジョニングする必要があります。

C.5 企業MyCompanyでのユーザー・プロパティの変更

この例の企業MyCompanyでは、ユーザー・プロパティに対するあらゆる変更が、その変更に関連するすべてのコンポーネントに伝達される必要があります。図C-3は、この要件を満たすためにOracle Directory Integration Platformが実行するアクションを示しています。

図C-3 ユーザー・プロパティの変更

このプロセスは、次のとおりです。

1. ユーザーは、最初にOracle Human Resourcesで変更されます。

2. Oracle Directory Integration Platformは、Oracle Directory Synchronization Serviceを介してこれらの変更を取得します。

3. Oracle Directory Integration Platformは、Oracle Internet Directory内で対応するユーザーを変更します。

4. Oracle Directory Synchronization Serviceは、Oracle Directory Server Enterprise Editionのユーザーを変更します。

5. Oracle Directory Integration Platformは、Oracle Directory Integration Platform Serviceを介してユーザー・プロパティの変更をOracle Portalに通知します。

C.6 企業MyCompanyでのユーザーの削除

この例の企業MyCompanyでは、Oracle Human Resourcesで削除または期限切れになったユーザーは、ディレクトリ・サービスに基づいた企業のすべてのリソースへのアクセスを自動的に拒否される必要があります。

図C-4に、ユーザーが削除されたときのイベントの流れを示します。

図C-4 企業のHuman Resourcesからのユーザーの削除

図C-4に、Oracle Directory Integration Platformがユーザーの削除を企業内のすべてのシステムに通信するプロセスを示します。このプロセスは、次のとおりです。

1. ユーザーは、最初にOracle Human Resourcesで削除されます。

2. Oracle Directory Integration Platformは、Oracle Directory Synchronization Serviceを介してこれらの変更を取得します。

3. Oracle Directory Integration Platformは、Oracle Directory Synchronization Serviceを介してOracle Internet Directory内の対応するユーザーを削除します。

4. Oracle Directory Integration Platformは、Oracle Directory Synchronization Serviceを介してOracle Directory Server Enterprise Editionのユーザーを削除します。

5. Oracle Directory Integration Platformは、Oracle Directory Integration Platform Serviceを介してユーザーの削除をOracle Portalに通知します。

すべての手順が終了すると、Oracle Human Resourcesで削除されたユーザーは、Oracle Portalにアクセスできなくなります。

D Oracleスタックの起動と停止

Oracleスタックのコンポーネントは、特定の順序で起動および停止する必要があります。その点についてこの付録で説明します。

D.1 スタックの起動

スタック・コンポーネントは、次の順序で起動します。

1. Oracle Databaseを起動します。

1. データベースのORACLE_HOMEで、ORACLE_SID、ORACLE_HOMEおよびPATHの各環境変数を適切な値に設定します。

2. リスナーを起動します。

ORACLE_HOME/bin/lsnrctl start

3. データベースを起動します。

ORACLE_HOME/bin/sqlplus "/as sysdba"
startup

2. Oracle WebLogic管理サーバーを起動します。

注意:
コマンドラインからOracle WebLogic管理サーバーを起動すると、サーバーはフォアグラウンドで実行され、出力が画面に送られます。

MW_HOME/user_projects/domains/DOMAIN_NAME/bin/startWebLogic.sh \
SERVER_NAME {ADMIN_URL}

これらのスクリプトを実行する場合は次のようになります。

- DOMAIN_NAMEのデフォルト値はIDMDomainです。

- SERVER_NAMEは、Oracle WebLogic Managed Serverの名前を表します。デフォルト値はwls_ods1です。

- USER_NAMEとPASSWORDの値をスクリプトの実行時にオプションとして指定しない場合、その入力を要求されます。

- ADMIN_URLの値をスクリプトの実行時にオプションとして指定しない場合、値は継承されます。

3. ノード・マネージャが実行中であることを確認します。通常、Oracle WebLogic Administration Serverがノード・マネージャを起動します。ノード・マネージャがなんらかの理由によって実行されていない場合は、起動します。

MW_HOME/user_projects/domains/DOMAIN_NAME/bin/startNodeManager.sh

4. Oracle Internet Directoryなどのシステム・コンポーネントを起動します。

ORACLE_INSTANCE/bin/opmnctl startall

システム・コンポーネントが起動したかどうかは次を実行して確認できます。

ORACLE_INSTANCE/bin/opmnctl status -l

5. Oracle Directory Integration Platform、Oracle Directory Services ManagerなどのWebLogic管理対象コンポーネントを起動します。

MW_HOME/user_projects/domains/DOMAIN_NAME/bin/startManagedWebLogic.sh \  SERVER_NAME {ADMIN_URL}

バックグラウンドで管理対象コンポーネントを起動する場合、Oracle WebLogic管理コンソールを使用できます。詳細は、「Oracle Fusion Middleware Oracle WebLogic Serverの紹介」を参照してください。

Oracle Enterprise Manager Fusion Middleware Controlを使用して、WebLogicの管理コンポーネントのステータスを表示できます。

D.2 スタックの停止

Oracle WebLogic管理コンソールを使用して、Administration Serverおよびすべての管理対象サーバーを停止できます。詳細は、「Oracle Fusion Middleware Oracle WebLogic Serverの紹介」を参照してください。

コマンド・ラインからスタック・コンポーネントを停止するには、次の順序でコマンドを発行します。

1. Oracle Directory Integration Platform、Oracle Directory Services ManagerなどのWebLogic管理対象コンポーネントを停止します。

MW_HOME/user_projects/domains/DOMAIN_NAME/bin/stopManagedWebLogic.sh \
{SERVER_NAME} {ADMIN_URL} {USER_NAME} {PASSWORD}

2. Oracle Internet Directoryなどのシステム・コンポーネントを停止します。

ORACLE_INSTANCE/bin/opmnctl stopall

3. WebLogic管理サーバーを停止します。

MW_HOME/user_projects/domains/DOMAIN_NAME/bin/stopWebLogic.sh

4. ノード・マネージャを停止するには、killコマンドを使用します。

kill -9 pid

5. Oracle Databaseを停止します。

1. DatabaseのORACLE_HOMEで、ORACLE_SID、ORACLE_HOMEおよびPATH環境変数を適切な値に設定します。

2. データベースを停止します。

ORACLE_HOME/bin/sqlplus "/as sysdba"
shutdown immediate

3. リスナーを停止します。

ORACLE_HOME/bin/lsnrctl stop

E Oracle Directory Integration Platformのトラブルシューティング

この付録では、Oracle Directory Integration Platformの使用時に発生する可能性のある一般的な問題とその解決策について説明します。内容は次のとおりです。

- Oracle Directory Integration Platformのトラブルシューティング用チェックリスト

- 問題と解決策

- 同期に関するトラブルシューティング

- Microsoft Active Directoryとの統合に関するトラブルシューティング

- それでも解決しない場合

関連項目:

- Oracle Technology Network(http://www.oracle.com/technology/index.html)で参照可能なOracle Identity ManagementのOracle by Example

- 『Oracle Identity Managementユーザー・リファレンス』

E.1 Oracle Directory Integration Platformのトラブルシューティング用チェックリスト

Oracle Directory Integration Platformの問題をトラブルシューティングする際は、次のチェックリストを使用します。

- WebLogicを使用して、Oracle Directory Integration Platformアプリケーションがデプロイされているか確認します。

- Oracle Directory Integration Platformアプリケーションが稼働していることを確認します。
Oracle Enterprise Manager Fusion Middleware Controlを使用してOracle Directory Integration Platformアプリケーションのステータスを確認するには、Webブラウザを開き、使用する環境のOracle Enterprise Manager Fusion Middleware ControlのURLを入力します。Oracle Enterprise Manager Fusion Middleware ControlのURLの形式は、https://host:port/emです。

使用する環境のOracle Enterprise Manager Fusion Middleware Controlのホームページに含まれる「Fusion Middleware」セクションの「ステータス」列で、Oracle Directory Integration Platformアプリケーションのステータスを確認できます。

Oracle Directory Integration Platformアプリケーションのステータスをコマンドラインから確認するには、dipStatusユーティリティを使用します。Oracle Directory Integration Platformが稼働している場合、dipStatusによって、「ODIPアプリケーションがこのホストおよびポートでアクティブです。」というメッセージが返されます。

注意:

- dipStatusを使用する場合は、Administration Serverのホストとポートでなく、Oracle Directory Integration PlatformがデプロイされているOracle WebLogic Managed Serverのホストとポートを確実に指定します。

- 詳細は、「dipStatusユーティリティを使用したOracle Directory Integration Platformのステータスの表示」を参照してください。

- 次のようにmanageSyncProfilesコマンドを使用してプロファイルの名前とステータスをリストすることで、適切なプロファイルが有効化されているか確認します。

manageSyncProfiles list -h host -p port -D user [-prfSt] [-help]

注意:
パスワードを要求されます。

- 次のコマンドを実行して、サード・パーティのLDAPディレクトリ・サーバーが稼働しているかどうかを確認します。

ldapbind -h ldap_host -p ldap_port -D binddn -q

注意:
パスワードを要求されます。

- PL/SQLプラグインを使用している場合、sqlplusを使用してプロビジョニング統合アプリケーションへの接続状況を検証します。

E.2 原因および解決策

この項では、Oracle Directory Integration Platformの一般的な問題とその解決策について説明します。内容は次のとおりです。

- プロビジョニングのエラーと問題

- 同期のエラーと問題

- Windowsネイティブ認証のエラーと問題

- Novell eDirectoryとOpenLDAPの同期のエラーと問題

- Oracle Password Filter for Microsoft Active Directoryのエラーと問題

注意:
Oracle Directory Integration Platformでは、「ファイルの場所とネーミング」に示した適切なファイルにエラー・メッセージが格納されます。

E.2.1 プロビジョニングのエラーと問題

この項では、プロビジョニングのエラーと問題の解決策を示します。

問題

GUIDからエントリを取得できません。致命的なエラー...

解決方法

Oracle Directory Integration Platformは、削除されたものの、パージされていない可能性のあるエントリを取得しようとしています。しかし、このエラーの発生時には、エントリはすでにパージされています。今後のエラーを回避するには、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のガベージ・コレクションの管理に関する章を参照し、Oracle Internet Directoryのガベージ・コレクション・フレームワークのツームストン・パージ・コンフィギュレーション・セットを更新します。

問題

LDAP接続失敗

解決方法

Oracle Directory Integration Platformがディレクトリ・サーバーへの接続に失敗しました。ディレクトリ・サーバーへの接続を確認してください。

関連項目:
Oracleバックエンド・ディレクトリがOracle Internet Directoryである場合は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のディレクトリ・サーバー管理に関する章を参照してください。この章には、ディレクトリ・サーバー接続に関する情報が含まれています。

問題

初期化とデータベース接続の失敗、およびSQL操作のコール中の例外が発生しました。

解決方法

接続をテストするには、Oracle Enterprise Manager Fusion Middleware Controlで、プロファイルに対して「接続のテスト」機能を使用します。接続に失敗した場合、詳細については、次の場所にある診断ログ・ファイルを調べます。

MW_HOME/user_projects/domains/DOMAIN_NAME/servers/NAME_OF_MANAGED_SERVER/logs/

注意:
ファイル名は、NAME_OF_MANAGED_SERVER-diagnostic.logです。

問題

プロビジョニング・プロファイルをDIPプロビジョニング・サーバーで実行できません。

解決方法

Oracle Enterprise Manager Fusion Middleware Controlまたはoidprovtoolコマンドを使用して、プロファイルが有効であること、およびOracle Directory Integration Platformのスケジューリング間隔が正の整数に設定されていることを確認してください。

問題

アプリケーション・データベースに接続できません。

解決方法

プロビジョニング・プロファイルのアプリケーション・データベース接続の要件は正しくない可能性があります。sqlplusを使用して接続要件を確認します。

問題

ユーザーまたはグループの変更イベントおよび削除イベントがアプリケーションで使用されません。

解決方法

Oracle Enterprise Manager Fusion Middleware Controlで、プロファイルに対して「接続のテスト」機能を使用して、ホストのポートの詳細情報および資格証明を確認します。「接続のテスト」オプションの使用時に接続に失敗した場合は、失敗した接続に関する情報を示すエラー・メッセージが表示されます。

失敗した接続の詳細を参照するには、Oracle Enterprise Manager Fusion Middleware Controlを使用するか、コマンドラインから、診断ログを確認します。診断ログは次の場所にあります。

MW_HOME/user_projects/domains/DOMAIN_NAME/servers/NAME_OF_MANAGED_SERVER/logs/

注意:
ファイル名は、NAME_OF_MANAGED_SERVER-diagnostic.logです。

問題

バイナリ属性に対するサブスクリプションにより、イベント伝播エラーが発生しました。

解決方法

バイナリ属性の伝播はサポートされていません。プロビジョニング・ファイルのイベント・サブスクリプションから、バイナリ属性の指定を削除します。

問題

アプリケーション識別名としてプロキシの役割を果すには不十分なアクセス権限。

解決方法

Oracle Directory Integration Platformサーバー・グループには、アプリケーション識別名別の参照権限は付与されていません。ldapmodifyコマンドを使用して、アプリケーション識別名からOracle Directory Integration Platformグループへの参照権限を付与する次のACIをロードします。

orclaci: access to attr=(*) by group="cn=odisgroup,cn=DIPAdmins,cn=Directory
Integration Platform,cn=products,cn=oraclecontext "(read,write,search,compare)
orclaci: access to entry by group="cn=odisgroup,cn=DIPAdmins,cn=Directory
Integration Platform,cn=products,cn=oraclecontext"(browse,proxy)

問題

アプリケーション識別名をプロキシとして使用するには不十分なアクセス権限。

解決方法

Oracle Directory Integration Platformサーバー・グループには、アプリケーション識別名別のプロキシ権限は付与されていません。ldapmodifyコマンドを使用して、アプリケーション識別名からOracle Directory Integration Platformグループへのプロキシ権限を付与する次のACIをロードします。

orclaci: access to entry by group=" cn=odisgroup, cn=odi,cn=oracle internet directory" (browse,proxy)

E.2.2 同期のエラーと問題

この項では、同期のエラーと問題の解決策を示します。

関連項目:
My Oracle Support(旧MetaLink)のNote 276481.1—「Troubleshooting OID DIP Synchronization Issues」(http://metalink.oracle.com/)

問題

LDAP: エラー・コード50 - 不十分なアクセス権限; 残りの名前 'CN=Users,dc=mycompany,dc=com'

解決方法

レコードのターゲットはデフォルト・コンテナには存在しません。DST CHANGE RECORDを検索します。ターゲット・コンテナのACIを確認します。空白の場合は、DIPテスターを使用して新しいコンテナに既知のACIセットを適用します。

問題

LDAP: エラー・コード50 - 不十分なアクセス権限; ACTIVECHGIMPマッピング、インポート操作失敗; エージェント実行成功、マッピング/IMPORT操作に失敗しました。

解決方法

デフォルトでは、cn=Users,default realmには適切なACIが含まれます。ただし、デフォルト・レルム内の異なるコンテナと同期化しようとするとこのエラーが発生することがあります。トレース・ファイルを開き、エラーの原因となっている変更レコードを見つけて、そのレコードの親コンテナのACIを確認します。ターゲット・コンテナに同じACIを適用します。

問題

Log File Error: Not able to construct DN Output ChangeRecord : Changetype: 1 ChangeKey: cn=users, dc=us,dc=oracle,dc=com Exception javax.naming. ContextNotEmptyException: [LDAP: error code 66 - Not Allowed On Non-leaf]; remaining name 'cn=users,dc=us,dc=oracle,dc=com' Missing mandatory attribute(s).

解決方法

マッピング・ファイルに問題があります。My Oracle Support(旧MetaLink)のNote 261342.1 —「Understanding DIP Mapping」(http://metalink.oracle.com/)を参照してください。

問題

Trace File Error: IPlanetImport:Error in Mapping Enginejava.lang.NullPointerException java.lang.NullPointerException at oracle.ldap.odip.engine.Connector.setValues(Connector.java:101).

解決方法

orclcondirlastappliedchgnum属性はnullであるか、値がありません。これは、ブートストラップに失敗した場合、または、Oracleバックエンド・ディレクトリへの移入を手動で行い、orclcondirlastappliedchgnum属性に値を割り当てなかった場合に発生することがあります。orclcondirlastappliedchgnum属性に値があることを確認します。値がない場合は、DIPテスター・ユーティリティまたはDIP Mbeanを構成するWLSTを使用して設定します。

問題

追加操作と変更操作は成功しますが、削除操作は失敗し、トレース・ファイルに記録されません。

解決策1

Oracle Directory Server Enterprise EditionまたはSun Java System Directory Serverでは、tombstoneは無効です。My Oracle Support(旧MetaLink)のNote 219835.1(http://metalink.oracle.com/)を参照して、tombstoneが有効化されていることを確認します。

解決策2

Microsoft Active Directoryの場合、プロファイルに使用されるアカウントは、DIR SYNCH ADMINグループのメンバーではありません。これは、Microsoft Active Directory管理者アカウントを使用していない場合にのみ、発生します。Microsoftの適切なパッチをインストールします。

問題

Oracle Directory Integrationインポート・コネクタまたはエクスポート・コネクタをサード・パーティLDAPディレクトリに対して構成した後、データの同期の問題が発生しました。

解決方法

manageSyncProfilesコマンドのtestProfile操作を使用して、原因を特定します。

問題

Oracle Enterprise Manager Fusion Middleware Controlを使用して同期プロファイルの属性マッピング・ルールを編集すると、オブジェクト・クラスに対してスキーマが初期化されていないというエラーの原因になります。

解決方法

この問題は、サード・パーティのディレクトリ接続の詳細に無効なディレクトリ・タイプが指定されているために発生することがあります。正しいディレクトリ・タイプおよび接続の詳細を指定していることを確認します。

問題

Oracle Enterprise Manager Fusion Middleware ControlのOracleバックエンド・ディレクトリ・プロファイルは、「同期成功」と表示されますが、ディレクトリではまだ変化が見られません。

解決方法

最初に、Oracle Enterprise Manager Fusion Middleware Controlを使用して、同期プロファイルの次のパラメータを調べることにより、同期が発生したかどうかを判定します。

- 正常完了時間(DIP Serverホームページ)

- 最終実行時間(DIP Serverホームページ)

- スケジューリングの間隔(プロファイルの「拡張」タブ)

正常完了時間および最終実行時間メトリックにシステムの現在時刻と関連する時刻値がある場合に、同期が発生します。これらのメトリックが、システムの現在時刻よりかなり前の時刻値を示す場合、同期は発生しません。

同期が発生している場合:

- Oracle Enterprise Manager Fusion Middleware Controlの、該当するプロファイルの「マッピング」タブで、「ソース・コンテナ」設定を調べ、同期が正しい場所で発生するように構成されているか確認します。

- Oracle Enterprise Manager Fusion Middleware Controlの、該当プロファイルの「フィルタリング」タブで、「ソースの一致フィルタ」設定を調べ、正しいオブジェクトがフィルタされているか確認します。

同期が発生していない場合:

- Oracle Enterprise Manager Fusion Middleware ControlのDIP Serverホームページを使用して、同期プロファイルが有効化されているか確認します。

- Oracle Enterprise Manager Fusion Middleware ControlのDIP Serverホームページを使用して、クォーツ・スケジューラのステータスを確認します。

- manageSyncProfilesコマンドおよびそのtestProfile操作を使用して、同期プロファイルをテストします。manageSyncProfilesコマンドの詳細は、「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

E.2.3 Windowsネイティブ認証のエラーと問題

この項では、Oracle Identity ManagementをWindowsネイティブ認証と統合する際に発生する可能性のあるエラーと問題の解決策を示します。

注意:
Oracle Directory Integration Platform 11gリリース1(11.1.1)は、Oracle Application Server Single Sign-On 10gリリース10.1.4.3.0以上をサポートしており、相互運用できます。

関連項目:
Windowsネイティブ認証のエラーの詳細は、Oracle Enterprise Single Sign-On Suite Plus管理者ガイドのトラブルシューティングに関する章の、Windowsネイティブ認証エラーの問題と解決策に関する説明を参照してください。

問題

内部サーバー・エラーです。管理者に連絡してください。

解決方法

Windowsネイティブ認証が中間層コンピュータで正しく構成されていません。この問題を修正するには、次の手順を実行します。

1. opmn.logファイルでエラーをチェックします。

2. ssoServer.logファイルでエラーをチェックします。

3. keytabファイルが$ORACLE_HOME/j2ee/OC4J_SECURITY/configディレクトリにあり、jazn-data.xmlファイルで構成されたプリンシパル名が正しいことを確認します。

4. Key Distribution Centerにアクセスできるように、シングル・サインオンの中間層コンピュータが正しく構成されていることを確認します。

問題

KDCで認証できませんでした。

解決方法

このエラー・メッセージは、krb5.confでレルム名が誤って構成されている場合に表示されることがあります。/etc/krb5/krb5.confでdefault_realmおよびdomain_realmの値を確認します。レルム名は大/小文字が区別されることに注意してください。

問題

ブラウザがWindowsのKerberos認証をサポートしていないか適切に構成されていません。

解決方法

ユーザーのWebブラウザはサポートされていないか、正しく構成されていません。「タスク2: Windowsネイティブ認証用のInternet Explorerの構成」の指示に従います。

問題

「アクセスが許可されていません」、HTTPエラー・コード403、または「Windowsのネイティブ認証に失敗しました。管理者に連絡してください」

解決方法

これらのエラー・メッセージの共通の原因は、Oracleバックエンド・ディレクトリでユーザー・エントリが見つからないことです。Windowsデスクトップで作業しているローカル管理者が、エントリがOracleバックエンド・ディレクトリと同期化されていない可能性のあるシングル・サインオン・パートナ・アプリケーションにアクセスしようとしている場合があります。ユーザー・エントリがディレクトリ内に存在するかどうか、およびユーザーのKerberosプリンシパル属性がMicrosoft Active Directoryから適切に同期化されるかどうかを判断します。

問題

パートナ・アプリケーションにアクセスすると、Windowsのログイン・ダイアログ・ボックスが(ユーザー名、パスワードおよびドメイン・フィールド付きで)表示されます。

解決方法

Oracleバックエンド・ディレクトリで対応するユーザー・エントリが見つからないため、Single Sign-On ServerでKerberosトークンを認証できませんでした。ディレクトリにユーザー・エントリを追加します。

問題

Single Sign-On Serverが起動しません。ログ・ファイルに「Credential not found.」というメッセージの例外があります。

解決方法

パラメータkerberos-servicenameが正しく構成されていない可能性があります。この問題を修正するには、次の手順を実行します。

1. ファイルorion-application.xmlおよびjazn-data.xmlでkerberos-servicenameが正しく構成されていることを確認します。orion-application.xmlファイルでのこのパラメータの形式はHTTP@sso.mycompany.comです。jazn-data.xmlファイルでの形式はHTTP/sso.mycompany.comです。

2. ssoServer.logファイルでエラーをチェックします。

3. keytabファイルが$ORACLE_HOME/j2ee/OC4J_SECURITY/configディレクトリにあり、jazn-data.xmlで構成されたプリンシパル名が正しいことを確認します。

4. Kerberosドメイン・コントローラにアクセスできるように、シングル・サインオンの中間層コンピュータが構成されていることを確認します。

問題

OracleAS Single Sign-On Server Configuring Assistantの実行時に、次の例外が発生します。

Repository Access API throws exception :
oracle.ias.repository.schema.SchemaException: Unable to establish secure
connection to Oracle Internet Directory Server
ldap://server.mycompany.com:636/ Base Exception :
javax.naming.CommunicationException: server.mycompany.com:636 [Root
exception is java.lang.UnsatisfiedLinkError: no njssl10 in java.library.path]
at
oracle.ias.repository.directory.DirectoryReader.connectSsl(DirectoryReader.java:
98)
at
oracle.ias.repository.directory.DirectoryReader.connect(DirectoryReader.java:106
)
at oracle.ias.repository.IASSchema.getDBPassword(IASSchema.java:440)
at
oracle.ias.repository.SchemaManager.getDBPassword(SchemaManager.java:310)
at oracle.security.sso.IMWNAConfig.getSSOHost(IMWNAConfig.java:903)
at oracle.security.sso.IMWNAConfig.parseArgs(IMWNAConfig.java:168)
at oracle.security.sso.IMWNAConfig.init(IMWNAConfig.java:194)
at oracle.security.sso.IMWNAConfig.work(IMWNAConfig.java:60)
at oracle.security.sso.SSOConfigAssistant.wnaConfig(SSOConfigAssistant.java:243)
at oracle.security.sso.SSOConfigAssistant.main(SSOConfigAssistant.java:218)

解決方法

OracleAS Single Sign-On Server Configuring AssistantのWindows版がUNIXおよびLinuxプラットフォームで実行される場合に、この例外が発生します。「各Oracle Application Server Single Sign-OnホストでのOracleAS Single Sign-On Server Configuration Assistantの実行」の指示に従い、OracleAS Single Sign-On Server Configuring AssistantのUNIX/Linux版を実行します。

問題

Windowsネイティブ認証で、Internet ExplorerがKerberos資格証明のかわりにNT Lan Manager(NTLM)認証を送信しています。

解決方法

この問題は、不適切に構成されたMicrosoft Active Directoryのインストールに起因します。この問題の解決方法の詳細は、Microsoft Active Directoryのドキュメントを参照するか、またはMicrosoftに連絡してください。

問題

個別ユーザーが、Windowsネイティブ認証を使用して特定のコンピュータからログインできません。

解決方法

ユーザーが別のコンピュータを使用してログインできる場合、元のコンピュータのWindowsまたはInternet Explorerの構成に問題があります。この問題の解決方法の詳細は、Microsoft Developer Network(http://msdn.microsoft.com)を参照するか、またはMicrosoftに連絡してください。

E.2.4 Novell eDirectoryとOpenLDAPの同期のエラーと問題

この項では、Novell eDirectoryとOpenLDAPで発生する可能性のある同期のエラーと問題に対する解決策を示します。

問題

インポート同期の構成後、プロファイルの同期ステータスは成功で、トレース・ファイルに例外が示されていなくても、Novell eDirectoryまたはOpenLDAPからOracleバックエンド・ディレクトリにエントリが同期化されません。

考えられる原因と解決策は、次のとおりです。

原因 誤った値がインポート・プロファイルのodip.profile.condirfilterプロパティのmodifiersnameパラメータに割り当てられています。

解決策 接続識別名を、Novell eDirectoryまたはOpenLDAPのエクスポート・プロファイルからインポート・プロファイルのodip.profile.condirfilterプロパティのmodifiersnameパラメータにコピーします。

原因 Oracle Directory Integration Platformが同期化しようとしたエントリが、インポート・ファイルのodip.profile.condirfilterプロパティのmodifiersnameパラメータに割り当てられたものと同じ識別名を使用して作成されています。

解決策 インポート・ファイルのodip.profile.condirfilterプロパティのmodifiersnameパラメータに割り当てられている識別名を、Novell eDirectoryまたはOpenLDAPでエントリを作成しない識別名に変更します。

原因 Oracleバックエンド・ディレクトリを実行しているコンピュータと、Novell eDirectoryまたはOpenLDAPを実行しているコンピュータとの間に時間差があります。

解決策 インポート・ファイルのodip.profile.configfileプロパティのReduceFilterTimeInSecondsパラメータに、2つのコンピュータ間の時間差と等しい秒数を値として割り当てます。

問題

リコンシリエーション時にスローされたサポート外の例外。

解決方法

Novell eDirectoryまたはOpenLDAPのリコンシリエーション・ルールに指定されているOracleバックエンド・ディレクトリの属性の1つ以上が索引付けされていません。Oracleバックエンド・ディレクトリの対応する属性を索引付けします。

問題

プロファイルのリコンシリエーション・ステータスは成功でも、Novell eDirectoryまたはOpenLDAPからOracleバックエンド・ディレクトリに削除済エントリが同期化されません。

考えられる原因と解決策は、次のとおりです。

原因 削除済エントリがNovell eDirectoryまたはOpenLDAPのリコンシリエーション・ルールに指定されていません。

解決策 Novell eDirectoryまたはOpenLDAPのリコンシリエーション・ルールを変更して、削除済エントリを含めます。

原因 Novell eDirectoryまたはOpenLDAPに特定のリコンシリエーション・ルールに関するエントリがOracleバックエンド・ディレクトリよりも多く存在します。

解決策 次のメッセージがないか、$ORACLE_HOME/ldap/odi/log/profile_name.trcファイルを調べてください。

No. of entries are less in destination directory compared to source directory.

このメッセージは、通常、Novell eDirectoryまたはOpenLDAP DIT全体をOracleバックエンド・ディレクトリと同期化する必要がある場合に生成されます。この問題を解決するには、odip.profile.configfileプロパティのCheckAllEntriesパラメータにtrue値を割り当てます。

注意:
odip.profile.configfileプロパティのCheckAllEntriesパラメータにtrue値を指定すると、パフォーマンスが低下します。

E.2.5 Oracle Password Filter for Microsoft Active Directoryのエラーと問題

この項では、Oracle Password Filter for Microsoft Active Directoryで発生する可能性のあるエラーと問題に対する解決策を示します。

問題

Oracle Password Filter for Microsoft Active Directoryをインストールできず、次のエラーがログに報告されます。

(Aug 23, 2010 8:26:52 PM), Install, com.oracle.installshield.adpwd.ldapModify, dbg, C:\Program Files (x86)\oracle\ADPasswordFilter\prepAD.ldif

(Aug 23, 2010 8:26:52 PM), Install, com.oracle.installshield.adpwd.ldapModify, err, in LDAPOperation

(Aug 23, 2010 8:26:52 PM), Install, com.oracle.installshield.adpwd.ldapModify, err, [LDAP: error code 19 - 000020B5: AtrErr: DSID-03152704, #1:

0: 000020B5: DSID-03152704, problem 1005 (CONSTRAINT_ATT_TYPE), data 0, Att 9030e (objectCategory)

原因

このエラーは、ActiveDirectoryのschemaNamingContextオブジェクトがdefaultNamingContextの下にない場合に発生することがあります。

解決方法

この問題を解決するには、次のいずれかを行います。

- prepAD.ldifのObjectCategory属性を、CN=Organizational-Unit, schemaNamingContext値に置き換えます
(schemaNamingContextはスキーマ名コンテキスト値で置き換えられます)。

- prepAD.ldifからObjectCategory属性を削除します。エントリがActiveDirectoryに追加されるため、objectcategory属性には自動的に正常な値が移入されます。

問題

ログ・ファイル・パスが見つかりません。

原因

ログ・ファイル・パスが無効です。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、有効なログ・ファイル・パスを指定します。

問題

非SSLモード(モード1)でOracle Internet Directoryに接続できません。

注意:
Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionでは、非SSLモード(モード1)はサポートされません。

原因

Oracle Internet Directoryのコンフィギュレーション・セットが無効です。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、Oracle Internet Directoryのコンフィギュレーション・セットを修正します。

問題

SSLモードでOracleバックエンド・ディレクトリに接続できません。

原因

Oracleバックエンド・ディレクトリの認証局の信頼できる証明書がMicrosoft Active Directoryドメイン・コントローラにインポートされていません。

解決方法

「Microsoft Active Directoryドメイン・コントローラへの信頼できる証明書のインポート」の指示に従い、Microsoft Active Directoryに信頼できる証明書をインポートします。

問題

Microsoft Active Directoryに接続できません。

原因

Microsoft Active Directoryの構成設定が無効です。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、Microsoft Active Directoryの構成設定を修正します。

問題

prepAD.ldifファイルをアップロードできません。

原因

指定されたMicrosoft Active DirectoryのベースDNコンテナにorganizationalUnitオブジェクトを格納できません。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、organizationalUnitオブジェクトを格納できるMicrosoft Active DirectoryのベースDNを指定します。

問題

Oracleバックエンド・ディレクトリとMicrosoft Active Directoryとの間でパスワードの更新がループしています。

原因

Oracle Password Filterが、Microsoft Active DirectoryからOracleバックエンド・ディレクトリに値をインポートする同期プロファイルに指定されているものと同じバインドDNとパスワードを使用するように構成されていません。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、Microsoft Active DirectoryからOracleバックエンド・ディレクトリに値をインポートする同期プロファイルに指定されているものと同じバインドDNとパスワードを使用するようにOracle Password Filterを構成します。

問題

一部のパスワードが、Oracleバックエンド・ディレクトリとMicrosoft Active Directoryの間で同期化されません。

原因

Oracleバックエンド・ディレクトリとMicrosoft Active Directoryで、競合するパスワード・ポリシーを指定しています。

解決方法

Oracleバックエンド・ディレクトリのパスワード・ポリシーをMicrosoft Active Directoryに設定されているものと同じポリシーに設定するか、Oracleバックエンド・ディレクトリからパスワード・ポリシーを削除します。

問題

一部のユーザーについて、パスワードが同期化されません。

原因

Oracle Password Filterの拡張インストールを実行して、Oracleバックエンド・ディレクトリとMicrosoft Active Directoryの間で同期化する属性に異なる値を指定しています。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、Oracleバックエンド・ディレクトリとMicrosoft Active Directoryの間で同期化する属性に対して、同じ値を指定します。

問題

ユーザー・データは同期化されますが、パスワードの同期化が遅延します。

原因

ユーザー・データの同期とパスワードの同期に、異なる時間間隔が指定されています。

解決方法

Oracle Password FilterのSleepTimeパラメータに割り当てられる値が、同期プロファイルのデフォルトのスケジューリング間隔と同じであることを確認します。Oracle Enterprise Manager Fusion Middleware ControlツールまたはmanageSyncProfilesコマンドを使用して、同期プロファイルのデフォルトのスケジューリング間隔を表示および変更できます。SleepTimeパラメータに割り当てられている値を変更するには、「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従います。

E.3 同期に関するトラブルシューティング

この項では、Oracle Directory Integration Platformとの同期に関する問題をトラブルシューティングする方法について説明します。内容は次のとおりです。

- Oracle Directory Integration Platformの同期プロセスの流れ

- 同期プロファイルの登録の概要

- diagnostic.logファイルの概要

E.3.1 Oracle Directory Integration Platformの同期プロセスの流れ

Oracleバックエンド・ディレクトリと接続ディレクトリ間の同期に関する問題をデバッグする場合、Oracle Directory Integration Platformの同期プロセスの流れを理解することが役立ちます。

E.3.1.1 インポート・プロファイルの場合のOracle Directory Integration Platformの同期プロセスの流れ

Oracle Directory Integration Platformでは、起動時にすべてのインポート・プロファイルを読み取ります。ENABLEに設定されているプロファイルごとに、同期プロセスの間に、Oracle Directory Integration Platformにより次のタスクが実行されます。

1. サード・パーティ・ディレクトリに接続します。

2. 接続ディレクトリから最終変更キーの値を取得します。

3. Oracleバックエンド・ディレクトリに接続します。

4. プロファイルの最後に適用された変更キーの値をOracleバックエンド・ディレクトリから取得します。

5. Oracleバックエンド・ディレクトリからOracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)に接続する場合、Oracle Directory Integration Platformは、リモート変更ログで、最後に適用された変更キーの値より大きいエントリと、最終変更キーの値以下のエントリを検索します。Microsoft Active Directory接続の場合、Oracle Directory Integration Platformはリモート・ディレクトリのUSNChanged値でこの情報を検索します。Novell eDirectoryおよびOpenLDAPコネクタの場合、変更は各エントリのmodifytimestamp属性に基づいて識別されます。Oracle Human Resourcesコネクタなど、他のタイプのコネクタの場合、Oracle Directory Integration Platformは類似のタイプの検索を実行しますが、データの交換方法は接続のタイプによって異なります。

6. データ値を接続ディレクトリからOracleバックエンド・ディレクトリの値へマップします。

7. Oracleバックエンド・ディレクトリ変更レコードを作成します。

8. Oracleバックエンド・ディレクトリで変更を適用(追加、変更、削除)します。

9. Oracleバックエンド・ディレクトリ・インポート・プロファイルを、最終実行時間と接続ディレクトリから最後に適用された変更キーで更新します。

10. 同期の間隔として指定された秒数のスリープ・モードに入ります。

E.3.1.2 エクスポート・プロファイルの場合のOracle Directory Integration Platformの同期プロセスの流れ

Oracle Directory Integration Platformでは、起動時にすべてのエクスポート・プロファイルを読み取ります。ENABLEに設定されているプロファイルごとに、同期プロセスの間に、Oracle Directory Integration Platformにより次のタスクが実行されます。

1. サード・パーティ・ディレクトリに接続します。

2. Oracleバックエンド・ディレクトリに接続します。

3. 最後の変更キーの値をOracleバックエンド・ディレクトリから取得します。

4. プロファイルの最後に適用された変更キーの値をOracleバックエンド・ディレクトリから取得します。

5. Oracle Directory Integration Platformは、Oracleバックエンド・ディレクトリの変更ログで、最後に適用された変更キーの値より大きいエントリと、最終変更キーの値以下のエントリを検索します。

6. データ値をOracleバックエンド・ディレクトリから接続ディレクトリの値へマップします。

7. 変更レコードを作成します。

8. 接続ディレクトリに変更を適用(追加、変更、削除)します。

9. Oracleバックエンド・ディレクトリ・エクスポート・プロファイルを、最終実行時間とOracleバックエンド・ディレクトリから最後に適用された変更キーで更新します。

10. 同期の間隔として指定された秒数のスリープ・モードに入ります。

E.3.2 同期プロファイルの登録の概要

この項では、同期プロファイルの登録に関する情報を提供します。

DISABLED状態で登録されているプロファイルの検証

登録されているプロファイルの検証は必須ではありません。ただし、検証がプロファイル作成の妨げにならないかぎり、登録済プロファイルを検証できます。

検証が失敗したDISABLEDプロファイルの登録

DISABLED状態のプロファイルの検証が失敗しても、そのプロファイルは登録されたままです。DISABLED状態のプロファイルは、エラーがあるか、ターゲット・システム・ディレクトリへの資格証明が不明である可能性がありますが、これは、プロファイルの登録を妨げるものではありません。

プロファイル・エラーの修正

サード・パーティのディレクトリ・パスワードが誤っているなどの原因でプロファイルの登録中にエラーを受信した場合、manageSyncProfilesコマンドライン・ツールを使用してプロファイルのエラーを修正します。詳細は、「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

E.3.3 diagnostic.logファイルの概要

この項では、Oracle Directory Integration Platformのdiagnostic.logファイルの概要を説明します。このファイルは次の場所にあります。

MW_HOME/user_projects/domains/DOMAIN_NAME/servers/NAME_OF_MANAGED_SERVER/logs/

注意:
ファイル名は、NAME_OF_MANAGED_SERVER-diagnostic.logです。

下記はdiagnostic.logファイルの例で、セクションに分割され、Oracle Directory Integration Platformのトラブルシューティングを行うときに役立つ情報を識別するための注釈が付けられています。注目すべき情報は太字で示され、テキストHost: HOST_NAME: PORTは、Oracle Directory Integration Platformが接続しているマシンのホスト名およびポートを示します。

起動情報

diagnostic.logファイルの次のセクションは、Oracle Directory Integration Platformの起動に関連する情報を示しています。このセクションでは、次のことに注意してください。

- SSL Mode:は、Oracleバックエンド・ディレクトリへの接続に使用される接続モードを示します。SSL Mode: 1またはSSL Mode: 2が表示されます。SSL Mode: 2が表示される場合、Oracle Directory Integration PlatformはOracleバックエンド・ディレクトリへの接続に証明書を使用します。Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionでは、SSLモード2のみがサポートされます。モード1(非SSLモード1)はサポートされません。

- Scheduler initializedは、プロファイル・スケジューラが適切に初期化されたことを示します。Oracleバックエンド・ディレクトリ・サーバーへの接続に成功したことを示す文字列が続きます。

- スキーマ・オブジェクトが初期化され、プロファイルの同期がスケジュールされます。

[2009-02-18T00:52:27.530-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid:
[ACTIVE].ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId:
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Copyright (c) 1982,
2009 Oracle.  All rights reserved

[2009-02-18T00:52:27.550-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid:
[ACTIVE].ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId:
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] SSL Mode : 1

[2009-02-18T00:52:27.554-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid:
[ACTIVE].ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId:
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Host: HOST_NAME: PORT

[2009-02-18T00:52:38.104-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId:
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Scheduler intialized

[2009-02-18T00:52:47.273-08:00] [wls_ods1] [NOTIFICATION] [DIP-10571] [oracle.dip] [tid: Scheduler]
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Connection to LDAP Server Successful

[2009-02-18T00:52:47.334-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId:
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] OBJECT_SCHEMA_READER_INITIALIZING

[2009-02-18T00:52:47.508-08:00] [wls_ods1] [NOTIFICATION] [DIP-10572] [oracle.dip] [tid: Scheduler]
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Object Schema Reader Initialized.

[2009-02-18T00:52:47.510-08:00] [wls_ods1] [NOTIFICATION] [DIP-10573] [oracle.dip] [tid: Scheduler]
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Event Schema Reader Initialized.

[2009-02-18T00:52:48.198-08:00] [wls_ods1] [NOTIFICATION] [DIP-10574] [oracle.dip] [tid: Scheduler]
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Data
transfer interface defn initialized

[2009-02-18T00:52:48.213-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId:
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] INITALIZE_PROVJOBS

[2009-02-18T00:52:48.773-08:00] [wls_ods1] [NOTIFICATION] [DIP-10566] [oracle.dip] [tid: Scheduler]
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] [arg:
\n----------EVENT TYPE CONFIGURATION
---------------\n--------------------------------\nEventLDAPChangeType :
ADD,MODIFY,DELETE\nobjectclass:
inetorgperson,orcluserv2\n--------------------------------\nEventLDAPChangeType :
ADD,MODIFY,DELETE\nobjectclass:
orclservicesubscriptiondetail\n--------------------------------\nEventLDAPChangeType :
ADD,MODIFY,DELETE\nobjectclass: *\n--------------------------------\nEventLDAPChangeType :
ADD,MODIFY,DELETE\nobjectclass:
inetorgperson,orcluserv2\n--------------------------------\nEventLDAPChangeType :
ADD,MODIFY,DELETE\nobjectclass:
orclsubscriber\n--------------------------------\nEventLDAPChangeType :
ADD,MODIFY,DELETE\nobjectclass:
orclgroup,orclprivilegegroup,groupofuniquenames,groupofnames\n-------------------------------------
-------------] Print Event Type Configuration...[[
----------EVENT TYPE CONFIGURATION ---------------
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: inetorgperson,orcluserv2
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: orclservicesubscriptiondetail
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: *
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: inetorgperson,orcluserv2
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: orclsubscriber
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: orclgroup,orclprivilegegroup,groupofuniquenames,groupofnames
--------------------------------------------------
]]

[2009-02-18T00:52:48.826-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId:
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] INITALIZE_SYNCJOBS

[2009-02-18T00:52:50.804-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId:
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Job submission successfulActiveExport SYNC_JOB 60

[2009-02-18T00:52:50.809-08:00] [wls_ods1] [NOTIFICATION] [EVENT_NOT_ENABLED] [oracle.dip] [tid:
Scheduler] [userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0]

[2009-02-18T00:52:52.184-08:00] [wls_ods1] [NOTIFICATION] [DIP-10605] [oracle.dip] [tid: Scheduler]
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] [arg:
ActiveExport] Profile : ActiveExport added successfully for scheduling.

UpdateThreadによるプロファイル内の変更の検出

diagnostic.logファイルの次のセクションには、同期プロファイルおよびプロビジョニング・プロファイルに対して行われた変更を検出するUpdateThreadジョブに関連する情報が表示されます。UpdateThreadによって変更が確認されると、プロファイルは変更され、再スケジュールされます。このセクションでは、次のことに注意してください。

[2009-02-18T01:20:42.501-08:00] [wls_ods1] [NOTIFICATION] [DIP-10580] [oracle.dip] [tid:
UpdateThread] [userId: <anonymous>] [ecid: 0000Hy8fyF1F0FQ6ubn3EH19ax8V000003,0] [APP:
DIP#11.1.1.1.0] [arg:
(&(objectclass=changelogentry)(changenumber>=3340)(|(targetdn=*cn=Profiles,cn=Provisioning,cn=Direc
tory Integration Platform,cn=Products,cn=OracleContext)(targetdn=*cn=event definitions,cn=directory
integration platform,cn=products,cn=oraclecontext)(targetdn=*cn=object definitions,cn=directory
integration platform,cn=products,cn=oraclecontext)))] Changelog Filter :
(&(objectclass=changelogentry)(changenumber>=3340)(|(targetdn=*cn=Profiles,cn=Provisioning,cn=Direc
tory Integration Platform,cn=Products,cn=OracleContext)(targetdn=*cn=event definitions,cn=directory
integration platform,cn=products,cn=oraclecontext)(targetdn=*cn=object definitions,cn=directory
integration platform,cn=products,cn=oraclecontext)))

プロファイル初期化

diagnostic.logファイルの次のセクションは、プロファイル初期化に関連する情報を示しています。このセクションでは、ActiveImportプロファイルがスケジュールされていることに注意してください。

[2009-02-18T02:26:19.604-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId:
<anonymous>] [ecid: 0000Hy8unSqF0FQ6ubn3EH19ay88000001,0] [APP: dipapp#11.1.1.1.0] INITALIZE_SYNCJOBS

[2009-02-18T02:26:19.695-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId:
<anonymous>] [ecid: 0000Hy8unSqF0FQ6ubn3EH19ay88000001,0] [APP: dipapp#11.1.1.1.0] Job submission successfulActiveImport SYNC_JOB 60

[2009-02-18T02:26:19.703-08:00] [wls_ods1] [NOTIFICATION] [EVENT_NOT_ENABLED] [oracle.dip] [tid:
Scheduler] [userId: <anonymous>] [ecid: 0000Hy8unSqF0FQ6ubn3EH19ay88000001,0] [APP: dipapp#11.1.1.1.0]

[2009-02-18T02:26:19.741-08:00] [wls_ods1] [NOTIFICATION] [DIP-10605] [oracle.dip] [tid: Scheduler]
[userId: <anonymous>] [ecid: 0000Hy8unSqF0FQ6ubn3EH19ay88000001,0] [APP: dipapp#11.1.1.1.0] [arg:
ActiveImport] profile added successfully for scheduling : ActiveImport

データベース障害

diagnostic.logファイルの次のセクションには、データベースが稼働していない場合に表示されるメッセージが表示されます。

Feb 18, 2009 3:01:19 AM org.quartz.impl.jdbcjobstore.JobStoreSupport$ClusterManager manage
SEVERE: ClusterManager: Error managing cluster: Failed to obtain DB connection from data source
'schedulerDS': java.sql.SQLException: Could not retrieve datasource via JNDI url 'jdbc/schedulerDS'
weblogic.jdbc.extensions.PoolDisabledSQLException:
weblogic.common.resourcepool.ResourceDisabledException: Pool schedulerDS is disabled, cannot
allocate resources to applications..
org.quartz.JobPersistenceException: Failed to obtain DB connection from data source 'schedulerDS':
java.sql.SQLException: Could not retrieve datasource via JNDI url 'jdbc/schedulerDS'
weblogic.jdbc.extensions.PoolDisabledSQLException:
weblogic.common.resourcepool.ResourceDisabledException: Pool schedulerDS is disabled, cannot
allocate resources to applications.. [See nested exception: java.sql.SQLException: Could not
retrieve datasource via JNDI url 'jdbc/schedulerDS'
weblogic.jdbc.extensions.PoolDisabledSQLException:
weblogic.common.resourcepool.ResourceDisabledException: Pool schedulerDS is disabled, cannot
allocate resources to applications..]
at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:636)
at org.quartz.impl.jdbcjobstore.JobStoreTX.getNonManagedTXConnection(JobStoreTX.java:72)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.doCheckin(JobStoreSupport.java:3070)
at org.quartz.impl.jdbcjobstore.JobStoreSupport$ClusterManager.manage(JobStoreSupport.java:3713)
at org.quartz.impl.jdbcjobstore.JobStoreSupport$ClusterManager.run(JobStoreSupport.java:3749)
Caused by: java.sql.SQLException: Could not retrieve datasource via JNDI url 'jdbc/schedulerDS'
weblogic.jdbc.extensions.PoolDisabledSQLException:
weblogic.common.resourcepool.ResourceDisabledException: Pool schedulerDS is disabled, cannot
allocate resources to applications..
at org.quartz.utils.JNDIConnectionProvider.getConnection(JNDIConnectionProvider.java:166)
at org.quartz.utils.DBConnectionManager.getConnection(DBConnectionManager.java:112)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:633)

正常な同期操作

diagnostic.logファイルの次のセクションには、ユーザーの正常な初期化が表示されます。

QuartzJobListener says: Job ActiveImport Is about to be executed.Wed Feb 18 03:36:00 PST 2009
createChangeRecord:ChangeRecord : ----------
Changetype: ADDRMODIFY
ChangeKey: cn=myuser2,cn=users,dc=imtest,dc=com
Attributes:
Class: null Name: userprincipalname Type: null ChgType: DELETE Value: [ ]
Class: null Name: givenname Type: null ChgType: DELETE Value: [ ]
Class: null Name: employeeid Type: null ChgType: DELETE Value: [ ]
Class: null Name: physicaldeliveryofficename Type: null ChgType: DELETE Value: [ ]
Class: null Name: title Type: null ChgType: DELETE Value: [ ]
Class: null Name: mobile Type: null ChgType: DELETE Value: [ ]
Class: null Name: telephonenumber Type: null ChgType: DELETE Value: [ ]
Class: null Name: facsimiletelephonenumber Type: null ChgType: DELETE Value: [ ]
Class: null Name: l Type: null ChgType: DELETE Value: [ ]
Class: null Name: thumbnailphoto Type: null ChgType: DELETE Value: [ ]
Class: null Name: samaccountname Type: nonbinary ChgType: REPLACE Value: [MyUser2]
Class: null Name: objectsid Type: nonbinary ChgType: REPLACE Value: [[B@1b994c4]
Class: null Name: objectguid Type: nonbinary ChgType: REPLACE Value: [[B@1b990b5]
Class: null Name: distinguishedname Type: nonbinary ChgType: REPLACE Value:
[CN=MyUser2,CN=Users,DC=imtest,DC=com]
Class: null Name: cn Type: nonbinary ChgType: REPLACE Value: [MyUser2]
Class: null Name: objectclass Type: nonbinary ChgType: REPLACE Value: [top, person,
organizationalPerson, user]
-----------
copying : changeRecord to dstchange for writing
In DIPSYNC: doOneIteration():execMapping status0
QuartzJobListener says: Job ActiveImport was executed.Wed Feb 18 03:36:00 PST 2009

E.4 Microsoft Active Directoryとの統合に関するトラブルシューティング

この項では、Microsoft Active Directoryとの統合に関する問題をトラブルシューティングする方法について説明します。内容は次のとおりです。

- Windowsネイティブ認証のデバッグ

- Oracleバックエンド・ディレクトリの使用不可期間後の変更の同期

E.4.1 Windowsネイティブ認証のデバッグ

Windowsネイティブ認証の構成後(「Windowsネイティブ認証の構成」を参照)、実行時にこの機能のロギングを有効にできます。opmn.xmlファイル($ORACLE_HOME/opmn/confにある)を開き、次のパラメータを追加します。

-Djazn.debug.log.enable = {true | false}

パラメータにtrueの値を指定するとデバッグが有効になり、falseの値を指定すると無効になります。

次の例の太字は、opmn.xmlファイルでパラメータを置く位置を示しています。

<process-type id="OC4J_SECURITY" module-id="OC4J">
<environment>
<variable id="DISPLAY" value="sun1.us.oracle.com:0.0"/>
<variable id="LD_LIBRARY_PATH" value="/private/ora1012/OraHome1/lib"/>
</environment>
<module-data>
<category id="start-parameters">
<data id="java-options" value="-server -Djazn.debug.log.enable=true
-Djava.security.policy=/private/ora1012/OraHome1/j2ee/OC4J_SECURITY/
config/java2.policy -Djava.awt.headless=true -Xmx512m
-Djava.awt.headless=true"/>
<data id="oc4j-options" value="-properties"/>
</category>
<category id="stop-parameters">
<data id="java-options" value="-Djava.security.policy=/private/ora1012/
OraHome1/j2ee/OC4J_SECURITY/config/java2.policy  -Djava.awt.headless=true"/>
</category>

ログは、$ORACLE_HOME/opmn/logsにあるOC4J~OC4J_SECURITY~default_island~1ファイルに書き込まれます。

注意:
保護されたアプリケーションにWindowsネイティブ認証でアクセスすると、Webブラウザは、Oracle Enterprise Managerによって記録される「401 - Unauthorized」エラーを自動的に返します。これは通常の動作で、無視してもかまいません。

関連項目:

- Note: 283268.1: 「Troubleshooting Oracle Application Server Single Sign-On Windows Native Authentication」(My Oracle Support(旧MetaLink: http://metalink.oracle.com/)で参照可能)

- Windowsネイティブ認証のエラーの詳細は、Oracle Enterprise Single Sign-On Suite Plus管理者ガイドのトラブルシューティングに関する章の、Windowsネイティブ認証エラーの問題と解決策に関する説明を参照してください。

E.4.2 Oracleバックエンド・ディレクトリの使用不可期間後の変更の同期

Oracleバックエンド・ディレクトリが利用できない場合、変更はMicrosoft Active Directoryに格納されます。Oracleバックエンド・ディレクトリでの接続のリストア後、Oracle Password Filter for Microsoft Active Directoryはこれらのエントリを同期化しようとします。SearchDeltaSizeパラメータによって、同期サイクルの各反復中に処理される増分変更の数が決定されます。デフォルトでは、SearchDeltaSizeパラメータには500という値が割り当てられます。Oracleバックエンド・ディレクトリが利用できない期間によっては、SearchDeltaSizeの500というデフォルト値は、同期化されていないすべての変更に遡及するには小さすぎる場合があります。この問題を解決するには、Microsoft Active Directoryの既存のインポート同期プロファイルをコピーし、SearchDeltaSizeパラメータに割り当てられる値を変更することによって、遡及プロファイルを作成する必要があります。

遡及同期プロファイルを作成するには、次のようにします。

1. Oracle Directory Integration Platformを停止します。

2. manageSyncProfilesコマンドのdeactivate操作を使用して、Microsoft Active Directoryのインポート同期プロファイルを非アクティブ化します。

3. manageSyncProfiles copyコマンドを使用してインポート同期プロファイルをコピーし、遡及同期プロファイルを作成します。次に例を示します。

manageSyncProfiles copy -h myhost.mycompany.com -p 7005 -D weblogic
-pf existing_import_sync_profile -newpf name_of_new_catchup_sync_profile

4. manageSyncProfilesコマンドのactivate操作を使用して、元のMicrosoft Active Directoryのインポート同期プロファイルをアクティブ化します。

5. Oracle Directory Integration Platformを起動します。

6. 新しいドメイン・コントローラのルートDSEで、現行の最大のUSNChanged値(ルートDSEのhighestCommittedUSN属性の属性値)を検索することにより、highestCommittedUSNの現行値を取得します。

ldapsearch -h host -p port -b "" -s base -D binddn -q \
DN "objectclass=*" highestCommittedUSN

注意:
パスワードを要求されます。

7. 100を超えるエントリ(ただし200未満)を取得するまで、次のldapsearchコマンドを試行します。200を超えるエントリを取得すると、内部バッファのオーバーランを招くことがあります。

ldapsearch -v -h adhost -p adport -D administrator@domain -q \
-b cn=users,dc=acme,dc=com -s sub \
"(&(objectclass=*)(usnChanged>=delta)(&(usnChanged<=highestCommittedUSN)))" dn

注意:
パスワードを要求されます。

たとえば、次のコマンドにより、デフォルトの検索デルタ・サイズ500を使用して検索を実行します。

ldapsearch -v -h adhost -p adport -D administrator@domain -q \
-b cn=users,dc=acme,dc=com -s sub  \
"(&(objectclass=*)(usnChanged>=55010)(&(usnChanged<=55510)))" dn

注意:
パスワードを要求されます。

8. 次の内容を指定したprofile_config.txtというテキスト・ファイルを作成します。

[INTERFACEDETAILS]
Package: gsi
Reader: ActiveChgReader
SkipErrorToSyncNextChange: true
SearchDeltaSize: 100000

注意:
また、同期中に変更を処理するときにOracle Directory Integration Platformでエラーを処理する方法を決定するために、SkipErrorToSyncNextChangeパラメータを設定することもできます。同期プロファイルのSkipErrorToSyncNextChangeパラメータの詳細は、「拡張」の項を参照してください。

9. manageSyncProfilesコマンドのupdate操作を使用して、profile_config.txtファイルを遡及同期プロファイルにロードします。

10. manageSyncProfilesコマンドのactivate操作を使用して、遡及同期プロファイルをアクティブ化します。

注意:
元のMicrosoft Active Directoryのインポート同期プロファイルが遡及同期プロファイルとともに実行され続けていることを確認してください。

11. 遡及同期プロファイルを12時間以上実行します。バックログされた変更がすべて同期化された後、manageSyncProfilesコマンドのdeactivate操作を使用して遡及同期プロファイルを非アクティブ化します。

E.5 追加情報

My Oracle Support(旧MetaLink(http://metalink.oracle.com))には、その他の解決策も記載されています。そこでも問題の解決策が見つからない場合は、サービス・リクエストを登録してください。

関連項目:
Oracle Application Serverのリリース・ノート: Oracle Technology Network(http://www.oracle.com/technology/documentation/index.html)で入手可能です。

用語集

アクセス制御情報項目

どのディレクトリ・データに対して、誰が、どのタイプのアクセス権限を持っているかを判断する属性。この属性には、エントリに関係する構造型アクセス項目と、属性に関係するコンテンツ・アクセス項目に関する一連の規則が含まれています。両方のアクセス項目に対するアクセス権限を、1つ以上のユーザーまたはグループに付与できます。

アクセス制御リスト

管理者が定義するアクセス・ディレクティブのグループ。ディレクティブは、特定のクライアント、クライアント・グループまたはその両方に対して特定のデータへのアクセスのレベルを付与します。

アクセス制御ポリシー・ポイント

セキュリティ・ディレクティブを含むエントリ。このディレクティブは、ディレクトリ情報ツリー(DIT)内のすべての下位エントリに適用されます。

ACI

「アクセス制御情報項目(ACI)」を参照してください。

ACL

「アクセス制御リスト(ACL)」を参照してください。

ACP

「アクセス制御ポリシー・ポイント」を参照してください。

管理領域

ディレクトリ・サーバー上の1つのサブツリー。そのエントリは、1つの管理認可レベル(スキーマ、ACLおよび共通属性)で制御されます。

アドバンスト対称レプリケーション(ASR)

「Oracle Databaseアドバンスト・レプリケーション」を参照してください。

エージェント

エージェントは、Oracle Directory Integration Platformがサポートする書式の1つから、接続ディレクトリがサポートする書式に、データを変換します。

匿名認証

ディレクトリがユーザー名とパスワードの組合せを要求せずにユーザーを認証するプロセス。各匿名ユーザーは、匿名ユーザー用に指定された権限を行使します。

API

「Application Program Interface(API)」を参照してください。

Application Program Interface(API)

指定したアプリケーションのサービスにアクセスするための一連のプログラム。たとえば、LDAP対応のクライアントは、LDAP APIで使用可能なプログラム・コールを通して、ディレクトリ情報にアクセスします。

ASR

「Oracle Databaseアドバンスト・レプリケーション」を参照してください。

属性

エントリの性質を説明する情報項目。1つのエントリは1組の属性から構成され、それぞれがオブジェクト・クラスに所属します。さらに、各属性にはタイプと値があり、タイプは属性の情報の種類を説明するもので、値には実際のデータが格納されています。

属性構成ファイル

Oracle Directory Integration Platform環境で、接続ディレクトリの属性を指定するファイル。

属性のタイプ

属性に含まれている情報の種類(例: jobTitle)。

属性一意性

指定した属性に同じ値が含まれていないようにするOracle Internet Directoryの機能。企業ディレクトリと同期しているアプリケーションで、属性を一意キーとして使用することを可能にします。

属性値

エントリで出現する情報の特定の値。たとえば、jobTitle属性に対する値にはmanagerがあります。

認証

コンピュータ・システム内のユーザー、デバイスまたはその他のエンティティのアイデンティティを検証するプロセス。多くの場合、システム内のリソースへのアクセスを許可する前提条件として使用されます。

認可

オブジェクトまたはオブジェクトのセットへのアクセスのためにユーザー、プログラムまたはプロセスに与えられる許可。

バックエンド・ディレクトリ

Oracleコンポーネントとサード・パーティ・アプリケーションがユーザー・アイデンティティおよび資格証明を格納してアクセスするリポジトリ。Oracle Directory Integration Platform環境では、Oracle Internet Directory、Oracle Unified DirectoryまたはOracle Directory Server Enterprise EditionをOracleバックエンド・ディレクトリとして使用できます。

バインド

ディレクトリに対して認証を行うプロセス。

ブートストラップ

接続ディレクトリとOracleバックエンド・ディレクトリ間での初期のデータ移行。初めてOracle Directory Integration Platformをデプロイするとき、大量のディレクトリ・データを移動する必要がある場合には、ディレクトリのブートストラップを実行すると時間を節約できます。

中央ディレクトリ

Oracle Directory Integration Platform環境で、中央リポジトリとして機能するディレクトリ。

証明書

公開鍵に対してアイデンティティを安全にバインドするITU x.509 v3の標準データ構造。証明書は、エンティティの公開鍵が、信頼できる機関(認証局(CA))によって署名されたときに作成されます。この証明書は、そのエンティティの情報が正しいこと、および公開鍵がそのエンティティに実際に属していることを保証します。

認証局

他のエンティティ(ユーザー、データベース、管理者、クライアント、サーバーなど)が本物であることを証明する、信頼できるサード・パーティ。認証局は、ユーザーのアイデンティティを検証し、認証局の秘密鍵を使用して署名した証明書を発行します。

証明連鎖

エンド・ユーザーまたはサブスクライバの証明書とその認証局の証明書を含む、順序付けられた証明書のリスト。

変更ログ

ディレクトリ・サーバーに加えられた変更を記録するデータベース。

暗号スイート

SSLにおいて、ネットワークのノード間でメッセージ交換に使用される認証、暗号化およびデータ整合性アルゴリズムのセット。SSLハンドシェイク時に、2つのノード間で折衝し、メッセージを送受信するときに使用する暗号スイートを確認します。

クラスタ

単一のコンピューティング・リソースとして使用される、相互接続されたコンピュータの集合。ハードウェア・クラスタによって、高可用性およびスケーラビリティが実現します。

コールド・バックアップ

データベース・コピー・プロシージャを使用して、新規DSAノードを既存のレプリケート・システムに追加する手順。

同時実行性

複数のリクエストを同時に処理できる機能。同時実行性メカニズムの例には、スレッドおよびプロセスなどがあります。

同時クライアント数

Oracleバックエンド・ディレクトリとのセッションを確立しているクライアントの総数。

同時操作数

すべての同時クライアントの要求に基づいてディレクトリで実行されている操作の数。一部のクライアントではセッションがアイドル状態の可能性があるため、この数は同時クライアントの数と必ずしも同じではありません。

接続ディスクリプタ

特別に書式が設定された、ネットワーク接続の接続先の説明。接続ディスクリプタには、宛先サービスとネットワーク・ルート情報が含まれます。

宛先サービスを示すには、そのOracle Databaseに対応するサービス名、あるいはOracleリリース8.0またはバージョン7のデータベースに対応するOracleシステム識別子(SID)を使用します。ネットワーク・ルートは、少なくとも、ネットワーク・アドレスによってリスナーの場所を提供します。

接続ディレクトリ

Oracle Directory Integration Platform環境で、それ自体(たとえば、Oracle Human Resourceデータベース)とOracleバックエンド・ディレクトリとの間で完全なデータの同期が必要な情報リポジトリ。

コネクタ

Oracle Directory Integration PlatformがOracleバックエンド・ディレクトリと接続ディレクトリの間の同期のために使用する接続ソリューション。コネクタは最小でも、同期に必要な全設定情報を含む1つのディレクトリ統合プロファイルで構成されます。

コンシューマ

レプリケーション更新の宛先となるディレクトリ・サーバー。スレーブと呼ばれることもあります。

競合

リソースの競合。

コンテキスト接頭辞

ネーミング・コンテキストのルートのDN。

暗号化

データのエンコードとデコードを行い、保護メッセージを生成する作業。

データ暗号化規格(DES)

1970年代にIBM社と米国政府によって公式規格として開発されたブロック暗号。

データ整合性

受信メッセージの内容が、元の送信メッセージの内容から変更されていないことの保証。

復号化

暗号化されたメッセージ(暗号文)の内容を、元の可読書式(平文)に変換する処理。

デフォルト・ナレッジ参照

ベース・オブジェクトがディレクトリになく、操作がサーバーによってローカルに保持されていないネーミング・コンテキストで実行されたときに返されるナレッジ参照。デフォルト・ナレッジ参照は、一般的にディレクトリ・パーティション化対策についてより多くのナレッジを持つサーバーにユーザーを送信します。

デフォルト・アイデンティティ管理レルム

ホスティングされた環境では、アプリケーション・サービス・プロバイダなどの1つの企業が、複数の企業でOracleコンポーネントを使用できるようにし、それらの企業の情報を格納します。このようなホスティングされた環境では、ホスティングしている企業はデフォルト・アイデンティティ管理レルムと呼ばれ、ホスティングされている企業はそれぞれディレクトリ情報ツリー内のその企業独自のアイデンティティ管理レルムに関連付けられます。

デフォルト・レルムの場所

デフォルト・アイデンティティ管理レルムのルートを識別するルートOracleコンテキストでの属性。

委任管理者

ホスティングされた環境では、アプリケーション・サービス・プロバイダなどの1企業が、他の複数の企業にOracleコンポーネントを使用可能にして、それらの企業の情報を格納します。この種の環境では、グローバル管理者はディレクトリ全体にまたがるアクティビティを実行します。委任管理者と呼ばれる他の管理者は、特定のアイデンティティ管理レルムで、または特定のアプリケーションに対してロールを実行できます。

DES

「データ暗号化規格(DES)」を参照してください。

DIB

「ディレクトリ情報ベース(DIB)」を参照してください。

ディレクトリ情報ベース(DIB)

ディレクトリに保持されているすべての情報の完全なセット。DIBは、ディレクトリ情報ツリー(DIT)内で、階層的に相互に関連するエントリで構成されています。

ディレクトリ情報ツリー

エントリの識別名で構成されるツリー形式の階層構造。

ディレクトリ統合プロファイル

Oracle Directory Integration Platform環境での、Oracle Directory Integration Platformによる外部システムとの通信方法および通信内容を示すOracleバックエンド・ディレクトリのエントリ。

Directory Integration Server

Oracle Directory Integration Platform環境で、Oracleバックエンド・ディレクトリと接続ディレクトリとの間でデータの同期化を実行するサーバー。

ディレクトリ・ネーミング・コンテキスト

「ネーミング・コンテキスト」を参照してください。

ディレクトリ・プロビジョニング・プロファイル

Oracle Directory Integration Platformがディレクトリ対応アプリケーションに送信するプロビジョニング関連通知の性質を記述した特殊なディレクトリ統合プロファイル。

ディレクトリ・レプリケーション・グループ(DRG)

レプリケーション承諾のメンバーであるディレクトリ・サーバーの集合。

ディレクトリ・サーバー・インスタンス

ディレクトリ・サーバーの個々の起動。異なるディレクトリ・サーバーの起動(それぞれ、同じまたは異なる構成設定エントリと起動フラグで起動)は、異なるディレクトリ・サーバー・インスタンスと呼ばれます。

ディレクトリ固有のエントリ(DSE)

ディレクトリ・サーバー固有のエントリ。異なるディレクトリ・サーバーに同じディレクトリ情報ツリー名を保持できますが、内容は異なる必要があります - つまり、それを保持しているディレクトリに固有の内容を保持できます。DSEは、それを保持しているディレクトリ・サーバーに固有の内容を含むエントリです。

ディレクトリ同期プロファイル

Oracleバックエンド・ディレクトリと外部システム間の同期の実行方法を記述した特殊なディレクトリ統合プロファイル。

ディレクトリ・システム・エージェント(DSA)

ディレクトリ・サーバーを表すX.500の用語。

識別名(DN)

ディレクトリ・エントリの一意の名前。親エントリの個々の名前がすべて、下からルート方向へ順に結合されて構成されています。

DIS

「Directory Integration Server」を参照してください。

DIT

「ディレクトリ情報ツリー(DIT)」を参照してください。

DN

「識別名(DN)」を参照してください。

DRG

「ディレクトリ・レプリケーション・グループ(DRG)」を参照してください。

DSA

「ディレクトリ・システム・エージェント(DSA)」を参照してください。

DSE

「ディレクトリ固有のエントリ(DSE)」を参照してください。

DSA固有のエントリ。異なるDSAに同じディレクトリ情報ツリー名を保持できますが、内容は異なる必要があります。つまり、それを保持しているDSAに固有の内容を保持できます。DSEは、それを保持しているDSAに固有の内容を含むエントリです。

暗号化

メッセージの内容を、宛先の受信者以外の第三者が読むことのできない形式(暗号文)に変換する処理。

エントリ

ディレクトリの基本単位で、ディレクトリ・ユーザーに関係のあるオブジェクトに関する情報が含まれています。

エクスポート・エージェント

Oracle Directory Integration Platform環境において、Oracleバックエンド・ディレクトリからデータをエクスポートするエージェント。

エクスポート・データ・ファイル

Oracle Directory Integration Platform環境で、エクスポート・エージェントによってエクスポートされたデータを格納するファイル。

エクスポート・ファイル

「エクスポート・データ・ファイル」を参照してください。

外部エージェント

Oracle Directory Integration Platformに依存しないディレクトリ統合エージェント。Oracle Directory Integration Platformは外部エージェントに対して、スケジューリング、マッピングまたはエラー処理の各サービスを提供しません。外部エージェントは、通常、サード・パーティのメタディレクトリ・ソリューションをOracle Directory Integration Platformに統合するときに使用します。

フェイルオーバー

障害を認識し、リカバリする処理。Oracle Application Server Cold Failover Cluster(インフラストラクチャ)では、1つのクラスタ・ノードで稼働しているアプリケーションは透過的に別のクラスタ・ノードに移行されます。この移行時に、クラスタ上のサービスにアクセスするクライアントは一時的に接続できず、フェイルオーバーが完了した後、再接続する必要がある場合があります。

ファンアウト・レプリケーション

point-to-pointレプリケーションとも呼ばれる。サプライヤがコンシューマに直接レプリケートするレプリケーションのタイプです。コンシューマは1つ以上の他のコンシューマにレプリケートできます。レプリケーションには、完全レプリケーションと部分レプリケーションがあります。

フィルタ

データ(通常、検索対象のデータ)を限定する方法。フィルタは、cn=susie smith,o=acme,c=usのように常に識別名で表されます。

グローバル管理者

ホスティングされた環境では、アプリケーション・サービス・プロバイダなどの1企業が、他の複数の企業にOracleコンポーネントを使用可能にして、それらの企業の情報を格納します。この種の環境では、グローバル管理者はディレクトリ全体にまたがるアクティビティを実行します。

Global Unique Identifier(GUID)

エントリがディレクトリに追加されると、システムで生成され、エントリに挿入される識別子。マルチマスター・レプリケート環境で、DNではなくGUIDがエントリを一意に識別します。エントリのGUIDをユーザーが変更することはできません。

猶予期間ログイン

パスワード期限切れ前の指定された期間内に行われるログイン。

グループ検索ベース

Oracleバックエンド・ディレクトリのデフォルトDITにおいて、すべてのグループを検索できるアイデンティティ管理レルム内のノード。

ゲスト・ユーザー

匿名ユーザーではなく、特定のユーザー・エントリも持っていないユーザー。

GUID

「Global Unique Identifier(GUID)」を参照してください。

ハンドシェイク

2台のコンピュータが通信セッションを開始するために使用するプロトコル。

ハッシュ

アルゴリズムを使用してテキスト文字列から生成される数値。ハッシュ値は、テキスト文字列より大幅に短くなります。ハッシュの数値は、セキュリティの目的とデータに対する高速アクセスの目的で使用します。

アイデンティティ管理

組織でネットワーク・エンティティのセキュリティ・ライフ・サイクル全体を管理するプロセス。通常、組織のアプリケーション・ユーザーの管理を指します。セキュリティ・ライフ・サイクルの手順には、アカウント作成、一時停止、権限変更およびアカウント削除が含まれます。管理されるネットワーク・エンティティには、デバイス、プロセス、アプリケーション、またはネットワーク環境で対話する必要があるその他のすべてのものが含まれます。アイデンティティ管理プロセスで管理されるエンティティには、組織外のユーザー(顧客、取引先、Webサービスなど)も含まれます。

アイデンティティ管理レルム

すべてが同じ管理ポリシーによって管理されているアイデンティティの集合。企業では、イントラネットへのアクセス権限を所有しているすべての従業員は1つのレルムに属し、企業の公開アプリケーションにアクセスするすべての外部ユーザーは別のレルムに属します。アイデンティティ管理レルムは、特別なオブジェクト・クラスが関連付けられた特定のエントリでディレクトリ内に表されます。

アイデンティティ管理レルム固有のOracleコンテキスト

各アイデンティティ管理レルムに含まれたOracleコンテキスト。次の情報が格納されます。

- アイデンティティ管理レルムのユーザー・ネーミング・ポリシー(ユーザーに名前を付け、配置する方法)

- 必須認証属性

- アイデンティティ管理レルム内のグループの場所

- アイデンティティ管理レルムに対する権限の割当て(レルムにユーザーを追加する権限の割当てなど)

- レルムに関するアプリケーション固有のデータ(認可など)

インポート・エージェント

Oracle Directory Integration Platform環境において、Oracleバックエンド・ディレクトリにデータをインポートするエージェント。

インポート・データ・ファイル

Oracle Directory Integration Platform環境で、インポート・エージェントによってインポートされたデータを格納するファイル。

継承

オブジェクト・クラスが別のクラスから導出されたときに、導出元のオブジェクト・クラスの多数の特性も導出(継承)されること。同様に、属性のサブタイプも、そのスーパータイプの特性を継承します。

インスタンス

「ディレクトリ・サーバー・インスタンス」を参照してください。

整合性

受信メッセージの内容が、元の送信メッセージの内容から変更されていないことの保証。

Internet Engineering Task Force(IETF)

新しいインターネット標準仕様の開発に従事する主要機関。インターネット・アーキテクチャおよびインターネットの円滑な操作の発展に関わるネットワーク設計者、運営者、ベンダーおよび研究者による国際的な団体です。

Internet Message Access Protocol(IMAP)

プロトコルの一種。クライアントは、このプロトコルを使用して、サーバー上の電子メール・メッセージに対するアクセスおよび操作を行います。リモートのメッセージ・フォルダ(メールボックスとも呼ばれる)を、ローカルのメールボックスと機能的に同じ方法で操作できます。

鍵

暗号化において広く使用されているビット列。データの暗号化と復号化を可能にします。鍵は別の数学的な操作にも使用されます。暗号が与えられると、鍵によって、平文から暗号文へのマッピングが判断されます。

鍵のペア

公開鍵とそれに対応する秘密鍵。

「公開鍵と秘密鍵のペア」を参照してください。

ナレッジ参照

リモートDSAに関するアクセス情報(名前とアドレス)およびそのリモートDSAが保持しているDITのサブツリーの名前。ナレッジ参照は、参照とも呼ばれます。

待機時間

指定したディレクトリ操作が完了するまでのクライアントの待機時間。待機時間は、空費時間として定義される場合があります。ネットワーク通信では、待機時間は、ソースから宛先へパケットが移動する時間として定義されます。

LDAP

「Lightweight Directory Access Protocol(LDAP)」を参照してください。

LDIF

「LDAP Data Interchange Format(LDIF)」を参照してください。

Lightweight Directory Access Protocol(LDAP)

標準の拡張可能ディレクトリ・アクセス・プロトコル。LDAPクライアントおよびサーバーが通信に使用する共通言語です。Oracle Internet Directoryなど、業界標準のディレクトリ製品をサポートする設計規則のフレームワーク。

LDAP Data Interchange Format(LDIF)

LDAPコマンドライン・ユーティリティに使用する入力ファイルの形式を設定するための一連の規格。

論理ホスト

Oracle Application Serverのコールド・フェイルオーバー・クラスタ(インフラストラクチャ)における、1つ以上のディスク・グループおよびホスト名とIPアドレスのペア。論理ホストは、クラスタ内の物理ホストにマップされます。この物理ホストは、論理ホストのホスト名とIPアドレスを使用します。

介在者

第三者によるメッセージの不正傍受などのセキュリティ攻撃。第三者、つまり介在者は、メッセージを復号化して再暗号化し(元のメッセージを変更する場合と変更しない場合があります)、元のメッセージの宛先である受信者に転送します。これらの処理はすべて、正当な送受信者が気付かないうちに行われます。この種のセキュリティ攻撃は、認証が行われていない場合にのみ発生します。

マッピング・ルール・ファイル

Oracle Directory Integration Platform環境で、Oracleバックエンド・ディレクトリの属性と接続ディレクトリの属性との間のマッピングを指定するファイル。

マスター定義サイト

レプリケーションにおいて、管理者が構成スクリプトを実行するOracle Internet Directoryのデータベース。

マスター・サイト

レプリケーションにおいて、マスター定義サイト以外のサイトで、LDAPレプリケーションのメンバーであるサイト。

一致規則

検索または比較操作における、検索対象の属性値と格納されている属性値との間の等価性の判断。たとえば、telephoneNumber属性に関連付けられた一致規則では、(650) 123-4567を(650) 123-4567または6501234567のいずれか、あるいはその両方と一致させることができます。属性の作成時に、その属性を一致規則と対応付けることができます。

MD4

128ビットのハッシュまたはメッセージ・ダイジェスト値を生成する一方向ハッシュ関数。1ビットでもファイルの値が変更された場合、そのファイルのMD4チェックサムは変更されます。元のファイルと同じ結果をMD4で生成するようにファイルを偽造することはほぼ不可能です。

MD5

MD4の改善されたバージョン。

MDS

「マスター定義サイト(MDS)」を参照してください。

メタディレクトリ

企業のすべてのディレクトリ間で情報を共有するディレクトリ・ソリューション。すべてのディレクトリを1つの仮想ディレクトリに統合します。集中的に管理できるため、管理コストを削減できます。ディレクトリ間でデータが同期化されるため、企業内のデータに一貫性があり最新であることが保証されます。

MTS

「共有サーバー」を参照してください。

マルチマスター・レプリケーション

peer-to-peer またはn-wayレプリケーションとも呼ばれます。同等に機能する複数のサイトが、レプリケートされたデータのグループを管理できるようにするレプリケーションのタイプ。マルチマスター・レプリケーション環境では、各ノードはサプライヤ・ノードであると同時にコンシューマ・ノードであり、各ノードでディレクトリ全体がレプリケートされます。

ネーミング属性

Oracle Delegated Administration ServicesまたはOracle Internet Directory Java APIを使用して作成した新規ユーザー・エントリの相対識別名を構成するために使用する属性。この属性のデフォルト値はcnです。

ネーミング・コンテキスト

完全に1つのサーバーに常駐しているサブツリー。サブツリーは連続している必要があります。つまり、サブツリーの最上位の役割を果たすエントリから始まり、下位方向にリーフ・エントリまたは従属ネーミング・コンテキストへのナレッジ参照(参照とも呼ばれる)のいずれかまでを範囲とする必要があります。単一のエントリからディレクトリ情報ツリー全体までを範囲にできます。

システム固有のエージェント

Oracle Directory Integration Platform環境において、ディレクトリ統合サーバーの制御下で実行されるエージェント。「外部エージェント」と対比。

ネット・サービス名

接続記述子に解決されるサービスの単純名。接続文字列にユーザー名、パスワードの他、接続するサービスのネット・サービス名を指定することによって、接続要求を開始します。

CONNECT username/password@net_service_name

必要に応じて、ネット・サービス名は次のような様々な場所に格納できます。

- 各クライアントのローカル構成ファイル(tnsnames.ora)

- ディレクトリ・サーバー

- Oracle Names Server

- NDS、NIS、CDSなどの外部ネーミング・サービス

ニックネーム属性

ディレクトリ全体のユーザーを一意に識別するために使用する属性。この属性のデフォルト値はuidです。アプリケーションでは、この属性を使用して単純なユーザー名が完全な識別名に変換されます。ユーザー・ニックネーム属性には複数の値を設定できません(つまり、ユーザーは同じ属性名で複数のニックネームを保持することはできません)。

オブジェクト・クラス

名前を持った属性のグループ。属性をエントリに割り当てるときは、その属性を保持しているオブジェクト・クラスをそのエントリに割り当てます。

同じオブジェクト・クラスに関連するオブジェクトはすべて、同じ属性を共有します。

OEM

「Oracle Enterprise Manager Fusion Middleware Control」を参照してください。

OID制御ユーティリティ

サーバーの起動と停止のコマンドを発行するコマンドライン・ツール。コマンドは、OIDモニターのプロセスによって解析され、実行されます。

OIDデータベース・パスワード・ユーティリティ

Oracle Internet DirectoryがOracle Databaseに接続するときのパスワードの変更に使用されるユーティリティ。

OIDモニター

Oracleディレクトリ・サーバー・プロセスの開始、監視および終了を実行するOracle Internet Directoryのコンポーネント。レプリケーション・サーバー(インストールされている場合)およびOracle Directory Integration Platformの制御も行います。

一方向関数

一方向への計算は容易だが、逆の計算(反対方向への計算)は非常に難しい関数。

一方向ハッシュ関数

可変サイズの入力をとり、固定サイズの出力を作成する一方向関数。

Oracle Call Interface(OCI)

Application Program Interface(API)の1つ。これにより、第三世代言語のネイティブ・プロシージャやファンクション・コールを使用して、Oracle Databaseサーバーにアクセスし、SQL文実行のすべての段階を制御するアプリケーションを作成できます。

Oracle Delegated Administration Services

Oracle Delegated Administration Servicesユニットと呼ばれる個々の事前定義済サービスのセットで、ユーザーのかわりにディレクトリ操作を実行します。Oracle Internet Directoryセルフ・サービス・コンソールによって、Oracle Internet Directoryを使用するOracleアプリケーションおよびサード・パーティ・アプリケーションの両方の管理ソリューションを容易に開発およびデプロイできます。

Oracle Directory Integration Platform

Oracle Internet Directoryのコンポーネントの1つです。Oracle Internet Directoryのような中央LDAPディレクトリの周囲のアプリケーションを統合するために開発されたフレームワーク。

Oracle Enterprise Manager Fusion Middleware Control

Oracle製品の1つ。グラフィカルなコンソール、エージェント、標準的なサービスおよびツールを組合せ、Oracle製品を管理するための統合された包括的なシステム管理プラットフォームを提供します。

Oracle Identity Management

すべての企業アイデンティティおよび企業内の様々なアプリケーションへのアクセスを集中的かつ安全に管理するためのデプロイを可能にするインフラストラクチャ。

Oracle Internet Directory

分散ユーザーやネットワーク・リソースに関する情報の検索を可能にする、一般的な用途のディレクトリ・サービス。これは、Lightweight Directory Access Protocol(LDAP)バージョン3とOracle Databaseの高度なパフォーマンス、スケーラビリティ、堅牢性、可用性を組み合せています。

Oracle Net Services

Oracleのネットワーク製品ファミリの基礎。Oracle Net Servicesを使用すると、サービスやアプリケーションを異なるコンピュータに配置して通信できます。Oracle Net Servicesの主な機能には、ネットワーク・セッションの確立およびクライアント・アプリケーションとサーバー間のデータ転送があります。Oracle Net Servicesは、ネットワーク上の各コンピュータに配置されます。ネットワーク・セッションの確立後、Oracle Net Servicesはクライアントとサーバーのためのデータ伝達手段として機能します。

Oracle PKI証明書使用条件

証明書でサポートされるOracleアプリケーション・タイプを定義します。

Oracle Wallet Manager

セキュリティ管理者が、クライアントとサーバー上での公開鍵セキュリティ資格証明の管理に使用するJavaベースのアプリケーション。

Oracle Databaseアドバンスト・レプリケーション

2つのOracle Database間で、データベースの表を継続的に同期化できるOracle Databaseの機能。

その他の情報リポジトリ

Oracle Internet Directory以外のすべての情報リポジトリ。Oracle Directory Integration Platform環境では、Oracle Internet Directoryが中央ディレクトリとして機能します。

パーティション

一意の重複していないディレクトリ・ネーミング・コンテキスト。1つのディレクトリ・サーバーに格納されています。

peer-to-peerレプリケーション

マルチマスター・レプリケーションまたはn-wayレプリケーションとも呼ばれます。同等に機能する複数サイトがレプリケートされたデータのグループを管理できるようにするレプリケーションのタイプです。このようなレプリケーション環境では、各ノードはサプライヤ・ノードであると同時にコンシューマ・ノードであり、各ノードでディレクトリ全体がレプリケートされます。

PKCS #12

公開鍵暗号規格(PKCS)。RSA Data Security, Inc.のPKCS #12は、個人的な認証資格証明を、通常ウォレットと呼ばれる形式で保管および転送するための業界標準です。

平文

暗号化されていないメッセージ・テキスト。

point-to-pointレプリケーション

ファンアウト・レプリケーション(fan-out replication)とも呼ばれます。サプライヤがコンシューマに直接レプリケートするレプリケーションのタイプです。コンシューマは1つ以上の他のコンシューマにレプリケートできます。レプリケーションには、完全レプリケーションと部分レプリケーションがあります。

プライマリ・ノード

Oracle Application Server Cold Failover Cluster(インフラストラクチャ)で、指定した時刻にアプリケーションが実行されるクラスタ・ノード。

秘密鍵

公開鍵暗号化では、この鍵が秘密鍵(secret key)です。主に復号化に使用され、デジタル署名の場合、暗号化にも使用されます。

プロビジョニング・エージェント

Oracle固有のプロビジョニング・イベントを外部またはサード・パーティのアプリケーション固有のイベントに変換するアプリケーションまたはプロセス。

プロビジョニング・アプリケーション

ユーザーおよびグループの情報がOracle Internet Directoryに一元化される環境にあるアプリケーション。これらのアプリケーションは、一般的にOracle Internet Directory内のその情報に対する変更に関係があります。

プロファイル

「ディレクトリ統合プロファイル」を参照してください。

プロキシ・ユーザー

通常、ファイアウォールなどの中間層を備えた環境で利用されるユーザー。このような環境では、エンド・ユーザーは中間層を認証します。この結果、中間層はエンド・ユーザーにかわってディレクトリにログインします。プロキシ・ユーザーにはアイデンティティを切り替える権限があり、一度ディレクトリにログインすると、エンド・ユーザーのアイデンティティに切り替えます。次に、その特定のエンド・ユーザーに付与されている認可を使用して、エンド・ユーザーのかわりに操作を実行します。

公開鍵

公開鍵暗号において一般に公開される鍵。主に暗号化に使用されますが、署名の検証にも使用されます。

公開鍵暗号

公開鍵と秘密鍵を使用する方法に基づいた暗号化。

公開鍵暗号

メッセージの送信側が、受信側の公開鍵でメッセージを暗号化するプロセス。配信されたメッセージは、受信側の秘密鍵で復号化されます。

公開鍵と秘密鍵のペア

数学的に関連付けられた2つの数字のセット。1つは秘密鍵、もう1つは公開鍵と呼ばれます公開鍵は通常広く使用可能であるのに対して、秘密鍵はその所有者のみ使用可能です。公開鍵で暗号化されたデータは、それに関連付けられた秘密鍵でのみ復号化でき、秘密鍵で暗号化されたデータは、それに関連付けられた公開鍵でのみ復号化できます。公開鍵で暗号化されたデータを、同じ公開鍵で復号化することはできません。

レルム検索ベース

すべてのアイデンティティ管理レルムを含むディレクトリ情報ツリー内のエントリを識別するルートOracleコンテキストでの属性。この属性は、単純なレルム名をディレクトリ内の対応するエントリにマッピングする際に使用されます。

参照

ディレクトリ・サーバーがクライアントに提供する情報。リクエストする情報を見つけるためにクライアントが接続する必要がある他のサーバーを示します。

「ナレッジ参照」も参照。

リレーショナル・データベース

構造化されたデータの集合。同一の列のセットを持つ1つ以上の行で構成される表にデータが格納されます。Oracleでは、複数の表のデータを容易にリンクできます。このため、Oracleはリレーショナル・データベース管理システム、つまりRDBMSと呼ばれます。データを複数の表に格納し、さらに表間の関係を定義できます。このリンクは両方の表に共通する1つ以上のフィールドに基づいて行われます。

レプリカ

ネーミング・コンテキストの個々のコピー。1つのサーバー内に格納されています。

RDN

「相対識別名(RDN)」を参照してください。

レジストリ・エントリ

Oracleディレクトリ・サーバーの起動(ディレクトリ・サーバー・インスタンスと呼ばれる)に関連するランタイム情報が含まれているエントリ。レジストリ・エントリはディレクトリ自体に格納され、対応するディレクトリ・サーバー・インスタンスが停止するまで保持されます。

相対識別名

ローカルの、最も細かいレベルのエントリ名。エントリのアドレスを一意に識別するために使用される他の修飾エントリ名は含まれません。たとえば、cn=Smith,o=acme,c=USでは、cn=Smithが相対識別名です。

リモート・マスター・サイト(RMS)

レプリケート環境におけるマスター定義サイト(MDS)以外のサイトで、Oracle Databaseアドバンスト・レプリケーションのメンバーであるサイト。

レプリケーション承諾

ディレクトリ・レプリケーション・グループ(DRG)内のディレクトリ・サーバー間におけるレプリケーションの関係を記述する特別なディレクトリ・エントリ。

レスポンス時間

リクエストの発行からレスポンスの完了までの時間。

ルートDSE

「ルート・ディレクトリ固有のエントリ」を参照してください。

ルート・ディレクトリ固有のエントリ

ディレクトリに関する操作情報を格納するエントリ。情報は複数の属性に格納されています。

ルートOracleコンテキスト

Oracle Identity Managementインフラストラクチャでは、ルートOracleコンテキストは、インフラストラクチャのデフォルトアイデンティティ管理レルムへのポインタを含むOracle Internet Directoryのエントリです。単純な名前を指定してアイデンティティ管理レルムの位置を特定する方法の詳細も含まれます。

SASL

「Simple Authentication and Security Layer(SASL)」を参照してください。

スケーラビリティ

使用可能なハードウェア・リソースに比例して、そのハードウェア・リソースによってのみ制限されるスループットを提供するシステムの機能。

スキーマ

属性、オブジェクト・クラスおよびそれらに対応する一致規則の集合。

セカンダリ・ノード

Oracle Application Server Cold Failover Cluster(インフラストラクチャ)で、フェイルオーバー時にアプリケーションが移動される先のクラスタ・ノード。

Secure Hash Algorithm(SHA)

長さが264ビット未満のメッセージを取得して、160ビットのメッセージ・ダイジェスト値を生成するアルゴリズム。このアルゴリズムはMD5よりも若干速度が遅くなりますが、大きなメッセージ・ダイジェストによって、総当たり攻撃や反転攻撃に対処できます。

Secure Sockets Layer(SSL)

ネットワーク接続を保護するためにNetscape社が開発した業界標準プロトコル。SSLでは公開鍵インフラストラクチャ(PKI)を使用して、認証、暗号化およびデータ整合性を実現しています。

サービス時間

リクエストの開始から、そのリクエストに対するレスポンスの完了までの時間。

セッション鍵

1つのメッセージまたは1つの通信セッションの継続時間中に使用される、対称鍵暗号方式の鍵。

SGA

「システム・グローバル領域(SGA)」を参照してください。

SHA

「Secure Hash Algorithm(SHA)」を参照してください。

共有サーバー

サポートされるユーザー数を増やすために、多数のユーザー・プロセスがごく少数のサーバー・プロセスを共有できるように構成されたサーバー。共有サーバー構成では、多数のユーザー・プロセスがディスパッチャに接続します。ディスパッチャは、複数の着信ネットワーク・セッション要求を共通キューに送ります。サーバー・プロセスの共有プールの中のアイドル状態の共有サーバー・プロセスは、共通キューから要求を取り出します。つまり、サーバー・プロセスのプールが小さくても、多数のクライアントにサービスを提供できます。専用サーバーと対比される機能です。

兄弟

1つ以上の他のエントリと同じ親を持ったエントリ。

簡易認証

ネットワークでの送信時に暗号化されない識別名とパスワードを使用して、クライアントがサーバーに対して自己認証を行うプロセス。簡易認証オプションでは、クライアントが送信した識別名とパスワードと、ディレクトリに格納されている識別名とパスワードが一致していることをサーバーが検証します。

Simple Authentication and Security Layer(SASL)

接続ベースのプロトコルに認証サポートを追加する方法。この仕様を使用するために、プロトコルには、ユーザーを識別してサーバーに対して認証を行い、オプションで、以降のプロトコル対話に使用するセキュリティ・レイヤーを規定するコマンドが含まれます。このコマンドには、SASL方式を識別する必須引数があります。

単一鍵ペア・ウォレット

単一のユーザー証明書とその関連する秘密鍵が含まれるPKCS #12形式のウォレット。公開鍵は証明書に埋め込まれています。

スレーブ

「コンシューマ」を参照してください。

SLAPD

スタンドアロンのLDAPデーモン。

スマート・ナレッジ参照

ナレッジ参照エントリが検索の有効範囲内にあるときに戻されるナレッジ参照。要求された情報を格納しているサーバーを示します。

特定管理領域

次の3つの側面を制御する管理領域。

- サブスキーマ管理

- アクセス制御管理

- 共通属性管理

特定管理領域では、この3つの管理側面のうち1つが制御されます。特定管理領域は、自律型管理領域の一部です。

スポンサ・ノード

レプリケーションにおいて、新規ノードに初期データを設定するために使用されるノード。

SSL

「Secure Sockets Layer(SSL)」を参照してください。

subACLSubentry

ACL情報が含まれた特定のタイプのサブエントリ。

サブクラス

別のオブジェクト・クラスから導出されたオブジェクト・クラス。導出元のオブジェクト・クラスは、そのスーパークラスと呼ばれます。

サブエントリ

サブツリー内のエントリ・グループに適用可能な情報が含まれているエントリのタイプ。情報には次の3つのタイプがあります。

- アクセス制御ポリシー・ポイント

- スキーマ規則

- 共通属性

サブエントリは、管理領域のルートのすぐ下に位置しています。

下位参照

エントリの直下から始まるネーミング・コンテキストまで、ディレクトリ情報ツリー内で下位方向を指し示すナレッジ参照。

サブスキーマDN

独立したスキーマ定義を持つディレクトリ情報ツリー領域のリスト。

subSchemaSubentry

スキーマ情報が含まれる特定のタイプのサブエントリ。

サブタイプ

オプションを持たない同じ属性に対して、1つ以上のオプションを持つ属性。たとえば、American Englishをオプションとして持つcommonName(cn)属性は、そのオプションを持たないcommonName(cn)属性のサブタイプです。逆に、オプションを持たないcommonName(cn)属性は、オプションを持つ同じ属性のスーパータイプです。

スーパー・ユーザー

一般的には、ディレクトリ情報へのあらゆるアクセスが可能な特別なディレクトリ管理者。

スーパークラス

別のオブジェクト・クラスが導出される元のオブジェクト・クラス。たとえば、オブジェクト・クラスpersonは、オブジェクト・クラスorganizationalPersonのスーパークラスです。後者のorganizationalPersonは、personのサブクラスであり、personに含まれている属性を継承します。

上位参照

ディレクトリ情報ツリー内で、参照側のDSAが保持しているすべてのネーミング・コンテキストより上位のネーミング・コンテキストを保持しているDSAまで、上位方向を指し示すナレッジ参照。

スーパータイプ

1つ以上のオプションを持つ同じ属性に対して、オプションを持たない属性。たとえば、オプションを持たないcommonName(cn)属性は、オプションを持つ同じ属性のスーパータイプです。逆に、American Englishをオプションとして持つcommonName(cn)属性は、そのオプションを持たないcommonName(cn)属性のサブタイプです。

サプライヤ

レプリケーションにおいて、ネーミング・コンテキストのマスター・コピーを保持しているサーバー。マスター・コピーからコンシューマ・サーバーに更新を供給します。

システム・グローバル領域(SGA)

Oracle Databaseの1つのインスタンスのデータおよび制御情報を含む、共有メモリー構造のグループです。複数のユーザーが同じインスタンスに同時に接続した場合、そのインスタンスのSGA内のデータはユーザー間で共有されます。したがって、SGAは共有グローバル領域と呼ばれることもあります。バックグラウンド・プロセスとメモリー・バッファの組合せは、Oracleインスタンスと呼ばれます。

システム操作属性

ディレクトリ自体の操作に関係する情報を保持する属性。一部の操作情報は、サーバーを制御するためにディレクトリによって指定されます(例: エントリのタイムスタンプ)。アクセス情報などのその他の操作情報は、管理者が定義し、ディレクトリ・プログラムの処理時に、そのプログラムによって使用されます。

TLS

「Transport Layer Security(TLS)」を参照してください。

思考時間

ユーザーが実際にプロセッサを使用していない時間。

スループット

Oracleバックエンド・ディレクトリが単位時間ごとに処理するリクエストの数。通常、操作/秒(1秒当たりの操作件数)で表されます。

Transport Layer Security(TLS)

インターネット上の通信プライバシを提供するプロトコル。このプロトコルによって、クライアント/サーバー・アプリケーションは、通信時の盗聴、改ざんまたはメッセージの偽造を防止できます。

信頼できる証明書

一定の信頼度を有すると認定された第三者のアイデンティティ。信頼できる証明書は、アイデンティティの内容がそのエンティティと一致していることを検証するときに使用されます。一般的に、信頼されている認証局によってユーザーの証明書が発行されます。

トラスト・ポイント

「信頼できる証明書」を参照してください。

UTF-16

Unicodeの16ビット・エンコーディング。Latin-1文字は、この規格の最初の256コード・ポイントです。

Unicode

汎用キャラクタ・セットのタイプ。16ビットの領域にエンコードされた64Kの文字の集合。既存のほとんどのキャラクタ・セット規格の文字をすべてエンコードし、世界中で使用されているほとんどの記述法を含みます。これはUnicode社によって所有および定義されます。Unicodeは標準的なエンコーディングであり、異なるロケールに値を伝達できることを意味します。これとすべてのOracleキャラクタ・セットとの間で、情報の損失なしにラウンドトリップ変換が行われることは保証されません。

UNIX Crypt

UNIX暗号化アルゴリズム。

ユーザー検索ベース

Oracle Internet Directoryのデフォルトのディレクトリ情報ツリーで、すべてのユーザーが配置されるアイデンティティ管理レルムのノード。

UTC(Coordinated Universal Time)

世界中のあらゆる場所で共通の標準時間。以前から広くグリニッジ標準時(GMT)または世界時と呼ばれており、UTCは名目上は地球の子午線に沿った平均太陽時を表します。UTC形式である場合、値の最後にzが示されます(例: 200011281010z)。

UTF-8

文字ごとに連続した1、2、3または4バイトを使用するUnicodeの可変幅8ビット・エンコーディング。0から127の文字(7ビットASCII文字)は1バイトでエンコードされ、128から2047の文字では2バイト、2048から65535の文字では3バイト、65536以上の文字は4バイトを必要とします。このためのOracleキャラクタ・セット名はAL32UTF8(Unicode 3.1規格用)となります。

仮想ホスト名

Oracle Application Server Cold Failover Cluster(インフラストラクチャ)で、仮想IPアドレスに対応するホスト名。

仮想IPアドレス

Oracle Application Server Cold Failover Cluster(インフラストラクチャ)では、各物理ノードには独自の物理IPアドレスと物理ホスト名が割り振られます。単一のシステムであるというイメージを外部に示すために、クラスタは、クラスタ内のどの物理ノードにも変更できる動的IPアドレスを使用します。これは、仮想IPアドレスと呼ばれます。

ウォレット

個々のエンティティに対するセキュリティ資格証明の格納と管理に使用される抽象的な概念。様々な暗号化サービスで使用できるように、資格証明の格納と取出しを実現します。Wallet Resource Locator (WRL)は、Walletの位置を特定するために必要な情報をすべて提供します。

待機時間

リクエストの発行からレスポンスの開始までの時間。

X.509

公開鍵の署名に使用されるISOの一般的な形式。

索引

A  B  C  D  E  F  G  H  I  K  L  M  N  O  P  R  S  T  U  V  W

A

アクセス制御

エージェント, 2.2.2

Directory Integration Server, 2.2.1

プロファイル, 2.2.2

Oracle Directory Integration Platform, 2.2

Oracle Directory Integration Platform, 2.2

アクセス制御リスト(ACL)

カスタマイズ, 17.3.2

エクスポート・プロファイル用, 17.3.2.2

インポート・プロファイル用, 17.3.2.1

サンプル・ファイル, 17.3.2.3 Active Directory

ドメイン間の信頼関係, 16.3.7

ActiveChgImpプロファイル, 18.3 ActiveExportプロファイル

同期プロファイル

ActiveExport, 18.3

ActiveImportプロファイル, 18.3 管理, Oracle Access Manager, 16.2.10 管理権限, プロビジョニング, 12.7 拡張統合オプション, 構成, 17.3 アプリケーション・ブートストラップ, プロビジョニング, 12.4.5 非同期プロビジョニング, 12.3.2 属性マッピング・ルールと例, 6.4.4 属性マッピング

Microsoft Active Directory用, 18.3.5

Novell eDirectoryおよびOpenLDAP用, 22.3.5

Oracle Directory Server Enterprise Edition用, 20.3.4

属性レベル・マッピング, 6.4.2 属性

ログイン名, 16.2.6

ユーザー・ログイン名, 17.3.1

認証

Oracle Directory Integration Platform, 2.1

プロファイル, 2.1.3

SSL

モード, 2.1.2

認証の流れ

Windowsネイティブ認証, 16.3.3.1

認可

Oracle Directory Integration Platform, 2.2

B

ブートストラップ

アプリケーション, 12.4.5

統合環境

デフォルト統合プロファイルの使用, 8.1.6

パラメータ・ファイルの使用, 8.1.5

SSLモード, 8.2

推奨する方法, 8.1.4

LDIFファイル使用あり, 8.1.5.2

LDIFファイル使用なし, 8.1.5.1

サード・パーティ・ディレクトリとの統合, 23.2.1 Oracle Directory Integration Platform, 8 Oracle Human ResourcesからOracle Internet Directory, 10.5 syncProfileBootstrap, 8.1 ブラウザ設定, Windowsネイティブ認証, 18.5.3

C

企業の中央ディレクトリ

Oracle Internet Directory, 16.2.2.1

サード・パーティ・ディレクトリ, 16.2.2.2

変更ログ

同期プロセス, 1.4.2.2

オブジェクト・ストア, サード・パーティのメタディレクトリ・ソリューションとの統合, 11.1

Oracle Directory Integration Platform用のコマンドライン管理ツール, 3.2 コマンドライン・ツール, 3.2

dipStatus, 4.2.1

expressSyncSetup, 17.2

manageDIPServerConfig, 4.5

manageSyncProfiles, testProfileオプション, 7.1.5.2

oidprovtool, 13.2, 13.2

provProfileBulkProv, 12.4.3

syncProfileBootstrap, 8.1

構成

拡張統合オプション, 17.3

接続詳細, 6.3

外部認証プラグイン, 17.3.6

マッピング・ルール, 6.4

一致フィルタ, 6.6

プロパティ, 13.4

Windowsネイティブ認証, 18.5

Microsoft Active Directory外部認証プラグインの構成, 18.3.10 接続ディレクトリ

説明, 1.4.2.2

SSL証明書, 4.7

接続詳細, 構成, 6.3 コネクタ, 5 コネクタ, ディレクトリ同期用, 説明, 5.1.1 コネクタ, 登録, 6.1 作成

カスタム・イベント・オブジェクト定義, 14.2.1

同期プロファイル, 7.1.1

カスタム・イベント・オブジェクト定義, 作成, 14.2.1 カスタマイズ, マッピング・ルール, 17.3.3

D

データ・アクセスJavaプラグイン, 12.3.1

データ・フロー, プロビジョニング, 12.3.3

データ整合性, 2.3

データ整合性, Oracle Directory Integration Platform, 2.3

データ・プライバシ, Oracle Directory Integration Platform, 2.4

Windowsネイティブ認証のデバッグ, E.4.1

定義, カスタム・イベント生成ルール, 14.2.2

削除, 同期プロファイル, 7.1.4

プロビジョニング統合アプリケーションのデプロイ, 13.1

ディレクトリの登録解除, 11.4.2

DIPサーバー

Fusion Middleware Controlを使用して構成, 4.3.4

manageDIPServerConfigを使用して構成, 4.5

SSLモード2, 4.6

DIP Testerユーティリティ, 7.1.5 dipStatus, 4.2.1 ディレクトリ

情報ツリー(DIT)

構造, 統合環境, 16.2.5

登録, 11.2.2.1 ディレクトリ情報ツリー(DIT), デフォルト, 16.2.5 ディレクトリ情報ツリーのプロビジョニング・エントリ, 12.5.1 ディレクトリ統合プロファイル, 6.1

ディレクトリ・プロビジョニング・プロファイル, 4.1.1

ディレクトリ同期プロファイル, 4.1.1

ディレクトリ・プロビジョニング, Oracle Internet Directoryマルチマスター・レプリケーション環境, 4.1.2.2 ディレクトリ同期のコネクタ, 説明, 5.1.1 ディレクトリ同期, Oracle Internet Directoryマルチマスター・レプリケーション環境, 4.1.2.1 ディレクトリ同期プロファイル, 説明, 5.1.2 DirSync, 16.3.1, 18.4 識別名マッピング, 6.4.1

E

Oracle Internet Directoryからサード・パーティ・ディレクトリへのパスワードの同期の有効化, 17.3.5

イベント生成ルール, 定義, 14.2.2

イベント・オブジェクト定義, 作成, 14.2.1

イベント伝播, Oracle Internet Directoryマルチマスター・レプリケーション環境でのOracle Directory Integration Platform, 4.1.2

エクスポート・プロファイル

expressSyncSetup, 17.2

expressSyncSetup, 17.2 外部認証プラグイン

サード・パーティ・ディレクトリとの統合, 16.1.1

Microsoft Active Directory, 18.3.10

外部認証プラグイン

構成, 17.3.6

F

新機能, Preface

ファイルのネーミング規則, 6.7

ファイル

場所, 6.7

外部セキュリティ・プリンシパル

定義, 16.3.7

Oracle Internet Directory

Microsoft Active Directoryとの同期化, 18.6

Fusion Middleware Control

アクセス, 3.1.1

同期プロファイルの使用, 7.1.1

DIPホームページ, 3.1.1.1

DIPサーバー構成, 4.3.4

DIP統計, 4.3.1

同期プロファイルの編集, 7.1.2

DIPの管理, 4.3

プロビジョニング・プロファイル, 12.6.1

DIPの起動, 4.3.2

DIPの停止, 4.3.3

同期プロファイル・マッピング, 7.1.1

G

Oracle Directory Integration Platform用のグラフィカル管理ツール, 3.1

グループ検索コンテキスト, 16.2.8

groupsearchbase, Microsoft Active Directoryとの統合での構成, 17.3.1

groupsearchbase, Active Directoryとの統合での構成, 17.3.1

H

高可用性, 4.8

I

アイデンティティ管理レルム

概要, 16.1.3.1

アクセス制御ポリシー, 16.1.3.1

デフォルト, 16.1.3.1

複数, 16.1.3.1

インポート・プロファイル

expressSyncSetup, 17.2

インストール・オプション, Oracle Identity Management, 1.2 統合環境

ブートストラップ, 8

ブートストラップの推奨方法, 8.1.4

セキュリティ問題, 16.2.9

統合

リレーショナル・データベース, 9

単一のサード・パーティ・ディレクトリ, 16.1.3.3

Active Directory

ユーザー・ログイン名属性の設定, 17.3.1

ユーザー検索ベースとグループ検索ベースの設定, 17.3.1

Microsoft Active Directory, 18

検索フィルタのカスタマイズ, 18.3.3

ユーザー・ログイン名属性の設定, 17.3.1

複数のMicrosoft Active Directoryドメイン・コントローラ, 16.3.5 Novell eDirectoryおよびOpenLDAP

検索フィルタのカスタマイズ, 22.3.3

Oracle Directory Server Enterprise Edition, 20 Oracle E-Business Suite, 15 Oracle Human Resources, 10 サード・パーティ・ディレクトリ

企業の中央ディレクトリの選択, 16.2.2

コンポーネント, 16.1.1

概念とアーキテクチャ, 16.1

ディレクトリ情報ツリー(DIT)構造, 16.2.5

SSLモード, 17.3.4

LDAPスキーマ, カスタマイズ, 16.2.3

パスワード, 格納場所, 16.2.4

計画, 16.1.3.2

予備的な考慮事項, 16.2.1

統合の概念

Novell eDirectoryおよびOpenLDAP用, 16.6

Microsoft Active Directory, 16.3

Oracle Directory Server Enterprise Edition, 16.4

統合プロファイル

認証, 2.1.3

デフォルト, 8.1.6

同期, 5

リレーショナル・データベース, 9.3

K

Kerberosプロトコル, 16.3.3.1

キーストア, DIP, 8.2.1

L

LDAPスキーマ, カスタマイズ, 16.2.3

ログイン

名前, 属性, 16.2.6

M

manageDIPServerConfig, 4.5

manageSyncProfiles, testProfileオプション, 7.1.5.2

管理

同期プロファイル, 7.1

サード・パーティ・ディレクトリ

統合, 23.1

マッピング

属性レベル, 6.4.2

識別名, 6.4.1

マッピング・ルール, 5.1.2

構成, 6.4

カスタマイズ, 17.3.3

グループ・エントリ, 16.2.5.2.2

ユーザー・エントリ, 16.2.5.2.1

形式, 5.1.2

更新, 6.4.7

一致フィルタ

変更ログ, 6.6.2

LDAP検索, 6.6.1

一致フィルタ, 構成, 6.6 Microsoft Active Directory

属性マッピング, 18.3.5

コネクタ, Microsoft Exchange Server用の構成, 18.9

ドメイン・コントローラ

同一ドメイン内での切替え, 18.7

外部セキュリティ・プリンシパル, 16.3.7, 16.3.7 統合の概念, 16.3 統合, 18 複数のドメイン・コントローラとの統合, 16.3.5 複数ドメイン

同期化, 16.3.6, 16.3.6

複数のドメイン, 同期化, 18.3.6 削除の同期化, 18.3.7, 18.3.7 パスワードの同期化, 18.3.9, 18.3.9 ドメイン間の信頼関係, 16.3.7 Microsoft Active Directory, 外部認証プラグイン, 構成, 18.3.10 Microsoft Exchange Server, Microsoft Active Directoryコネクタの構成, 18.9 変更

同期ステータス属性, 7.3

Oracle Internet Directoryマルチマスター・レプリケーション環境

ディレクトリ・プロビジョニング, 4.1.2.2

ディレクトリ同期, 4.1.2.1

Oracle Directory Integration Platformイベント伝播, 4.1.2

複数ドメインMicrosoft Active Directory, 同期化, 16.3.6

N

新機能, Preface

Microsoft Active Directoryでの非推移的な信頼関係, 16.3.7

Novell eDirectoryおよびOpenLDAP

属性マッピング, 22.3.5

削除の同期化, 22.3.6, 22.3.6

パスワードの同期化, 22.3.8, 22.3.8

Novell eDirectoryおよびOpenLDAP統合の概念, 16.6

O

oidprovtool, 13.2

OpenLDAP Community, Preface

Oracle Access Manager, 管理, 16.2.10

Oracle Application Server Single Sign-On, 16.1.1

Windowsネイティブ認証, 16.1.1

説明, 1.4.3

Oracleバックエンド・ディレクトリ, 16.1.1 Oracleバックエンド・ディレクトリ

接続ディレクトリとの統合用のスキーマ要素, 16.1.2

Oracleバックエンド・ディレクトリ・スキーマ要素

Microsoft Active Directory用, 16.3.4

Novell eDirectory用のOracleバックエンド・ディレクトリ・スキーマ要素, 16.6.2 Oracle Delegated Administration Services, 16.1.1 Oracle Directory Integration

問題と解決策, E.2

概要, 1.1

Oracle Directory Integration Platform, 12, 16.1.1

アクセス制御と認可, 2.2

管理, 4

コマンドライン管理ツール, 3.2

データ整合性, 2.3

データ・プライバシ, 2.4

ユーザーの削除, C.6

デプロイメントの例, C

Oracle Internet Directoryマルチマスター・レプリケーション環境でのイベント伝播, 4.1.2

グラフィカル管理ツール, 3.1

レプリケート環境, 4.9

高可用性を目的とした場合, 4.8

ユーザー・プロパティの変更, C.5

操作情報, 4.1

構造, 1.4.2

ユーザーの作成とプロビジョニング, C.4

Oracle Directory Integration Platform Service, 説明, 1.4.2.3 Oracle Directory Server Enterprise Edition

属性マッピング, 20.3.4

統合の概念, 16.4

統合, 20

削除の同期化, 20.3.5, 20.3.5

パスワードの同期化, 20.3.6, 20.3.6

Oracle Directory Synchronization Service

コンポーネント間の相互作用, 1.4.2.2, 1.4.2.2

Oracle E-Business Suite, 統合, 15 Oracle Human Resources

エージェント, 10

構成, 10.3.1

マッピング・ルール, 10.3.3

インポート, 10.2 同期の実行, 10.3.4 同期化, 10 Oracle Identity Managementのインストール・オプション, 1.2 Oracle Identity Management統合, 利点, 1.1 Oracle Identity Manager, 12 Oracle Internet Directory

同期化環境での中央ディレクトリ, 1.4.2.2

マルチマスター・レプリケーション環境でのイベント伝播, 4.1.2

OpenLDAP用のOracle Internet Directoryスキーマ要素, 16.6.3 Sun Java System Directory用のOracle Internet Directoryスキーマ要素, 16.4.2 Oracle Internet Directoryセルフ・サービス・コンソール, 3.1.2 Oracle Password Filter for Microsoft Active Directory, デプロイ, 19, 19 Oracleプロビジョニング・イベント, 説明, 14.1 orclChangeSubscriber, 6.1 orclLastAppliedChangeNumber属性, 11.3.2 orclodiplastappliedchangenumber, 6.1 orclodiProfile, 6.1

P

パスワードの同期, 有効化, Oracle Internet Directoryからサード・パーティ・ディレクトリ, 17.3.5

パスワード

統合環境での格納場所, 16.2.4

計画, サード・パーティ・ディレクトリ統合, 16.1.3.2 PL/SQLプラグイン, 12.3.2 プラグイン

データ・アクセスJava, 12.3.1

PL/SQL, 12.3.2

プレデータ・エントリ, 12.3.3

プラグイン, ポストデータ・エントリ, 12.3.3 ポストデータ・エントリ・プラグイン, 12.3.3 プレデータ・エントリ・プラグイン, 12.3.3 問題と解決策

Oracle Directory Integration, E.2

プロファイル

アクセス制御, 2.2.2

ディレクトリ統合, 6.1

作成, 7.1.1

削除, 7.1.4

ディレクトリ同期, 5.1.2

管理, 7.1

同期プロファイルのサンプル, 6.2 プロビジョニング

管理モデル, 12.7.1

管理権限, 12.7

エージェント, 1.4.2.3

エージェント, レガシー・アプリケーション用, 1.4.2.3

アプリケーション・ブートストラップ, 12.4.5

非同期, 12.3.2

同期との比較, 1.3

同期との対比, 1.3.3

説明, 1.3.2

ディレクトリ情報ツリーのエントリ, 12.5.1

説明, 12.1

フロー, 12.6

目的, 1.3.2

オンデマンド, 12.4.4

プロビジョニング統合プロファイル, 12.2

同期, 12.3.1

ユーザー・ステータス, 12.5.2

プロビジョニング管理モデル, 12.7.1 プロビジョニング概念の概要, 12.3 プロビジョニングのデータ・フロー, 12.3.3 プロビジョニング・イベント, 説明, 14.1 プロビジョニング・プロファイル

作成, 13.2.3.1

削除, 13.2.3.3

無効化, 13.2.3.4

変更, 13.2.3.2

プロビジョニング・プロファイル

Fusion Middleware Controlを使用して管理, 12.6.1

プロビジョニング・サービス

Oracle Directory Integration Platform Service, 説明, 1.4.2.3

ユーザーのプロビジョニング

LDAPコマンドライン・ツールで作成されたユーザー, 12.4.2

オンデマンド, 12.4.4

ステータス, 12.5.2

外部ソースから同期化されたユーザー, 12.4.1

プロビジョニング統合アプリケーション, 13.4 プロビジョニング統合アプリケーション

デプロイ, 13.1

登録, 13.3

provProfileBulkProv, 12.4.3

R

レルム

概要, 16.1.3.1

アクセス制御ポリシー, 16.1.3.1

サード・パーティ統合における構成, 17.3.1

デフォルト, 16.1.3.1

複数, 16.1.3.1

推奨方法, 統合環境でのブートストラップ, 8.1.4 ディレクトリの登録, 11.2.2.2 プロビジョニング用のアプリケーションの登録, 13.3 登録, ディレクトリ, 11.2.2.1 レプリケーション

Oracle Directory Integration Platform, 4.9

ルールと例, 属性マッピング, 6.4.4

S

同期プロファイルのサンプル, 6.2

スキーマ要素, Oracleバックエンド・ディレクトリ

Microsoft Active Directory用, 16.3.4

スキーマ要素, Oracleバックエンド・ディレクトリ

Novell eDirectory用, 16.6.2

スキーマ要素, Oracle Internet Directory

OpenLDAP用, 16.6.3

Sun Java System Directory用, 16.4.2

検索フィルタ, Microsoft Active Directory統合でのカスタマイズ, 18.3.3 検索フィルタ, Novell eDirectoryおよびOpenLDAP統合でのカスタマイズ, 22.3.3 SearchDeltaSizeパラメータ, E.4.2 セキュリティ

統合環境, 16.2.9

Oracle Directory Integration Platform, 2

Oracle Directory Integration Platformのツール, 2.5

Simple and Protected GSS-API Negotiation Mechanism(SPNEGO), 16.3.3.1 単一のサード・パーティ・ディレクトリ, 統合, 16.1.3.3 SPNEGOプロトコル, 16.3.3.1 SSL, 2.1.1

サード・パーティ・ディレクトリ統合, 17.3.4

接続ディレクトリ用の証明書, 4.7

SSLモード, 統合環境でのブートストラップ, 8.2 Oracleスタックの起動と停止, D DIPの起動

Fusion Middleware Control, 4.3.2

WLST, 4.4

Oracleスタックの起動, D.1 ステータス

ユーザーのプロビジョニング, 12.5.2

DIPの停止

Fusion Middleware Control, 4.3.3

WLST, 4.4

Oracleスタックの停止, D.2 Sun Java System Directory Server。「Oracle Directory Server Enterprise Edition」を参照 同期

プロビジョニングとの比較, 1.3

プロビジョニングとの対比, 1.3.3

事前の決定, 16.1.3.2

Microsoft Active Directoryからの削除, 18.3.7

Novell eDirectoryおよびOpenLDAPからの削除, 22.3.6

Oracle Directory Server Enterprise Editionからの削除, 20.3.5

説明, 1.3.1

接続ディレクトリからOracle Internet Directoryへ, 5.2.2

Oracle Internet Directoryがサポートしていないインタフェースを持つディレクトリから, 5.2.3

Oracle Internet Directoryから接続ディレクトリへ, 5.2.1

一方向, 1.4.2.2

Microsoft Active Directoryからのパスワード, 18.3.9

Novell eDirectoryおよびOpenLDAPからのパスワード, 22.3.8

Oracle Directory Server Enterprise Editionからのパスワード, 20.3.6

プロセス, 11.3

プロファイル, 1.3.1, 5

使用例, 5.2

ステータス属性, 変更, 7.3

双方向, 1.4.2.2

変更ログの使用, 1.4.2.2

USNChangeベース, 16.3.1

Oracle Human Resources, 10

他のディレクトリ, 11, 11.2

同期プロファイル・マッピング

Fusion Middleware Control, 7.1.1

同期プロファイル

ActiveChgImp, 18.3

ActiveImport, 18.3

Fusion Middleware Controlを使用して作成, 7.1.1

Fusion Middleware Controlを使用して削除, 7.1.4

Fusion Middleware Controlを使用して無効化, 7.1.3

Fusion Middleware Controlを使用して編集, 7.1.2

Fusion Middleware Controlを使用して有効化, 7.1.3

DIPテスターを使用してトラブルシューティング, 7.1.5

manageSyncProfilesを使用してトラブルシューティング, testProfileオプション, 7.1.5.2

同期要件, 確認, 17.1 同期, トラブルシューティング, E.3 同期化

Microsoft Active DirectoryからOracle Internet Directoryへ, 16.3.1

Novell eDirectoryまたはOpenLDAPからOracle Internet Directoryへ, 16.6.1

Sun Java System DirectoryからOracle Directory Integration Platformへ, 16.4.1

複数のMicrosoft Active Directoryドメイン, 18.3.6

同期プロビジョニング, 12.3.1 syncProfileBootstrap, 8.1

T

サード・パーティ・ディレクトリ

統合の概念とアーキテクチャ, 16.1, 16.1

外部認証, 16.1.1

統合

構成後タスク, 23.1

一般的な管理タスク, 23.2, 23.2

統合

企業の中央ディレクトリの選択, 16.2.2

コンポーネント, 16.1.1

ディレクトリ情報ツリー(DIT)構造, 16.2.5

LDAPスキーマ, カスタマイズ, 16.2.3

パスワード, 格納場所, 16.2.4

計画, 16.1.3.2

予備的な考慮事項, 16.2.1

サード・パーティ・ディレクトリ

単一, 統合, 16.1.3.3

ツール

コマンドライン管理, 3.2

Oracle Internet Directoryセルフ・サービス・コンソール, 3.1.2

Active Directoryでの推移的な信頼関係, 16.3.7 トラブルシューティング

DIP Testerユーティリティ, 7.1.5

同期, E.3

U

概要, プロビジョニング概念, 12.3

更新, マッピング・ルール, 6.4.7

ユーザー

検索コンテキスト, 16.2.7

usercreatebase

Active Directoryとの統合での構成, 17.3.1

usersearchbase

Active Directoryとの統合での構成, 17.3.1

USNChangeベースの同期, 16.3.1

V

確認, 同期要件, 17.1

W

Windowsネイティブ認証, 16.3.3

認証の流れ, 16.3.3.1

ブラウザ設定, 18.5.3

構成, 18.5

デバッグ, E.4.1

動作, 16.3.3.1

Windowsネイティブ認証

システム要件, 18.5.1

WLST

DIPの起動と停止, 4.4

Copyright © 1999, 2011, Oracle and/or its affiliates. All rights reserved.