Oracle Identity Managerには、次の事前定義済プロバイダが含まれています。
関連項目: Oracle Fusion Middleware Oracle Identity Managerユーザーズ・ガイドの統合ソリューションに関する説明を参照してください。 |
注意: 使用するプロバイダ用のパラメータの値を決定する必要があります。この値は、Oracle Identity System Administrationを使用して汎用テクノロジ・コネクタを作成する間に使用します。 |
共有ドライブ・リコンシリエーション・トランスポート・プロバイダは、ステージング・ディレクトリに格納されたフラット・ファイルからデータを読み取り、そのファイルをアーカイブ・ディレクトリに移動します。ステージング・ディレクトリとアーカイブ・ディレクトリを共有して、Oracle Identity Managerサーバーからアクセスできるようにする必要があります。
このプロバイダのパラメータを次に示します。
このパラメータを使用して、親データを含むファイルを格納するディレクトリのパスを指定します。このパラメータ値の指定は必須です。これはランタイム・パラメータです。
このマニュアルでは、親データとは、ターゲット・システムに格納されているユーザー・アカウント情報を意味します。
このパラメータのサンプル値は次のとおりです。
T:/TargetSystemDirectory/ParentData
注意: Oracle Identity Managerがインストールされているサーバー上にステージング・ディレクトリがない場合、そのディレクトリを共有にして、Oracle Identity Managerサーバー上にネットワーク・ドライブとしてマップする必要があります。 |
親データファイルに格納されるデータは、次の規則に準拠する必要があります。
ファイルの1行目
親データファイルの1行目は、ファイルの内容を示すファイル・ヘッダーである必要があります。
ファイル・ヘッダーの前に、番号記号(#)で始まる任意の数の行を置くことができます。この記号はファイルの読取り時には無視されます。ただし、ヘッダーの先頭に空白がないようにしてください。英語以外の言語を使用している場合、この行に非ASCII文字は入力できません。
注意: 1行目に非ASCII文字を入力しないようにするチェック機能はありません。また、汎用テクノロジ・コネクタ・フレームワークでは非ASCII文字を解析できます。ただし、非ASCII文字を使用すると、作成した汎用テクノロジ・コネクタのコネクタ・オブジェクトが自動的に作成される時点で問題が発生します。 |
ファイルの2行目
親データファイルの2行目には、ファイル内のデータのフィールド名(メタデータ)を入力する必要があります。
注意: 汎用テクノロジ・コネクタのコンテキストでは、メタデータという用語はユーザー・アカウント情報を構成する一連のアイデンティティ・フィールドを意味します。 |
英語以外の言語を使用している場合、この行に非ASCII文字は入力できません。この制限事項の詳細は、1行目に関する「注意」を参照してください。
ファイルの3行目以降
親データファイルの3行目以降には、Oracle Identity Managerに対して選択した言語でデータを入力できます。この言語としては、ASCIIキャラクタ・セットと非ASCIIキャラクタ・セットの両方を使用できます。この制限事項の詳細は、「多言語サポート」を参照してください。
3行目以降にデータがなくても、リコンシリエーションが実行され、ファイルがアーカイブされます。
次に、サンプル親データファイルの内容を示します。
##Active Directory user Name TD,Address TD,User ID TD John Doe,Park Street,jodoe Jane Doe,Mark Street,jadoe
ステージング・ディレクトリ(複数値アイデンティティ・データ)
このパラメータを使用して、複数値(または子)アカウントまたはアイデンティティ・データ(ロール・メンバーシップのデータなど)を含むファイルを格納するディレクトリのパスを指定します。このパラメータ値の指定は必須ではありません。これはランタイム・パラメータです。
注意: このマニュアルでは、複数値アカウントまたはアイデンティティ・データと子データという用語は、同義的に使用されています。 |
このパラメータのサンプル値は次のとおりです。
T:/TargetSystemDirectory/ChildData
注意:
|
それぞれの型の複数値アカウントまたはアイデンティティ・データに対し、共有ディレクトリに個別のファイルが必要です。たとえば、特定のターゲット・システムの複数値ユーザー・データがグループ・メンバーシップ・データとロール・データである場合、グループ・メンバーシップ・データのファイルとロール・データのファイルが別々に必要です。
子データファイルに格納されているデータは、親データファイルに指定されている規則(1行目、2行目、3行目以降)に準拠する必要があります。
また、同じ一意のフィールドが親データファイルとそれぞれの子データファイルに存在する必要があります。このフィールドは、子データファイルの各レコードを親データファイルのシングル・レコードに一意にリンクするために使用されます。この構造は、RDBMSの整合性制約(主キーと外部キー)の概念に類似しています。
注意: 一意のフィールドは、子データファイルの最初のフィールドである必要があります。 |
次に示すサンプルの子データファイルには、前述のサンプル親データファイルにリンクされるロール情報が含まれています。
###Role User ID TD,Role Name TD,Role Type TD jodoe,admin1,admin jadoe,admin2,admin
次に示すサンプルの子データファイルには、前述のサンプル親データファイルにリンクされるグループ・メンバーシップ情報が含まれています。
###Group Membership User ID TD,Group Name TD,Group Type TD jodoe,OracleDev1,OracleDev jadoe,OracleDev2,OracleDev jadoe,OracleDev3,OracleDev jadoe,OracleDev4,OracleDev jadoe,OracleDev5,ConnectorDev
一意のフィールドの名前User ID TD
は、子データファイルと親データファイルで同じであることに注意してください。
「「ステップ3: コネクタ構成の変更」ページ」で説明されている「ステップ3: コネクタ構成の変更」ページでは、子データセットの名前は子データファイルで指定したヘッダーと同じです。前述のサンプルの子データファイルの場合、子データセットのラベルはRole
とGroup Membership
になります。また、「ステップ4: コネクタ・フォーム名の検証」ページでは、子データセットに対応するフォームに表示されるデフォルト名はRole
とGroup Membership
になります。「「ステップ4: コネクタ・フォーム名の検証」ページ」で説明されているように、デフォルトのフォーム名を使用することも、変更することもできます。
このパラメータを使用して、すでにリコンサイルした親および子データファイルを格納するディレクトリのパスを指定します。これはランタイム・パラメータです。
このパラメータ値の指定は必須です。
リコンシリエーション実行終了時に、データファイルはアーカイブ・ディレクトリにコピーされ、ステージング・ディレクトリから削除されます。
アーカイブ・ディレクトリに移動したファイルにタイムスタンプまたはマークは付きません。このため、アーカイブ・ディレクトリのパスを指定するときは、次のガイドラインに注意してください。
指定するアーカイブ・ディレクトリ・パスは、ステージング・ディレクトリ・パスと同じものにしないでください。同じパスを指定すると、アーカイブ・ディレクトリ内の既存のファイルがリコンシリエーションの実行終了時に削除されます。
前回のリコンシリエーション実行で使用されたファイルと同じ名前のデータファイルがステージング・ディレクトリに配置されていると、アーカイブ・ディレクトリ内の既存のファイルが、現在のリコンシリエーションの実行終了時に、ステージング・ディレクトリからの新しいファイルで上書きされます。
この点については、「「ステップ2: パラメータ値の指定」ページ」にも記載されています。
このパラメータを使用して、親データファイルと子データファイルの両方について、ステージング・ディレクトリ内のファイルの名前をフィルタするために使用する接頭辞を指定します。リコンシリエーション中は、ファイル拡張子に関係なく、指定した接頭辞で始まる名前を持つ(ステージング・ディレクトリ内の)すべてのファイルが処理されます。これはランタイム・パラメータです。
例:
「ファイルの接頭辞」パラメータの値としてusrdata
を指定すると、複数値(子)ユーザー・データファイルに関して、ステージング・ディレクトリに配置された次のファイルのデータが解析されます。
usrdataRoleData.csv usrdataGroupMembershipData.txt
同じディレクトリにある次のファイルからはデータは抽出されません。これは、ファイル名がusrdata
で始まらないためです。
RoleData.csv GroupMembershipData.txt
このパラメータを使用して、親および子データファイルでデリミタ文字として使用する文字を指定します。このパラメータの値として指定できるのは1文字のみです。これはランタイム・パラメータです。このパラメータは「タブ区切り」パラメータよりも優先されます。
注意: 空白( )はデリミタとして使用できません。 また、指定する文字が、そのデータファイルでデリミタとしてのみ使用されることを確認する必要があります。この文字がデータ自体にも含まれる場合、データ行(レコード)は正しく解析されません。たとえば、カンマ(,)がデータ値に含まれる場合は、デリミタとしてカンマを使用できません。 |
このパラメータを使用して、ファイルがタブ区切りかどうかを指定します。これはランタイム・パラメータです。「指定されたデリミタ」パラメータの値を指定すると、このパラメータは無視されます。
入力ファイルに固定幅データが含まれる場合は、このパラメータを使用してデータ列の文字の幅を指定します。これはランタイム・パラメータです。
注意: ここでは、固定幅という用語は、データ・フィールドのバイト長ではなく文字数を意味します。たとえば、幅という意味ではシングルバイト・データ4文字とマルチバイト・データ4文字は同じになります。 |
「指定されたデリミタ」または「タブ区切り」パラメータの値を指定すると、このパラメータは無視されます。
複数値ユーザー・データの場合は、このパラメータを使用して、親と子の両方のデータファイルに共通するフィールドを指定します。前述の例では、一意の属性に対する要件は、親と子の両方のデータファイルに存在するUser ID TD
フィールドで満たされます。これはランタイム・パラメータです。
注意: 「ステップ1: 基本情報の指定」ページで「信頼できるソース・リコンシリエーション」オプションを選択した場合、「一意の属性(親データ)」パラメータの値は指定できません。これは、信頼できるソース・リコンシリエーションでは、複数値(子)データのリコンシリエーションがサポートされていないためです。 |
このパラメータを使用して、親およびデータファイルで使用されるキャラクタ・セット・エンコーディングを指定します。これは設計パラメータです。
言語設定が英語のオペレーティング・システムを実行しているコンピュータでは、データファイルにCp1251
を指定します。これは、汎用テクノロジ・コネクタ・フレームワークでサポートされるjava.io
APIの正規名です。「多言語サポート」の項に示されたリストからその他の言語を選択する場合は、次のWebページを参照して、対応するjava.io
APIの正規名を指定する必要があります。
http://java.sun.com/j2se/1.4.2/docs/guide/intl/encoding.doc.html
注意: APIに指定する正規名は、このWebページに表示されているとおりに入力する必要があります。正規名の大/小文字は変更しないでください。 |
たとえば、Microsoft Windowsコンピュータで繁体字中国語のエンコーディング・セットを指定する場合は、「ファイル・エンコーディング」パラメータの値としてMS950
を指定します。
ステージング・ディレクトリとアーカイブ・ディレクトリに設定する権限
ステージング・ディレクトリとアーカイブ・ディレクトリに必要な権限が設定されていることを確認してください。次の表に、ステージングおよびアーカイブのデータファイルの保持に使用される共有ディレクトリに対する様々な権限の影響を示します。
記憶域エンティティ | アクセス権 | アクセス権が必要な理由 |
---|---|---|
親データファイルのステージング・ディレクトリ |
読取り |
この権限は、リコンシリエーションの実行に必要です。この権限が適用されない場合、エラー・メッセージがログに記録されます。 |
親データファイルのステージング・ディレクトリ |
書込み |
この権限は、アーカイブ・プロセスの最後にデータファイルを親ステージング・ディレクトリから削除するために必要です。 |
親データファイルのステージング・ディレクトリ |
実行 |
適用外 |
子データファイルのステージング・ディレクトリ |
読取り |
この権限は、子データのリコンシリエーションに必要です。この権限が適用されない場合、エラー・メッセージがログに記録されます。 |
子データファイルのステージング・ディレクトリ |
書込み |
この権限は、アーカイブ・プロセスの最後にデータファイルを子ステージング・ディレクトリから削除するために必要です。 |
子データファイルのステージング・ディレクトリ |
実行 |
適用外 |
アーカイブ・ディレクトリ |
書込み |
この権限は、アーカイブ・プロセス中に親および子データファイルをアーカイブ・ディレクトリにコピーするために必要です。この権限が適用されなくても、次の処理が行われます。
|
アーカイブ・ディレクトリ |
実行 |
適用外 |
ステージング・ディレクトリ内の親または子データファイル |
読取り |
この権限は、ファイル内のデータのリコンシリエーションに必要です。この権限が適用されない場合、エラー・メッセージがログに記録されます。 |
ステージング・ディレクトリ内の親または子データファイル |
書込み |
この権限は、アーカイブ・プロセスの最後にデータファイルを削除するために必要です。この権限が適用されない場合、エラー・メッセージがログに記録されます。ただし、このファイル内のデータはリコンサイルされます。 |
ステージング・ディレクトリ内の親または子データファイル |
実行 |
適用外 |
注意: ステージング・ディレクトリ内のデータファイルは、いずれかのエディタで開かれているか他のプログラムによる書込みのために開かれていると、削除できません。 |
CSVリコンシリエーション・フォーマット・プロバイダは、文字区切り、タブ区切りまたは固定長形式のリコンシリエーション・データをOracle Identity Managerでサポートされている形式に変換します。
CSVリコンシリエーション・フォーマット・プロバイダはスタンドアロン・プロバイダとしてパッケージ化されていますが、そのパラメータはすべて共有ドライブ・トランスポート・プロバイダにバンドルされています。「ステップ1: 基本情報の指定」ページで共有ドライブ・トランスポート・プロバイダを選択した場合は、CSVフォーマット・プロバイダを選択する必要があります。このプロバイダを選択すると、そのパラメータが共有ドライブ・トランスポート・プロバイダのパラメータとともに表示されます。
SPMLプロビジョニング・フォーマット・プロバイダは、Oracle Identity Manager上でのプロビジョニング操作中に生成されたプロビジョニング・データをSPML対応のターゲット・システムで処理できるSPMLリクエストに変換します。
注意: 各SPMLリクエストはSOAPメッセージで送信されます。SOAPヘッダーには、リクエストの認証情報が含まれます。SPMLリクエストの実際のデータは、SOAPメッセージ本文に含まれます。 SPML-SOAPメッセージの構造の詳細は、第32章「SPMLサービスの使用」を参照してください。 サンプルSOAPメッセージは、次のディレクトリにあります。
OIM_HOME/GTC/Samples/spml
SPML仕様の詳細は、OASISのWebサイトの次のWebページを参照してください。 |
図17-1に、SPMLプロビジョニング・フォーマット・プロバイダがリクエスト局(RA)として機能し、ターゲット・システムがプロビジョニング・サービス・プロバイダ(PSP)およびプロビジョニング・サービス・ターゲット(PST)を提供するシステムの設定を示します。
実際のプロビジョニング中は、SOAP-SPMLリクエストの作成にVelocityテンプレート・エンジンが使用されます。次のプロセスでは、プロバイダがSPML 2.0 DSMLプロファイルに基づいてSOAPリクエストを生成します。
リクエストの追加
次のOracle Identity Managerプロセス・タスクに対するリクエストの変更:
フィールドの更新
子データの追加
子データの変更
子データの削除
リクエストの一時停止(Oracle Identity Managerプロセス・タスクの無効化)
リクエストの再開(Oracle Identity Managerプロセス・タスクの有効化)
リクエストの削除
「組織の作成」、「組織の更新」および「組織の削除」はサポートされていません。これは、汎用テクノロジ・コネクタ用に作成されたリソース・オブジェクトでは組織用のプロビジョニング操作がサポートされていないためです。「グループの作成」、「グループの更新」および「グループの削除」操作はサポートされていません。これは、グループのプロビジョニング操作がOracle Identity Managerでサポートされていないためです。
このプロバイダを選択すると、デフォルトでは、「「ステップ3: コネクタ構成の変更」ページ」で説明されている「ステップ3: コネクタ構成の変更」ページに、次のアイデンティティ・フィールドが「ID」
フィールドとともに表示されます。
objectClass
containerID
各プロビジョニング・タスク(「ユーザーの作成」や「ユーザーの変更」など)について、このプロバイダによってリクエストが事前定義済の形式で生成されます。
次の各項では、このプロバイダのパラメータについて説明します。
使用するアプリケーション・サーバーによっては、一部のランタイム・パラメータと設計パラメータは必須になり、一部のパラメータは固定値になります。次の各項では、これらのパラメータについて説明します。
SPMLプロビジョニング・フォーマット・プロバイダのランタイム・パラメータを次に示します。
SPMLプロビジョニング・フォーマット・プロバイダの設計パラメータを次に示します。
WSDLファイルでは、これはoperation
要素のsoapAction
属性の値になります。
WS-Security資格証明を使用して着信リクエストを認証するようにWebサービスが構成されている場合は、このチェック・ボックスを選択します。
注意: 「SPML WebサービスWSSEが構成されていますか。」チェック・ボックスを選択した場合は、このパラメータの値を指定する必要はありません。 |
これは、Webサービス用に定義した資格証明ネームスペースの名前です。多くの場合、このネームスペースはターゲット・ネームスペースと同じになります。
注意: 「SPML WebサービスWSSEが構成されていますか。」チェック・ボックスを選択した場合は、このパラメータの値を指定する必要はありません。 |
これは、ターゲット・システムへの接続に使用されるユーザー・アカウントの資格証明が格納される要素の名前です。つまり、SOAPメッセージ・ヘッダーのカスタム認証セクション内の親要素です。
注意: 「SPML WebサービスWSSEが構成されていますか。」チェック・ボックスを選択した場合は、このパラメータの値を指定する必要はありません。 |
これは、「ユーザー名(認証)」パラメータの値として指定するユーザー名が格納されるカスタム認証セクション内の要素の名前です。
注意: 「SPML WebサービスWSSEが構成されていますか。」チェック・ボックスを選択した場合は、このパラメータの値を指定する必要はありません。 |
これは、「ユーザー・パスワード(認証)」パラメータの値として指定するユーザー名が格納されるカスタム認証セクション内の要素の名前です。
SPML Webサービスのバインディング・スタイル(DOCUMENTまたはRPC)
WSDLファイルでは、これはbinding
要素のstyle
属性の値になります。DOCUMENT
またはRPC
を入力する必要があります。
注意: 値 |
WSDLファイルでは、これはcomplexType
要素のname
属性の値になります。このパラメータは、バインディング・スタイルがDOCUMENT
の場合にのみ適用されます。ターゲットWebサービスがOracle WebLogic Server上で実行されている場合は、このパラメータの値を指定する必要があります。
WSDLファイルでは、これはoperation
要素のname
属性の値になります。このパラメータは、バインディング・スタイルがRPC
の場合にのみ適用されます。
WSDLファイルでは、これはdefinition
要素のtargetNamespace
属性の値になります。
これは、SOAPメッセージ本文を含んでいるカスタム接頭辞要素の名前です。ターゲットWebサービスがOracle WebLogic Server、IBM WebSphere Application Server、JBoss Application ServerまたはOracle Application Server上で実行されている場合は、このパラメータの値を指定する必要はありません。ただし、別のアプリケーション・サーバーを使用している場合は、カスタム接頭辞要素の名前を入力する必要があります。次に、WebサービスがOracle WebLogic Server上で実行されている場合の接頭辞要素を示します。
<SPMLv2Document xmlns="http://xmlns.oracle.com/OIM/provisioning">
グループ・メンバーシップ情報を保持している子データセットのID属性
これは、グループ・メンバーシップ情報を保持しているプロビジョニング・ステージング子データセットの一意のアイデンティティ・フィールドの名前です。このフィールドを含む子データセットに対するプロビジョニング操作では、SOAPパケットにグループ操作のSPMLコードが含まれます。次に、この型のグループ操作のSPMLコード・ブロックを示します。
<modification modificationMode="add"> <capabilityData capabilityURI="urn:oasis:names:tc:SPML:2:0:reference" mustUnderstand="true"> <reference typeOfReference="memberOf" xmlns="urn:oasis:names:tc:SPML:2:0:reference"> <toPsoID ID="Groups:1" targeted="120"/> </reference> </capabilityData> </modification>
このフィールドを含まない子データセットに対するプロビジョニング操作では、SOAPパケットに通常のSPMLコードが含まれます。次に、この型のグループ操作のSPMLコード・ブロックを示します。
<modification> <dsml:modification name="Group Membership" operation="add"> <dsml:value>AdminOra, System Admins, USA</dsml:value> </dsml:modification> </modification>
Oracle WebLogic Serverでは、次のパラメータ値を指定する必要はありません。
SPML Webサービスの複合データ型
SPML WebサービスのSOAPメッセージ本文の接頭辞
グループ・メンバーシップ情報を保持している子データセットのID属性
Oracle WebLogic Serverでは、次のパラメータに事前定義済の値を指定できます。
WebサービスURL: http://
IP_address
:
port_number
/spmlws/OIMProvisioning
SPML Webサービスのバインディング・スタイル(DOCUMENTまたはRPC): RPC
SPML Webサービス操作名: processRequest
Webサービス・プロビジョニング・トランスポート・プロバイダは、Webサービス・クライアントとして機能し、プロビジョニング・リクエスト・データをOracle Identity Managerからターゲット・システムWebサービスに転送します。
次のタイプのターゲット・システムWebサービスがサポートされています。
RPCリテラル
RPCエンコード
DOCUMENTリテラル
Webサービス・プロビジョニング・トランスポート・プロバイダのパラメータを次に示します。
このパラメータを使用して、ターゲット・システムへのプロビジョニング・リクエストの送信に使用するWebサービスのURLを指定します。これはランタイム・パラメータです。WSDLファイルでは、WebサービスURLはwsdlsoap:address
要素のlocation
属性の値になります。
作成する汎用テクノロジ・コネクタにWebサービス・プロビジョニング・トランスポート・プロバイダを含める場合は、ターゲット・システムとOracle Identity Managerの間にSecure Sockets Layer(SSL)通信を構成する場合があります。次の項では、この手順の詳細を説明します。
この項では、Oracle Identity Managerがインストールされているアプリケーション・サーバーをSSL通信用に構成する手順について説明します。
この手順は、次の条件をすべて満たす場合にのみ実行できます。
作成する汎用テクノロジ・コネクタにWebサービス・プロビジョニング・トランスポート・プロバイダを含める場合。
ターゲットWebサービスがSSL対応アプリケーション・サーバー上で実行されている場合。
Oracle Identity Managerとターゲット・システムWebサービスの間のSSL通信を構成するには、次の手順を実行します。
注意: この手順は、汎用テクノロジ・コネクタを作成する前に実行できます。 |
次のようにしてターゲット・アプリケーション・サーバーの証明書をエクスポートします。
JBoss Application ServerまたはOracle WebLogic Server上にデプロイされているターゲット・システムWebサービスの場合は、次のコマンドを実行します。
JAVA_HOME/jre/bin/keytool -export -alias default -file exported-certificate-file -keystore app-server-specific-keystore -storetype jks –storepass keystore-password –provider sun.security.provider.Sun
このコマンドでは、次のように指定します。
JAVA_HOME
を、SUN JDKディレクトリのフルパスに置換します。
exported-certificate-file
を、エクスポートした証明書を格納するファイルの名前に置換します。
app-server-specific-keystore
を、アプリケーション・サーバーのキーストアのパスに置換します。
keystore-password
を、キーストアのパスワードに置換します。
IBM WebSphere Application ServerまたはAIX上のOracle WebLogic Server上にデプロイされているターゲット・システムWebサービスの場合は、次のコマンドを実行します。
JAVA_HOME/jre/bin/keytool -export -alias default -file exported-certificate-file -keystore app-server-specific-keystore -storetype jks –storepass keystore-password -provider com.ibm.crypto.provider.IBMJCE
このコマンドでは、次のように指定します。
JAVA_HOME
を、IBM JDKディレクトリのフルパスに置換します。
exported-certificate-file
を、エクスポートした証明書を格納するファイルの名前に置換します。
app-server-specific-keystore
を、アプリケーション・サーバーのキーストアのパスに置換します。
keystore-password
を、キーストアのパスワードに置換します。
コマンドを実行すると、エクスポートされた証明書ファイルはexported-certificate-file
の値で指定したファイルに格納されます。
次のようにして、前の手順でエクスポートした証明書ファイルをOracle Identity Managerのトラストストアにインポートします。
前の手順でエクスポートした証明書ファイルを、Oracle Identity Managerサーバーの一時ディレクトリにコピーします。
次のコマンドを実行します。
JAVA_HOME/jre/bin/keytool -import -trustcacerts -alias servercert -noprompt -keystore OIM_HOME\config\.xlkeystore -file certificate_file
このコマンドでは、次のように指定します。
JAVA_HOME
を、JDKディレクトリのフルパスに置換します。IBM WebSphere Application ServerにデプロイされているOracle Identity Management Serverの場合は、IBM JDKディレクトリのパスにする必要があります。JBoss Application ServerまたはOracle WebLogic ServerにデプロイされているOracle Identity Managerの場合は、SUN JDKディレクトリのパスにする必要があります。
OIM_HOME
を、Oracle Identity Managerホーム・ディレクトリのパスに置換します。
certificate_file
を、証明書ファイルをコピーした一時ディレクトリのパスに置換します。
注意: アプリケーション・サーバーで一方向SSL通信が有効化されている場合は、残りの手順を実行する必要はありません。 |
次のようにして、Oracle Identity Managerの証明書をターゲット・システム・アプリケーション・サーバーのトラストストアにインポートします。
注意: 次の手順は、アプリケーション・サーバーで双方向SSL通信が有効化されている場合にのみ実行します。 |
Oracle Identity Managerの証明書ファイルをエクスポートします。
Oracle WebLogic ServerにデプロイされているOracle Identity Managerの場合は、次のコマンドを実行します。
JAVA_HOME/jre/bin/keytool -export -alias xell -file OIM_HOME\config\xell.cert -keystore OIM_HOME\config\.xlkeystore -storetype jks –provider sun.security.provider.Sun
このコマンドでは、次のように指定します。
- JAVA_HOME
を、SUN JDKディレクトリのフルパスに置換します。
- OIM_HOME
を、Oracle Identity Managerホーム・ディレクトリのパスに置換します。
次のようにして、手順3aでエクスポートした証明書ファイルをアプリケーション・サーバーのトラストストアにインポートします。
エクスポートしたOracle Identity Managerの証明書ファイルを、ターゲット・アプリケーション・サーバー上の一時ディレクトリにコピーします。
次に、ターゲット・アプリケーション・サーバーで次のコマンドを実行します。
ターゲット・アプリケーション・サーバーがJBoss Application ServerまたはOracle WebLogic Serverである場合は、次のコマンドを実行します。
JAVA_HOME/jre/bin/keytool –import –alias alias -trustcacerts -file OIM-certificate-file -keystore app-server-specific-truststore -storetype jks –storepass truststore-password –provider sun.security.provider.Sun
このコマンドでは、次のように指定します。
* JAVA_HOME
を、SUN JDKディレクトリのフルパスに置換します。
* alias
を、ターゲット・アプリケーション・サーバーのトラストストアにある証明書の別名に置換します。
* OIM-certificate-file
を、エクスポートしたOracle Identity Manager証明書ファイルの名前に置換します。
* app-server-specific-truststore
を、ターゲット・アプリケーション・サーバーのトラストストアのパスに置換します。
* truststore-password
を、ターゲット・アプリケーション・サーバーのトラストストアのパスワードに置換します。
ターゲット・アプリケーション・サーバーがIBM WebSphere Application Serverである場合は、次のコマンドを実行します。
JAVA_HOME/jre/bin/keytool -import -alias alias -trustcacerts -file OIM-certificate-file -keystore app-server-specific-truststore -storetype pkcs12 –storepass truststore-password -provider com.ibm.crypto.provider.IBMJCE
このコマンドでは、次のように指定します。
* JAVA_HOME
を、SUN JDKディレクトリのフルパスに置換します。
* alias
を、ターゲット・トラストストアにある証明書の別名に置換します。
* OIM-certificate-file
を、エクスポートした
Oracle Identity Manager証明書ファイルの名前に置換します。
* app-server-specific-truststore
を、ターゲット・アプリケーション・サーバーのトラストストアのパスに置換します。
* truststore-password
を、ターゲット・アプリケーション・サーバーのトラストストアのパスワードに置換します。
関連項目: ターゲット・アプリケーション・サーバーについては、SSL構成のドキュメントを参照してください。 |
変換プロバイダは、次の表に示すソース・データセットと宛先データセットの間で移動中のユーザー・データを変換するために使用されます。
ソース・データセット | 宛先データセット | 変換の目的 |
---|---|---|
ソース |
リコンシリエーション・ステージング |
リコンシリエーション・イベントの作成に使用する前にデータを変換します。 |
Oracle Identity Manager |
プロビジョニング・ステージング |
ターゲット・システムに送信されるプロビジョニング・リクエストの作成に使用する前にデータを変換します。 |
Oracle Identity Managerでは、次の事前定義済変換プロバイダが使用できます。
連結変換プロバイダは、データセットの2つのフィールドの値を連結して、別のデータセットの単一フィールドへの入力を作成するために使用します。
次の例では、このプロバイダの出力形式について説明します。
入力値がソース・データセットの次のフィールドであるとします。
名: John
姓: Doe
連結変換プロバイダをこの2つのフィールドに適用すると、出力値は次のようになります。
John Doe
注意: 前述の例に示すように、連結変換プロバイダでは2つの入力フィールドの値の間に空白が追加されます。 |
次の手順では、汎用テクノロジ・コネクタの作成中に連結変換プロバイダを追加する方法について説明します。
注意: この手順では、第19.2.4.3.1項「データセットのフィールドの追加または編集」の手順5に記載されている手順を詳しく説明しています。ここでは、「ステップ1: フィールド情報」ページの「アクションのマッピング」リストから「連結」オプションを選択し、その項の手順2と3をすでに実行したことを前提にしています。 |
ポップアップ・ウィンドウの「ステップ2: マッピング」ページで、次の手順を実行します。
「入力1」リージョンの「データセット」リストから、連結する最初のフィールドを含むデータセットを選択します。「フィールド名」リストから最初のフィールドを選択します。または、「リテラル」オプションを使用してリテラル(固定)値を最初の連結入力として指定することも可能です。
前述の例の場合は、「入力1」リージョンの「データセット」リストから、「名」フィールドを含むデータセットを選択します。次に、「フィールド名」リストから「名」を選択します。
「入力2」リージョンの「データセット」リストから、連結する2番目のフィールドを含むデータセットを選択します。次に、「フィールド名」リストから2番目のフィールドを選択します。または、「リテラル」オプションを使用してリテラル(固定)値を2番目の連結入力として指定することも可能です。
前述の例の場合は、「入力2」リージョンの「データセット」リストから、「姓」フィールドを含むデータセットを選択します。次に、「フィールド名」リストから「姓」を選択します。
変換操作では、特定の(リテラル)値を入力として受け入れ、それを別の値に変換します。
次に変換操作の例を示します。
「ソース」データセットに「国」フィールドが含まれており、このフィールドに格納されているデータ値が次のいずれかの値を取ることができるとします。
オーストリア
フランス
ドイツ
インド
日本
これらの値をリコンシリエーション・ステージング・データセットに伝播する場合、それぞれの値を次のように変換するとします。
AT
FR
DE
IN
JP
この変換を自動化するには、翻訳変換プロバイダを使用できます。
翻訳変換プロバイダを使用するには、次の手順を実行します。
Design Consoleを使用して、入力およびデコード値を格納する参照定義を作成します。
注意: 参照定義を「参照定義」フォームで作成する場合は、フィールド・タイプ・オプションではなく参照タイプ・オプションを選択する必要があります。 |
前述の「国」フィールドの例では、コード・キーおよびデコードは次の表に示す値になります。
コード・キー | デコード |
---|---|
オーストリア |
AT |
フランス |
FR |
ドイツ |
DE |
インド |
IN |
日本 |
JP |
変換対象の入力フィールドと出力フィールドの間の変換マッピングを定義します。前述のとおり、変換は次のデータセットのペア間で設定できます。
「ソース」と「リコンシリエーション・ステージング」
「Oracle Identity Manager」とプロビジョニング・ステージング
注意: この手順では、第19.2.4.3.1項「データセットのフィールドの追加または編集」の手順5に記載されている手順を詳しく説明しています。ここでは、「ステップ1: フィールド情報」ページの「アクションのマッピング」リストから「連結」オプションを選択し、その項の手順2と3をすでに実行したことを前提にしています。 |
「ステップ3: マッピング」ページで、「入力」リージョンの「データセット」リストから、変換操作を行う入力値を提供するフィールドのあるデータセットを選択します。次に、「フィールド名」リストからフィールド自体を選択します。
前述の「国」フィールドの例では、「国」フィールドがあるデータセットを選択してから、「国」フィールドを選択します。
「参照コード名」リージョンで、「リテラル」を選択し、前の手順で作成した参照定義の名前を入力します。
注意: 「参照コード名」リージョンではデータセット名およびフィールドを指定しないでください。データセット名およびフィールドの選択を無効にする検証は行われませんが、実際のリコンシリエーションまたはプロビジョニングの操作時に変換操作に失敗します。 これについては、「マッピング」にも記載されています。 |
前述の「国」フィールドの例では、「リテラル」を選択し、手順1で作成した参照定義を選択します。
ユーザー・アカウント・ステータス情報は、ターゲット・システム・アカウントの所有者によるアカウントへのアクセスおよびアカウントの使用が許可されるかどうかの追跡に使用されます。必要に応じて、翻訳変換プロバイダを使用してアカウント・ステータス情報をリコンサイルできます。
注意: Design Consoleでは、アカウント・ステータスのリコンシリエーションを構成する別の方法が提供されます。この方法では、汎用テクノロジ・コネクタは使用しません。第5.3.2.2.1項「ユーザー・アカウント・ステータスのリコンシリエーション」に、この方法の説明があります。 |
翻訳変換プロバイダを使用する必要があるのは、ターゲット・システムで使用されるアカウント・ステータスの値が、Oracle Identity Managerで使用される値と同じでない場合のみです。ターゲット・リソースに対して、Oracle Identity Managerでは次の値が使用されます。
有効状態: Enabled
無効状態: Disabled
信頼できるソースに対しては、Oracle Identity Managerでは次の値が使用されます。
有効状態: Active
無効状態: Disabled
次に、アカウント・ステータスのリコンシリエーションを構成する手順を簡単に説明します。
注意: これらの手順の詳しい説明はこの項で後述します。 |
ターゲット・システムで使用されるステータス値とOracle Identity Managerで使用される値をマップする参照定義を作成します。
汎用テクノロジ・コネクタを作成する際に、翻訳変換プロバイダを使用して、「ソース」データセットとリコンシリエーション・ステージング・データセットのアカウント・ステータス値を含むフィールド間に変換マッピングを作成します。
次に、実行する必要があるアクションの例を示します。
アカウント・ステータス値を保持するために次のフィールドが使用されているとします。
「ソース」データセットの「ユーザー・ステータス」フィールドには、True
(Enabled状態のユーザー)とFalse
(Disabled状態のユーザー)の値が含まれます。
リコンシリエーション・ステージング・データセットの「ユーザー・ステータス」フィールドは、次のいずれかの組合せの値を保持する必要があります。
ターゲット・リソースのリコンシリエーションでは、このフィールドはEnabled
またはDisabled
を含む必要があります。
信頼できるソースのリコンシリエーションでは、このフィールドはActive
またはDisabled
を含む必要があります。
「ソース」データセットの「ユーザー・ステータス」フィールドのTrue/False
値をEnabled/Disabled
値またはActive/Disabled
値に変換する変換マッピングを作成する必要があります。リコンシリエーション時には、これらの変換された値がリコンシリエーション・ステージング・データセットの「ユーザー・ステータス」フィールドに送信されます。
リコンシリエーション・ステージング・データセットでアカウント・ステータス値を保持するフィールドと、次のいずれかのフィールドの間のマッピングを作成します。
「OIM - アカウント」データセットの「OIMオブジェクト・ステータス」フィールド(ターゲット・リソースのリコンシリエーションの場合)
「OIM - ユーザー」データセットの「ステータス」フィールド(信頼できるソースのリコンシリエーションの場合)
リコンシリエーション時には、このマッピングが使用されて、リコンシリエーション・ステージング・データセットのステータス値が「OIM - アカウント」または「OIM - ユーザー」データセットに伝播されます。
アカウント・ステータスのリコンシリエーションを構成する詳しい手順を次に示します。
ターゲット・システムで使用されるステータス値とOracle Identity Managerで使用される値をマップする参照定義を作成します。
参照定義のコード・キーの値は、ターゲット・システムでアカウント・ステータスを表すために使用されている値と同じである必要があります。信頼できるリソースとターゲット・リソースの両方のリコンシリエーションのコード・キーおよびデコードの値を次の表に示します。
コード・キー | デコード(信頼できるソースのリコンシリエーションの場合) | デコード(ターゲット・リソースのリコンシリエーションの場合) |
---|---|---|
Enabled状態のユーザー・アカウントのターゲット・システム・ステータス値 |
|
|
Disabled状態のユーザー・アカウントのターゲット・システム・ステータス値 |
|
|
コード・キー値の例には、True
/False
、Yes
/No
および1
/0
があります。デコードの値は、表に示すとおり(大/小文字も含めて)正確に設定する必要があります。
注意: 参照定義を「参照定義」フォームで作成する場合は、フィールド・タイプ・オプションではなく参照タイプ・オプションを選択する必要があります。 |
汎用テクノロジ・コネクタを作成する手順は、第19章「汎用テクノロジ・コネクタの作成および管理」で説明されています。汎用テクノロジ・コネクタを作成するときは、次の手順を「ステップ3: コネクタ構成の変更」ページで実行します。
ターゲット・システムのステータス・フィールドが「ステップ3: コネクタ構成の変更」ページに表示されている場合は、リコンシリエーション・ステージング・データセットのフィールドに対する「編集」アイコンをクリックします。
フィールドが表示されていない場合は、リコンシリエーション・ステージング・データセットの「追加」アイコンをクリックします。
「ステップ1: フィールド情報」ページで次のGUI要素の値を指定します。
フィールド名: フィールドを追加する場合は、そのフィールドの名前を指定します。非ASCII文字は使用できないため、指定するフィールド名にはASCII文字のみを使用します。
アクションのマッピング: このリストで「変換ありでマッピングの作成」を選択します。
一致のみ: このチェック・ボックスは選択しないでください。
エンドツーエンド・マッピングの作成: フィールドを追加する場合は、このチェック・ボックスを選択します。
複数値フィールド: このチェック・ボックスは選択しないでください。
データ型: フィールドのデータ型を選択します。
長さ: フィールドの文字の長さを指定します。
必須: フィールドに値が常に入力されるようにするには、このチェック・ボックスを選択します。
暗号化: このチェック・ボックスは選択しないでください。
パスワード・フィールド: このチェック・ボックスは選択しないでください。
「続行」をクリックします。
「ステップ3: マッピング情報の指定」ページで次の手順を実行します。
「入力」リージョンで次のようにします。
「データセット」リストで「ソース」を選択します。
「フィールド名」リストで、ステータス値を含むフィールドを選択します。
「参照コード名」リージョンで、「リテラル」を選択し、手順1で作成した参照定義の名前を入力します。
必要な場合は、フィールドの検証チェックを選択して「追加」をクリックします。つまり、使用する検証プロバイダを選択します。
「続行」をクリックし、「閉じる」をクリックします。
リコンシリエーション・ステージング・データセットのステータス・フィールドと、「OIM - アカウント」データセットの「OIMオブジェクト・ステータス」フィールドまたは「OIM - ユーザー」データセットの「ステータス」フィールドのいずれかの間で、次のようにマッピングを作成します。
ターゲット・リソースのリコンシリエーションの場合は、「OIM - アカウント」データセットの「OIMオブジェクト・ステータス」フィールドの編集アイコンをクリックします。
ターゲット・リソースのリコンシリエーションの場合は、「OIM - ユーザー」データセットの「ステータス」フィールドの編集アイコンをクリックします。
注意: リコンシリエーション・ステージング・データセットのステータス・フィールドと、「OIMオブジェクト・ステータス」フィールドまたは「ステータス」フィールドの間にマッピングがすでに存在する場合は、必要な場合にのみこの手順を使用します。 |
「ステップ1: フィールド情報」ページで次のGUI要素の値を指定します。
アクションのマッピング: このリストで「変換なしでマッピングの作成」を選択します。
一致のみ: このチェック・ボックスは選択しないでください。
「続行」をクリックします。
「ステップ3: マッピング」ページの「入力」リージョンで、リコンシリエーション・ステージング・データセットのステータス・フィールドを選択します。
「続行」をクリックし、さらに「続行」をクリックしてから、「閉じる」をクリックします。
「ステップ3: コネクタ構成の変更」ページに表示されるその他のフィールドを追加または編集するには、第19.2.4.3.1項「データセットのフィールドの追加または編集」に示されている手順を実行します。
表17-1に、Oracle Identity Managerに含まれている検証プロバイダを示します。
注意: 日付書式の検証プロバイダを除き、この表のすべてのプロバイダはApache Jakarta Commons APIの |
表17-1 検証プロバイダ
検証プロバイダ | 説明 |
---|---|
IsBlankOrNull |
フィールド値がNULLであり空白ではない場合にtrueを返します。 |
IsInRange |
フィールド値が最小値と最大値のペアで指定された範囲内である場合にtrueを返します。 |
IsByte |
フィールド値を基本型byteに変換できるかどうかをチェックします。 |
IsDouble |
フィールド値を基本型doubleに変換できるかどうかをチェックします。 |
IsFloat |
フィールド値を基本型floatに変換できるかどうかをチェックします。 |
IsInteger |
フィールド値を基本型integerに変換できるかどうかをチェックします。 |
IsLong |
フィールド値を基本型longに変換できるかどうかをチェックします。 |
IsShort |
フィールド値を基本型shortに変換できるかどうかをチェックします。 |
MatchRegexp |
フィールド値が指定の正規表現と一致するかどうかをチェックします。 注意: 正規表現は、一連の文字列を特定の構文ルールに従って記述または一致させるために使用する文字列です。 |
MaxLength |
フィールド値の長さが指定値以下かどうかをチェックします。 |
MinLength |
フィールド値の長さが指定値以上かどうかをチェックします。 |
日付書式の検証 |
ターゲット・システム・レコード内の日付値を、Oracle Identity Managerへのリコンサイル前に検証します。 「ソース日付書式」パラメータの値が検証の基礎として使用されます。この検証プロバイダは、「ステップ2: パラメータ値の指定」ページで「ソース日付書式」パラメータの値を指定した場合、このプロバイダを「ステップ3: コネクタ構成の変更」ページで選択するかどうかに関係なく適用されます。 注意: この表の他のプロバイダとは異なり、「日付書式の検証」はApache Jakarta Commons APIの |