11 Oracle Data Integratorでのセキュリティの管理
この章の内容は次のとおりです。
-
Oracle Access Manager 11gを使用したOracle Data IntegratorコンソールおよびEnterprise Managerのシングル・サインオン(SSO)の構成
Oracle Data Integratorのセキュリティの概要
Oracle Data Integratorのセキュリティは、Oracle Data Integratorの設計時アーティファクト、ランタイム・アーティファクトおよびコンポーネントに対して認証されたユーザーが実行したすべてのアクションを保護するために使用されます。
Oracle Data Integratorのセキュリティ・モデルでは、メソッド、オブジェクト・タイプまたは特定のオブジェクト・インスタンスに関する権限をユーザーに付与することが基本になっています。
Oracle Data Integratorに関するすべてのセキュリティ情報はマスター・リポジトリに格納されます。
この項では、次の項目について説明します。
オブジェクト、インスタンスおよびメソッド
オブジェクトは、Oracle Data Integratorを介して処理されたデザインタイム・アーティファクトまたはランタイム・アーティファクトの表現です。オブジェクトの例には、エージェント、プロジェクト、モデル、データストア、シナリオ、マッピング、リポジトリなどが含まれます。特定のオブジェクトには、エージェント/コンテキストおよびプロファイル/メソッドなど2つの名前があります。これらのオブジェクトは、オブジェクト間のリンクを表し、これらのリンクもオブジェクトです。たとえば、エージェント/コンテキストは、コンテキストを介して関連付けられた物理/論理エージェントに対応しています。このオブジェクトに対する権限により、トポロジでこの関連付けを変更することが可能になります。
インスタンスは、オブジェクトに関する特定の発生例です。たとえば、データウェアハウス
・プロジェクトは、プロジェクト
・オブジェクトのインスタンスです。
メソッドは、編集、削除など、オブジェクトに対して実行できるアクションです。各オブジェクトには、事前定義された一連のメソッドがあります。
注意:
Oracle Data Integratorのオブジェクト・インスタンスとメソッドの概念は、オブジェクト指向プログラミングで使用されている概念に類似しています。
警告:
オブジェクトとメソッドはセキュリティ・ナビゲータに表示されますが、Oracle Data Integratorに事前定義されているオブジェクトとメソッドは変更できません。
プロファイル
プロファイルには、Oracle Data Integratorを使用するための権限セットが含まれています。1つ以上のプロファイルをユーザー(またはロール)に割り当て、それらのプロファイルに含まれるすべての権限をユーザー(またはロール)に付与できます。
プロファイル・メソッドは、オブジェクト・タイプのメソッドのプロファイルに付与される認可です。付与された各メソッドにより、このプロファイルを持つユーザーは、あるオブジェクト・タイプのすべてのインスタンスに対してアクションを実行できます。
Oracle Data Integrator Studioでは、プロファイルに付与されたメソッドは、セキュリティ・ナビゲータの「プロファイル」ナビゲーション・ツリーにあるこのプロファイルの下に表示されます。特定プロファイルにメソッドが表示されない場合、そのプロファイルからメソッドにアクセスすることはできません。
メソッドは、次のように一般権限または一般以外の権限として付与できます。
-
一般権限として付与されるメソッドは、オブジェクトのすべてのインスタンスにデフォルトで付与されます。
-
一般以外の権限として付与されるメソッドは、オブジェクトのすべてのインスタンスにはデフォルトで付与されませんが、インスタンスごとに付与できます。
汎用プロファイルと非汎用プロファイル
汎用プロファイルでは、すべてのオブジェクト・メソッドに対して一般権限オプションが選択されます。これは、このようなプロファイルのユーザーまたはロールは、汎用プロファイルが認可されているオブジェクトのすべてのインスタンスに関するすべてのメソッドに対して、デフォルトで認可されることを意味します。
非汎用プロファイルでは、すべてのオブジェクト・メソッドに対して一般権限オプションが選択されないため、インスタンスのすべてのメソッドがデフォルトで認可されません。各インスタンスのメソッドに対する権限をユーザーまたはロールに付与する必要があります。
ユーザーまたはロールにどのインスタンスに対する権限もデフォルトで付与せず、インスタンスごとに権限を付与する場合は、そのユーザーまたはロールに非汎用プロファイルを指定する必要があります。
ユーザーまたはロールにオブジェクト・タイプのすべてのインスタンスに対する権限をデフォルトで付与する場合は、そのユーザーまたはロールに汎用プロファイルを指定する必要があります。
組込みプロファイル
Oracle Data Integratorには組込みプロファイルがあり、作成したユーザーまたはロールに割り当てることができます。
表11-1に、Oracle Data Integratorに付属の組込みプロファイルを示します。
表11-1 組込みプロファイル
プロファイル名 | 説明 |
---|---|
CONNECT |
Oracle Data Integratorに接続するための基本権限を付与するプロファイル。別のプロファイルとともに付与する必要があります。 |
CONSOLE |
Oracle Data Integratorを使用するための権限を付与するプロファイル。 |
DESIGNER |
開発操作を実行するための権限を付与するプロファイル。このプロファイルは、主にプロジェクトで作業するユーザーに対して使用します。 |
METADATA_ADMIN |
メタデータを管理するための権限を付与するプロファイル。このプロファイルは、主にモデルで作業するユーザーに対して使用します。 |
NG_CONSOLE |
非汎用バージョンのCONSOLEプロファイル。 |
NG_DESIGNER |
非汎用バージョンのDESIGNERプロファイル。 |
NG_METADATA_ADMIN |
非汎用バージョンのMETATADA_ADMINプロファイル。 |
NG_VERSION_ADMIN |
非汎用バージョンのVERSION_ADMINプロファイル。 |
OPERATOR |
ランタイム・オブジェクトを管理するための権限を付与するプロファイル。このプロファイルは、本番のユーザーに対して使用します。 |
RELEASE_MANAGER |
デプロイメント・アーカイブを介してリリース管理タスクを実行するための権限を付与するプロファイル。 |
SECURITY_ADMIN |
セキュリティを編集するための権限を付与するプロファイル。このプロファイルはセキュリティ管理者に対して使用します。 |
TOPOLOGY_ADMIN |
トポロジを編集するための権限を付与するプロファイル。このプロファイルは、システム管理者またはOracle Data Integrator管理者に対して使用します。 |
VCS_ADMIN |
SVNシステム、作成タグおよびブランチを構成するための権限を付与するプロファイル。 |
VERSION_ADMIN |
バージョンおよびソリューションを作成、リストアおよび編集するための権限を付与するプロファイル。このプロファイルは、プロジェクト・マネージャや、バージョン管理操作の実行を担当する開発者に対して使用します。 |
注意:
組込みプロファイルはOracle Data Integratorの新規機能の保護に関連しているため変更しないようにしてください。自分のプロファイルまたは既存のプロファイルをカスタマイズする場合は、組込みプロファイルのコピーを作成し、そのコピーをカスタマイズすることをお薦めします。
ユーザー
ユーザーは、Oracle Data Integratorのユーザーです。ユーザーは、次の権限を継承します。
-
様々なプロファイルに付与されているすべての権限
-
ユーザーに割り当てられているオブジェクトまたはインスタンス(あるいはその両方)に対する権限
ユーザー・メソッドは、ユーザーに付与されるオブジェクト・タイプのメソッドに対する権限です。付与された各メソッドによって、ユーザーは、オブジェクト・タイプ(プロジェクト、モデル、データストアなど)のインスタンスに対してアクション(編集、削除など)を実行できます。これらのメソッドは、ユーザーに適用されている点以外はプロファイル・メソッドに類似しています。
ユーザーには、特定の作業リポジトリのインスタンスに対する権限を付与できます(インスタンスが存在する場合)。たとえば、開発者ユーザーに、PRODUCTIONリポジトリではなく、DEVELOPMENTリポジトリのLOAD_DATAWAREHOUSEシナリオに対する編集権限を付与できます。
オブジェクト・インスタンス別認可をオブジェクト・インスタンス上のユーザーに付与します。このオブジェクト・インスタンスのこのユーザー特定のメソッドに権限を付与できます。
ユーザーのツリーに表示されるある特定のインスタンスに、オブジェクト・インスタンス別認可が存在する場合、そのユーザーに、そのインスタンスのオブジェクト・メソッドに対する特定の権限が付与されていることを示します。これらの権限は、オブジェクト・インスタンス・エディタで指定します。インスタンスがユーザーのインスタンスのツリーに表示されない場合は、そのオブジェクト・タイプに対してユーザー・メソッド権限またはプロファイル・メソッド権限が適用されます。
インスタンスはマスター・リポジトリに連結されている別の作業リポジトリにレプリケートできるため、オブジェクト・インスタンス別認可は、マスター・リポジトリに連結されている作業リポジトリの1つまたは複数、あるいはすべてに対して定義できます。たとえば、LOAD_DATAWAREHOUSEシナリオ・インスタンスは、DEVELOPMENT、TESTおよびPRODUCTIONの各リポジトリにバージョニングなどを使用してレプリケートできます。インスタンスの権限は、リポジトリに応じて変更できます。たとえば、一般的に、開発リポジトリのプロジェクトはテスト・リポジトリにレプリケートされます。開発者に対して、開発リポジトリ内のその開発者のプロジェクトに対する編集権限を付与することはできますが、テスト・リポジトリ内のプロジェクトには付与できません。テスト・リポジトリで開発者に付与されるのは、プロジェクトに対する表示権限のみです。
ロール
Oracle Data Integratorが、外部認証(「外部認証の構成」を参照)を使用するように構成されている場合は、Oracle Data Integratorのエンタープライズ・ロール統合機能を利用できます。Oracle Data Integratorのエンタープライズ・ロール統合は、Oracle Platform Security Services (OPSS)の認可モデルに基づいています。この機能を利用すると、エンタープライズ・ロールをOracle Data Integratorロールにマップできるため、特定のエンタープライズ・ロールのエンタープライズ・ユーザーは、マッピングでOracle Data Integratorロールに付与された権限を使用して、Oracle Data Integratorにアクセスできます。
Oracle Data Integratorのエンタープライズ・ロール統合を使用すると、次の操作を実行できます。
-
Oracle Data Integratorロールのセットの作成。
-
Oracle Data IntegratorロールへのOracle Data Integrator権限(インスタンス・レベルおよびタイプ・レベル)およびプロファイルの付与。
-
Oracle Data Integratorロールへの、外部アイデンティティ・ストアで定義されたエンタープライズ・プリンシパル(つまり、ユーザーまたはロール)のマップ。
-
Oracle Data Integratorへのアクセスが認証されたユーザーに付与された権限の、ユーザーが直接的またはエンタープライズ・ロールを介して間接的にマップされたすべてのOracle Data Integratorロールを評価することによる決定。(権限は、認可中に自動的に計算されます。)
エンタープライズ・ロールの詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』のユーザーおよびロールの理解に関する項を参照してください。Oracle Data Integratorでのエンタープライズ・ロール統合の機能およびOracle Data Integrator Studioでのロールの管理方法の詳細は、「アイデンティティ・ストアで定義されたプリンシパルのOracle Data Integratorロールへのマッピング」を参照してください。
ユーザー管理
この項では、様々なセキュリティ機能を使用してOracle Data Integratorでセキュリティを実施する方法について説明します。
この項では、次の項目について説明します。
セキュリティ・ポリシーの手法
Oracle Data Integratorのセキュリティを定義するには、主に次の2つの手法があります。
-
保護強化手法: ユーザーにはオブジェクトに対する認可がデフォルトで付与されません。この手法で使用するのは、非汎用プロファイルのみです。セキュリティ管理者は、ユーザーにオブジェクト・インスタンスに対する認可を付与する必要があります。このポリシーの構成は、権限をインスタンス別に管理する必要があるため複雑です。
-
一般的手法: ユーザーは、保持しているプロファイルの権限を継承します。このポリシーは、ほとんどの環境に適しており、構成が簡単です。
保護強化手法を実装するには:
-
ユーザーを作成します。
-
ユーザーに非汎用プロファイル(組込みまたはカスタマイズ)を指定します。
-
オブジェクト・インスタンスの作成後に、それらのインスタンスの権限をユーザーに付与します。この操作は、新規のインスタンスすべてについて繰り返す必要があります。
一般的手法を実装するには:
-
ユーザーを作成します。
-
ユーザーに汎用プロファイル(組込みまたはカスタマイズ)を指定します。
注意:
汎用プロファイルと非汎用プロファイルを同時に使用すると、2つの手法を組み合せることができます。たとえば、ユーザーに対してDESIGNERとNG_METADATA_ADMINを使用すると、一般的手法でプロジェクトを管理し、保護強化手法でモデルを管理できます。
プロファイルの管理
作成、削除または複製できます。プロファイルの作成または複製により、ユーザーに割り当てたプロファイルのカスタマイズが可能です。次の各トピックでは、Oracle Data Integrator Studioでこれらの処理を実行するステップを説明します。
新規プロファイルの作成
プロファイルを作成するには、次のようにします。
- セキュリティ・ナビゲータで、「プロファイル」ナビゲーション・ツリーを展開します。
- 「プロファイル」ナビゲーション・ツリーのツールバーで、「新規プロファイル」をクリックします。
- 「名前」フィールドに、プロファイルの名前を入力します。
- 「ファイル」メイン・メニューから「保存」を選択します。
新規プロファイルが表示されます。
プロファイルの複製
プロファイルを複製するには:
- セキュリティ・ナビゲータで、「プロファイル」ナビゲーション・ツリーを展開します。
- プロファイルのリストから複製するプロファイルを選択します。
- 右クリックして「複製」を選択します。
新規プロファイルが表示されますが、これは元のプロファイルのコピーです。
ユーザーの管理
ユーザーの管理方法は、ある程度、ユーザーが定義されている場所によって異なります。デフォルトでは、ユーザーはリポジトリへの接続に使用されるログイン名に対応し、Oracle Data Integratorの内部リポジトリに維持されます。ただし、Oracle Data Integratorコンポーネントに対して外部認証が有効になっている場合は、次のようになります。
-
Oracle Data Integratorへのアクセスが認証されたユーザーは、Oracle Internet Directoryなどの外部アイデンティティ・ストアで作成および管理されます。ストアに用意されているツールおよびユーティリティを使用して、ユーザーを作成、更新および削除します。
-
外部ユーザーによるOracle Data Integratorへのアクセスを許可するには、次のいずれかの操作を行います。
-
外部ユーザーをOracle Data Integratorロールにマップする。
-
この外部ユーザーが属しているエンタープライズ・ロールのいずれかをOracle Data Integratorロールにマップする。
-
以前のリリースと同様に、セキュリティ・ナビゲータを使用して外部ユーザーをOracle Data Integratorに登録する。
-
-
Oracle Data Integratorに登録されている外部ユーザーには、プロファイルまたはその他のセキュリティ権限を直接割り当てることが可能です。または、プロファイルやその他のセキュリティ権限をOracle Data Integratorロールに割り当ててから、外部ユーザー(または、外部ユーザーのエンタープライズ・ロールのいずれか)をそのOracle Data Integratorロールにマップすることもできます。2つ目の方法の場合、外部ユーザーはOracle Data Integratorロールに付与されたすべてのプロファイルおよび権限を継承することが可能です。
エンタープライズ・ユーザー(または、ユーザーのエンタープライズ・ロール)を複数のOracle Data Integratorロールにマップすることもできます。ユーザーが認証されると、ユーザーの権限が、マッピングですべてのOracle Data Integratorロールに付与されたすべての権限の和集合として計算されます。
外部認証の詳細は、「外部認証の構成」を参照してください。エンタープライズ・ロール統合の詳細は、「アイデンティティ・ストアで定義されたプリンシパルのOracle Data Integratorロールへのマッピング」を参照してください。
内部リポジトリへの新規ユーザーの作成
Oracle Data Integratorの内部リポジトリにユーザーを作成するには:
新規ユーザーが「ユーザー」ナビゲーション・ツリーに表示されます。「ユーザー」エディタから、ODIスーパーバイザ・ユーザーは他のODIユーザー・アカウント(他のスーパーバイザ・アカウントを含む)を無効にできます。
警告:
常に、少なくとも1つのスーパーバイザ・ユーザー・アカウントを保持する必要があります。すべてのスーパーバーザ・ユーザー・アカウントの有効期限が切れた場合は、Oracleサポートに連絡してください。
ユーザーへのプロファイルの割当て
プロファイルをユーザーに割り当てるには:
- セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーおよび「プロファイル」ナビゲーション・ツリーを展開します。
- 割り当てるプロファイルを選択し、割当先のユーザーにドラッグします。
- 「確認」ダイアログで、「OK」をクリックします。
このプロファイルが、割当先ユーザーのプロファイルの下に表示されます。このプロファイルに関連付けられている権限がユーザーに即時に付与されます。
注意:
外部認証が有効な場合、プロファイルをロールに割り当てることができます。特定のOracle Data Integratorロールに定義されているユーザーには、そのロールに割り当てられているすべてのプロファイルが付与されます。エンタープライズ・ロール統合では、より便利で大雑把な手法を使用してユーザーに付与された権限を管理します。詳細は、「Oracle Data Integratorロールへの権限またはプロファイルの割当て」を参照してください。
ユーザーのプロファイルの削除
ユーザーのプロファイルを削除するには:
- セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーを展開します。
- ユーザーの下にある「プロファイル」ノードを展開します。
- 削除するプロファイルを右クリックします。
- 「削除」を選択します。
- 「確認」ダイアログで、「OK」をクリックします。
このユーザーに割り当てられているプロファイルのリストから、該当のプロファイルが削除されます。このプロファイルによってユーザーに付与されていたすべての権限が削除されます。
注意:
外部認証が有効な場合、ロールからプロファイルを削除できます。特定のOracle Data Integratorロールに定義されているユーザーには、そのロールに割り当てられているプロファイルのみが付与されます。詳細は、「Oracle Data Integratorロールへの権限またはプロファイルの割当て」を参照してください。
内部リポジトリのユーザーの削除
Oracle Data Integratorの内部リポジトリに定義されているユーザーを削除するには:
- セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーを展開します。
- ユーザーのリストから削除するユーザーを選択します。
- 右クリックして「削除」を選択します。
- 「確認」ウィンドウで「OK」をクリックします。
ユーザーがリストから削除されます。
権限の管理
ユーザーおよびプロファイルを作成した後は、これらのユーザーに権限を付与できます。付与できるのは、オブジェクト・タイプに適用するプロファイル・メソッドとユーザー・メソッド、および特定のオブジェクト・インスタンスに適用するオブジェクト・インスタンス別認可(ユーザー用のみ)です。
注意:
Oracle Data Integratorコンポーネントで外部認証が有効な場合、エンタープライズ・ロール統合機能を使用してユーザーの権限をより適切に管理できます。詳細は、「ロール・エディタの使用」を参照してください。
プロファイル・メソッドまたはユーザー・メソッドの付与
プロファイル・メソッドまたはユーザー・メソッドを付与するには:
- セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーまたは「プロファイル」ナビゲーション・ツリーを展開します。
- 「オブジェクト」ナビゲーション・ツリーを展開し、権限を付与するオブジェクトのノードを展開します。
- 付与するメソッドを選択し、そのメソッドを付与するユーザーまたはプロファイルにドラッグします。
- 「確認」ウィンドウで「OK」をクリックします。
メソッドがユーザーまたはプロファイルに付与されます。このメソッドは、ユーザーのオブジェクト・ノードの下またはプロファイルの下に表示されます。
注意:
オブジェクトのすべてのメソッドに対する権限を付与するには、メソッドの1つをドラッグするかわりに、オブジェクト自体をユーザーまたはプロファイル上にドラッグします。
プロファイル・メソッドまたはユーザー・メソッドの取消し
プロファイル・メソッドまたはユーザー・メソッドを取り消すには:
- セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーまたは「プロファイル」ナビゲーション・ツリーを展開します。
- 権限を取り消す「プロファイル」、またはユーザーの下にある「オブジェクト」ノードを展開し、取り消す必要があるオブジェクトのメソッドを展開します。
- メソッドを右クリックし、「削除」を選択します。
- 「確認」ダイアログで、「OK」をクリックします。
ユーザーまたはプロファイルからメソッドが取り消されます。このユーザーまたはプロファイルのオブジェクト・ノードの下のメソッド・リストから、このメソッドの表示が消去されます。
オブジェクト・インスタンス別認可の付与
オブジェクト・インスタンス別認可をユーザーに付与するには:
注意:
オブジェクト・インスタンス別認可をサポートしているのは、特定のオブジェクトのみです。これらのオブジェクト・タイプは、各ユーザーの「インスタンス」ノードの下にリストされています。
ユーザーに一般権限があるメソッドは、オブジェクト・インスタンス・エディタにリストされません。
オブジェクト・インスタンス別認可の取消し
オブジェクト・インスタンス別認可をユーザーから取り消すには:
- セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーを展開します。
- 権限を取り消すユーザーの下にある「インスタンス」ノードを展開します。
- 認可を取り消すインスタンスを右クリックし、「削除」を選択します。
- 「確認」ダイアログで、「OK」をクリックします。
オブジェクト・インスタンスの認可が、ユーザーから取り消されます。
注意:
オブジェクト・インスタンス別認可を編集し、特定のメソッドをユーザーに対して拒否することで、メソッドごとに権限を取り消すこともできます。この操作の後に、インスタンスに対する権限がユーザーになくなると、そのインスタンスはセキュリティ・マネージャのツリーから削除されます。
未使用認可のクリーン・アップ
オブジェクト・インスタンス別認可は、マスター・リポジトリに格納されています。すべての作業リポジトリからオブジェクトを削除した場合でも、その認可の削除が必要とは限りません。特定の未使用認可が、エクスポート・ファイルやストアド・ソリューションに現在格納されているオブジェクトを参照している場合などは、それらの認可を保持することをお薦めします。
未使用認可をマスター・リポジトリから削除するには、セキュリティ・クリーンアップ・ツールを定期的に使用する必要があります。未使用認可は、それらの認可がマスター・リポジトリまたはすべての作業リポジトリに存在しないオブジェクトを参照している場合に削除されます。
注意:
マスター・リポジトリに連結されているすべての作業リポジトリは、リポジトリ内にオブジェクトが存在するか確認できるようにアクセス可能である必要があります。
未使用認可をクリーン・アップするには:
- セキュリティ・ナビゲータのツールバー・メニューから、「セキュリティ設定のクリーンアップ」を選択します。「セキュリティ・クリーンアップ・ツール」ダイアログが表示されます。
- 「クリーニング可能」タブで、削除するクリーニング可能セキュリティ設定に対して「クリーン」を選択します。削除できないセキュリティ設定は、「クリーニング不可」タブに表示されます。
- 「OK」をクリックして、選択したセキュリティ設定をクリーン・アップします。
Advanced Encryption Standard
Oracle Data Integrator 12c (12.1.3)は、Federal Information Processing Standardの1つであるAdvanced Encryption Standard (AES)を使用してセキュリティを強化しています。AESアルゴリズムは、デジタル情報の暗号化および復号化に使用できるブロック暗号です。AESアルゴリズムでは、128ビット、192ビットおよび256ビットの暗号化キーを使用できます。ODIではパスワードの暗号化にAES-128が使用されますが、AES-256を使用するようにODIを構成することもできます。
AESは対称型ブロック暗号化アルゴリズムであり、AESによってプレーンテキストが暗号文に変換されるとき、また逆に暗号文がプレーンテキストに変換されるときに、秘密キーまたはマスター・キーが使用されます。セキュリティに関する考慮事項により、マスター・キーは自動生成する必要があり、ハードコードすることはできません。ODIでは、マスター・リポジトリの作成中に、AESアルゴリズムのマスター・キー文字列が生成されます。各リポジトリは異なるマスター・キーを持ち、ODIで異なるリポジトリ間で暗号文が移行されるときは、エクスポート・キーを入力する必要があります。このエクスポート・キーは、エクスポート済オブジェクトに含まれる機密データの暗号化に使用されます。詳細は、『Oracle Data Integratorでの統合プロジェクトの開発』のエクスポート・キーに関する項を参照してください。
注意:
AES-256を使用するには、Oracle Java DownloadサイトからJava Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policyファイルをダウンロードし、ダウンロードの諸条件に同意して、既存のポリシー・ファイルをJRE_HOME/lib/security
にダウンロードしたポリシー・ファイルで置き換えます。
パスワードで保護されたウォレットを使用したログイン資格証明の格納
Oracle Data Integrator Studioに初めてログインする前に、Oracle Data Integratorのログイン資格証明を指定するログイン名を作成する必要があります。これらの資格証明には、Oracle Data Integratorのユーザー名およびパスワードの他、Oracle Data Integratorのマスター・リポジトリ・データベースのユーザー名およびパスワードが含まれます。Oracle Data Integratorでは、これらの資格証明を暗号化されたログインXMLファイルかまたはパスワードで保護されたウォレットに保存できます。デフォルトでは、パスワードで保護されたウォレットに保存されます。
オラクル社では、データベースのログイン資格証明をパスワードで保護されたウォレットに格納することをお薦めします。パスワードで保護されたウォレットを生成するために、Oracle Data Integratorでは、Oracle Platform Security Services (OPSS)のOracleウォレット機能を利用します。パスワードで保護されたウォレットでは、強力な暗号化アルゴリズムを使用してウォレットのコンテンツを保護します。
Oracle Data Integrator Studioでパスワードで保護されたウォレットを使用する際は、次の点に注意してください。
-
ウォレットを作成するときに、ウォレットのパスワードとそのパスワードの有効期限が切れるまでの日数を指定します。Oracle Data Integratorにより、リポジトリのログイン資格証明がウォレットに格納されます。
-
Oracle Data Integratorリポジトリに接続する場合は、ウォレットのパスワードを入力するだけです。これにより、すべてのリポジトリのログイン資格証明がウォレットから自動的に取得されます。
-
ウォレット・ファイルは
ewallet.p12
と命名され、次のディレクトリに配置されます。Windows:
%APPDATA%\odi\oracledi\ewallet
UNIX:
$HOME/.odi/oracledi/ewallet
注意:
使用環境によっては、最初にウォレット用のルート・ディレクトリの作成が必要となる場合があります。詳細は、「パスワードで保護されたウォレットの作成」を参照してください。
-
ウォレットのパスワードの有効期限が切れると、Oracle Data Integrator Studioにログインする際に、Studioより自動的にメッセージが表示されるので新しい有効期限を入力してください。
-
ウォレットのパスワードと有効期限はStudioからいつでも変更できます。
次の各項では、Oracle Data Integratorのログイン資格証明を格納するためのパスワードで保護されたウォレットの作成方法および使用方法について説明します。
パスワードで保護されたウォレットの作成
Studioに初めてログインするときに、次のステップを使用して、パスワードで保護されたウォレットを作成できます。
今後、Studioにログインしてリポジトリに接続するたびにウォレット・パスワードを入力するよう促されます。
他のユーザーへのリポジトリ・アクセスの許可
Oracle Data Integratorユーザーにリポジトリへのアクセスを許可するには、次のどちらかの方法を使用して、パスワードで保護されたウォレットをユーザーに配布します。
-
作成した
ewallet.p12
ファイルのコピーを、指定したパスワードとともに各ユーザーに配布します。 -
各Oracle Data Integratorユーザーに対して個別にパスワードで保護されたウォレットを作成します。この場合、各ウォレットに異なるパスワードを設定できます。
他のユーザー用にウォレットを作成する場合は、次の点に注意してください。
-
新規ウォレットを作成する前に、既存の
ewallet.p12
ファイルを別のディレクトリに移動します。 -
他のユーザー用のウォレットを作成する場合は、有効期限を
0
日に設定します。こうすることで、ユーザーが初めてリポジトリに接続するときに、各自のウォレットに新しいパスワードを設定するよう促されます(「ウォレット・パスワードの変更」を参照)。
「パスワードで保護されたウォレットの作成」の説明のとおり、Oracle Data Integrator Studioで使用されるすべてのパスワードで保護されたウォレットのファイルはewallet.p12
と命名され、そのファイルが使用されるマシンの~oracledi/ewallet
ディレクトリに配置される必要があります。
ウォレット・パスワードの変更
ウォレットのパスワードの有効期限が切れると、リポジトリに接続する際に、自動的に新しいパスワードを入力するよう促されます。ただし、ウォレット・パスワードは次の方法でStudioからいつでも変更できます。
外部パスワード記憶域の設定
Oracle Data Integratorでは、すべてのセキュリティ情報がデフォルトでマスター・リポジトリに格納されます。このパスワード記憶域オプションは内部パスワード記憶域と呼ばれます。
Oracle Data Integratorでは、オプションで、重要なセキュリティ情報を格納するためにOPSSを使用できます。Oracle Data IntegratorでOPSSを使用すると、データ・サーバー・パスワードおよびコンテキスト・パスワードがOPSS資格証明ストア・フレームワーク(CSF)に格納されます。このパスワード記憶域オプションは、外部パスワード記憶域と呼ばれます。
注意:
外部パスワード記憶域を使用した場合、ユーザー名、パスワード、権限などの他のセキュリティ詳細はマスター・リポジトリに残ります。外部認証を使用すると、認証を外部化し、ユーザーとパスワードをアイデンティティ・ストアに格納できます。その他の注意: 外部パスワード記憶域オプションは、外部認証機能とは関係ありません。外部認証の詳細は、「外部認証の構成」を参照してください。
外部パスワード記憶域オプションを使用するには:
-
OPSSが構成されたWebLogic Serverインスタンスをインストールする必要があります。
-
ランタイム・エージェントなどのすべてのOracle Data Integratorコンポーネントには、リモートの資格証明ストアへのアクセス権が必要です。
詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』のOPSSを使用するためのJava EEアプリケーションの構成に関する項を参照してください。
パスワード記憶域の設定
パスワード記憶域を設定または変更するには、次の4つの方法があります。
-
マスター・リポジトリのインポート(『Oracle Data Integratorでの統合プロジェクトの開発』のマスター・リポジトリのインポートに関する項を参照): パスワード記憶域を変更できます。
-
マスター・リポジトリの作成(「マスター・リポジトリの作成」を参照): パスワード記憶域を定義できます。
-
パスワード記憶域の切替え: 既存のマスター・リポジトリのパスワード記憶域を変更します。
-
パスワード記憶域のリカバリ: 資格証明ストアのキャッシュをリカバリできます。
パスワード記憶域の切替え
Oracle Data Integratorリポジトリのパスワード記憶域を切り替えると、データ・サーバーとコンテキストのパスワードの格納方法が変更されます。この操作は、スーパーバイザ・ユーザーが実行する必要があります。
データ・サーバーのパスワードのパスワード記憶域オプションを変更するには、「パスワード記憶域の切替え」ウィザードを使用します。
「パスワード記憶域の切替え」ウィザードを起動する前に、次のタスクを実行します。
-
Oracle Data Integrator Studioをリポジトリから切断します。
-
Oracle Data Integratorリポジトリを使用しているすべてのコンポーネントをシャットダウンします。
「パスワード記憶域の切替え」ウィザードを起動するには:
-
「ODI」メイン・メニューから「パスワード記憶域」→「切替え」の順に選択します。
-
Oracle Data Integratorのマスター・リポジトリのログイン詳細を、マスター・リポジトリへの接続のときに定義したとおりに指定します(「マスター・リポジトリへの接続」を参照)。
-
「次へ」をクリックします。
-
パスワード記憶域を次のように選択します。
-
パスワードをOracle Data Integratorリポジトリに格納する場合は、「内部パスワード記憶域」を選択します。
-
OPSS資格証明ストア・フレームワーク(CSF)を使用して、データ・サーバーおよびコンテキストのパスワードを格納する場合は、「外部パスワード記憶域」を選択します。
外部パスワード記憶域を選択した場合は、表11-2の説明に従って「MBeanサーバー・パラメータ」を指定し、資格証明ストアにアクセスした後、「テスト接続」をクリックし、MBeanサーバーへの接続を確認します。
表11-2 MBeanサーバー・パラメータ
サーバー ホスト JMXポート ユーザー パスワード リストからアプリケーション・サーバーを選択します。
MBeansサーバー・ホスト。例: machine.example.com
MBeansサーバー・ポート。例: 7001
MBeansサーバー・ユーザー名。例: weblogic
MBeanサーバー・パスワード
-
-
「終了」をクリックします。
パスワード記憶域オプションが変更されました。これで、Oracle Data Integratorリポジトリに再接続できます。
パスワード記憶域のリカバリ
Oracle Data Integratorでは、外部パスワード記憶域がクラッシュした場合にのみ使用されるパスワード・リカバリ・サービスを提供しています。この手順を使用すると、外部記憶域を使用できなくなるため、パスワード記憶域は強制的に内部パスワード記憶域になります。この操作は、スーパーバイザ・ユーザーが実行する必要があります。
警告:
パスワード記憶域のリカバリを実行すると、コンテキストのパスワード、データ・サーバーのパスワード、作業リポジトリのJDBCパスワードおよびエンタープライズ・スケジューラ関連のパスワードが失われるため、トポロジ・ナビゲータで手動で再入力する必要があります。
パスワードのリカバリを開始には、パスワード記憶域のリカバリ・ウィザードを使用します。
パスワード記憶域のリカバリ・ウィザードを起動するには:
- 「ODI」メイン・メニューから「パスワード記憶域」→「リカバリ」の順に選択します。
- Oracle Data Integratorのマスター・リポジトリのログイン詳細を、マスター・リポジトリへの接続のときに定義したとおりに指定します(「マスター・リポジトリへの接続」を参照)。
- 「終了」をクリックします。
- データ・サーバーおよびコンテキストのパスワードを手動で再入力します。詳細は、「トポロジの設定」を参照してください。
認証モードの管理
デフォルトでは、Oracle Data Integratorユーザーは、マスター・リポジトリに格納されたアイデンティティ情報を使用して認証されます。ただし、Oracle Data Integratorユーザーは外部認証サービスを使用して認証を受けることも可能です。つまり、Oracle Data Integratorユーザーは、Oracle Platform Security Services (OPSS)を使用して、外部エンタープライズ・アイデンティティ・ストア(Oracle Internet Directory、Microsoft Active DirectoryなどのLDAPサーバー)に対して認証されます。このようなアイデンティティ・ストアでは、中央の場所にエンタープライズ・ユーザーおよびエンタープライズ・ロールが格納されています。
外部認証が有効な場合、マスター・リポジトリではOracle Data Integrator固有の権限が保持されます。Oracle Data Integratorの内部リポジトリに外部ユーザーを作成する必要はありません。そのかわり、外部ユーザーの資格証明は集中管理されたアイデンティティ・ストアに依存し、この外部ストアに対して常に認証が行われます。
認証モード(内部または外部)はリポジトリ作成時に定義でき、「マスター・リポジトリでの認証モードの設定」の説明のとおり、既存のリポジトリ用に切り替えることができます。
外部認証の構成の詳細は、「外部認証の構成」を参照してください。
マスター・リポジトリでの認証モードの設定
認証モードを設定するには、次の2つの方法があります。
-
マスター・リポジトリの作成時。マスター・リポジトリ作成ウィザードには、認証モードを設定するためのオプションが含まれています。マスター・リポジトリの作成時に外部認証を設定する方法の詳細は、「マスター・リポジトリ作成時の外部認証の設定」を参照してください。詳細は、「マスター・リポジトリの作成」を参照してください。
-
Studioからの認証モードの切替え時。「認証モードの切替え」ウィザードを使用すると、既存のマスター・リポジトリで使用される認証モードを変更できます。Studioで外部認証モードに切り替えるための詳細なステップは、「既存のマスター・リポジトリから外部認証モードへの切替え」を参照してください。
注意:
マスター・リポジトリで外部認証モードを選択する前に、「外部認証の構成」の説明に従って外部認証を構成する必要があります。
外部認証の構成
デフォルトでは、Oracle Data Integratorは、すべてのユーザー情報およびユーザーの権限をマスター・リポジトリに格納します。ユーザーがOracle Data Integratorにログインすると、マスター・リポジトリに対して認証が行われます。この認証方法は、内部認証と呼ばれます。
ただし、Oracle Platform Security Services (OPSS)を使用してエンタープライズ・アイデンティティ・ストア(Oracle Internet Directory、Microsoft Active DirectoryなどのLDAPサーバー)に定義されているユーザーを認証するようにOracle Data Integratorをカスタマイズできます。アイデンティティ・ストアには、エンタープライズ・ユーザーおよびエンタープライズ・ロールが含まれています。このようなアイデンティティ・ストアは、ユーザー定義を集中管理し、シングル・サインオン(SSO)をサポートするために、アプリケーションではエンタープライズ・レベルで使用されます。Oracle Data Integratorでは、この認証方法を外部認証と呼びます。外部認証を構成することにより、OPSSで提供される標準のJavaセキュリティ・モデル認証および認可サービスを利用できます。外部認証を使用する場合、ODIではLDAP共通名(cn)属性を使用してODIユーザーとLDAPユーザーの照合が行われます。
外部認証を使用するには、エンタープライズ・アイデンティティ・ストアを構成し、各Oracle Data Integratorコンポーネントがそのアイデンティティ・ストアを参照するように構成する必要があります。
注意:
外部認証を使用した場合、外部化されるのはユーザーおよびパスワードのみです。Oracle Data Integratorの権限は、リポジトリ内に残ります。
次の各項では、Studioへの外部認証の設定方法およびスタンドアロン・エージェントの設定方法について説明します。
外部認証のためのOracle Data Integrator Studioの構成
Oracle Data Integrator Studioで外部認証を構成するには、次の操作を行う必要があります。
OPSS構成ファイルの設定
アイデンティティ・ストアに接続して使用するための構成は、jps-config-jse.xml
ファイルと呼ばれるOPSS構成ファイルにあります。Oracle Data Integratorコンポーネントで外部認証を構成するには、使用する予定の外部アイデンティティ・ストアに対応するようにこの構成ファイルを設定する必要があります。
OPSS構成ファイルを更新するには、次のステップを実行します。
例11-1は、構成ファイルのサービス・インスタンス・セクションのOracle Internet Directoryの構成を示しています。
例11-1 サービス・インスタンスの構成例
<!-- OID LDAP Identity Store Service Instance --> <serviceInstance name="idstore.oid" provider="idstore.ldap.provider"> <property name="subscriber.name" value="dc=us,dc=oracle,dc=com" /> <property name="idstore.type" value="OID" /> <property name="bootstrap.security.principal.map" value="BOOTSTRAP_JPS"/> <property name="bootstrap.security.principal.key" value="bootstrap_idstore"/> <property name="username.attr" value="uid"/> <property name="groupname.attr" value="cn"/> <property name="ldap.url" value="ldap://hostname:port" /> <extendedProperty> <name>user.search.bases</name> <values> <value>cn=users,dc=us,dc=oracle,dc=com</value> </values> </extendedProperty> <extendedProperty> <name>group.search.bases</name> <values> <value>cn=groups,dc=us,dc=oracle,dc=com</value> </values> </extendedProperty> </serviceInstance> . . . <serviceInstanceRef ref="idstore.oid"/>
LDAPブートストラップ・ユーザーのためのウォレット・ファイルの作成
アイデンティティ・ストア・ブートストラップ・ユーザーの資格証明を格納するためのウォレット・ファイルを作成する必要があります。このウォレット・ファイルは、OPSS構成ファイルから参照され、OPSS構成ファイルに構成されたアイデンティティ・ストアへの接続を確立するためにOracle Data Integratorによって使用されます。
注意:
このウォレット・ファイルは、Oracle Data Integrator Studioのログイン資格証明を格納するためのパスワードで保護されたウォレットとは異なります。
このウォレット・ファイルを作成するには、次のステップを実行します。
-
ORACLE_HOME
/odi/sdk/bin
ディレクトリに移動します。 -
odi_credtool
スクリプトを実行します。次のパラメータを入力するよう促されます。
パラメータ 入力する値 User name
必要な権限を使用してアイデンティティ・ストアに接続するために使用されているブートストラップ・ユーザー・アカウントの識別名(DN)。
たとえば、Microsoft Active Directoryの場合は、このユーザーを次のように指定します。
CN=Administrator,CN=Users,DC=ad,DC=vm,DC=mycompany,DC=com
Password
アイデンティティ・ストアへの接続に使用されるブートストラップ・ユーザー・アカウントのパスワード。
ブートストラップ・ユーザー・アカウントの資格証明を正しく入力すると、次のメッセージが表示されます。
The credentials have been successfully added to the boostrap credential store.
マスター・リポジトリ作成時の外部認証の設定
マスター・リポジトリを作成し、外部認証を使用するように設定するには:
マスター・リポジトリでのスーパーバイザ権限を持つプリンシパルの選択方法の詳細は、「アイデンティティ・ストアに定義されたプリンシパルのOracle Data Integratorロールへのマッピング」を参照してください。
外部認証を使用するための既存のマスター・リポジトリの更新方法の詳細は、「既存のマスター・リポジトリから外部認証モードへの切替え」を参照してください。
既存のマスター・リポジトリから外部認証モードへの切替え
外部認証への切替え後のユーザーの再アクティブ化
定義済のOracle Data Integratorユーザーの既存のセットがある場合は、この項の説明に従って外部認証に切り替えた後で再有効化できます。ユーザーを再有効化するには、最初に、内部Oracle Data Integratorリポジトリに格納されたパスワードではなく外部アイデンティティ・ストアに指定されたパスワードを使用して、スーパーバイザ権限を持つユーザー(たとえば、SUPERVISOR
)としてStudioに再接続します。次のステップを実行します。
これで、外部認証を使用して、Oracle Data Integrator Studioに接続できるようになります。
次の点に注意してください。
-
LDAPサーバー問題のトラブルシューティングの場合は、いずれかのLDAPクライアントを使用してLDAPツリーを参照すると有用です。LDAPクライアントは、次のURLからダウンロードできます。
-
Microsoft Active Directory以外のLDAPディレクトリの場合、プロパティ
user.filter.object.classes
が、ユーザーのオブジェクト・クラスに対して正しく設定されているか確認してください。デフォルトでは、特に指定のないかぎりUSER
に設定されています。 -
使用環境にOracle Data IntegratorコンソールおよびJava EEエージェントがインストールされている場合にOracle Data Integrator Studioを外部認証に切り替えると、Oracle Data Integratorコンソールにログインできない場合およびJava EEエージェントが機能しない場合があります。このような問題が発生する場合は、同じ外部アイデンティティ・ストアを使用して、Oracle Data IntegratorコンソールおよびJava EEエージェントを外部認証対応に構成する必要があります。この手順については、My Oracle SupportのNote 1510434.1に記載されており、次のURLでアクセスできます。
https://support.oracle.com/epmos/faces/DocumentDisplay?id=1510434.1
外部認証用のスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントの構成
外部認証用にスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントを構成するには、次のステップを実行します。
アイデンティティ・ストアに定義されたプリンシパルのOracle Data Integratorへのマッピング
Oracle Data Integratorのエンタープライズ・ロール統合機能では、Oracle Platform Security Services (OPSS)の認可モデルを利用するため、エンタープライズ・ロールをOracle Data Integratorロールにマップできます。マップされたエンタープライズ・ロールに属するエンタープライズ・ユーザーは、マップされたOracle Data Integratorロールに付与された権限を継承することによりOracle Data Integratorにアクセスできます。エンタープライズ・ロール統合を利用すると、Oracle Data Integratorにユーザーを個別に登録してアクセスを付与したり、ユーザーごとに権限を管理する必要がなくなるため、ユーザーおよび権限の管理が簡素化されます。
次の各項では、エンタープライズ・ロール統合の仕組みの説明およびこの機能を使用して、オブジェクト、インスタンスおよびプロファイルに割り当てられた権限を管理する方法を説明します。
エンタープライズ・ロール統合の仕組み
外部認証が有効の場合、ユーザーは、Oracle Internet Directory、Microsoft Active Directoryなどの外部アイデンティティ・ストアで管理されます。
エンタープライズ・ロール統合を使用すると、次のようになります。
-
アイデンティティ・ストア内でOracle Data Integratorロールにマップ可能なすべてのエンタープライズ・プリンシパルは、そのロールに付与された権限を得る資格があります。たとえば、エンタープライズ・ロール
DESIGNERS
が、Oracle Data IntegratorロールDESIGNERS_ROLE
にマップされた場合、Oracle Data Integratorへのアクセスが認証されると、アイデンティティ・ストアでDESIGNERS
のメンバーであるエンタープライズ・ユーザーには、DESIGNERS_ROLE
に付与されたすべての権限が与えられます。 -
複数のエンタープライズ・ユーザーおよびロールを単一のOracle Data Integratorロールにマップできます。また、単一のエンタープライズ・ユーザーまたはロールを複数のOracle Data Integratorロールにマップすることも可能です。(Oracle Data Integratorロールを別のOracle Data Integratorロールにマップすることはできません。)
-
ユーザーがOracle Data Integratorへのアクセスを認証されると、ユーザーが直接的またはエンタープライズ・ロールを介して間接的にマップされたすべてのOracle Data Integratorロールの和集合によって、そのユーザーに付与される権限が決まります。
また、外部ユーザーをOracle Data Integratorに直接登録する場合、そのユーザーに与えられる全権限セットは、以前のリリースと同様に次の和集合から構成されます。
-
ユーザーがマップされるOracle Data Integratorロール
-
そのユーザーに直接付与されたすべての権限
-
-
Oracle Data Integratorへのアクセスを付与するために、Oracle Data Integrator内でユーザーの作成および登録を行う必要はありません。
-
「ユーザー」で説明したように、個々のユーザーに割り当てられた既存の権限およびプロファイルはすべてそのまま有効です。このため、Oracle Data Integratorの以前のリリースとの後方互換性があります。
Oracle Data Integratorロールの定義および管理
マスター・リポジトリを作成し、外部認証を使用するように構成すると、次のことが生じます。
-
Oracle Data Integratorロール
SUPERVISOR_ROLE
が自動的に作成されます。これは、Oracle Data Integratorのメイン管理者ロールです。 -
この
SUPERVISOR_ROLE
がマップされるアイデンティティ・ストアから1つ以上のエンタープライズ・ロールまたはエンタープライズ・ユーザーを選択するよう促されます。Oracle Data Integratorでは、「OPSS構成ファイルの設定」で説明したように、jps-config-jse.xml
ファイルに構成されているアイデンティティ・ストアに存在するすべての利用可能なエンタープライズ・ロールまたはエンタープライズ・ユーザーを取得できることに注意してください。
Oracle Data Integratorへのアクセスが認証されSUPERVISOR_ROLE
ロールにマップされた後は、Studioから利用可能なロール・エディタを使用して別のエンタープライズ・プリンシパルをこのロールにマップできます。結果として、このロールにマップされたどのユーザーも、このロール・エディタを使用して別のOracle Data Integratorロールの作成、これらのロールへの権限およびプロファイルの割当て、アイデンティティ・ストアからその他のプリンシパル・マッピングの作成を行うことができます。
次の各項では、エンタープライズ・プリンシパルをSUPERVISOR_ROLEロールにマップする方法およびロール・エディタを使用してOracle Data Integratorロールの作成、更新および削除を行う方法について説明します。
スーパーバイザ・ロールのためのエンタープライズ・ロールの構成
「マスター・リポジトリ作成時の外部認証の設定」の説明に従って、マスター・リポジトリを作成する際に「外部認証の使用」を選択した場合は、エンタープライズ・ロールを構成する必要があります。最初に構成するエンタープライズ・ロールは、Oracle Data Integrator SUPERVISOR_ROLE
にマップされる、アイデンティティ・ストアのプリンシパル(1つ以上)です。
マスター・リポジトリで、SUPERVISOR_ROLE
のためのエンタープライズ・ロールを構成するには、次のようにします。
-
「マスター・リポジトリ作成時の外部認証の設定」の説明に従って、マスター・リポジトリ作成ウィザードを起動します。
-
マスター・リポジトリ作成ウィザード: ステップ2/3ページで、図11-9に示すように、「追加」ボタンをクリックして外部アイデンティティ・ストアから利用可能なエンタープライズ・ロールおよびユーザーを取得します。
「追加」ボタンをクリックすると図11-10に示すような「エンタープライズ・ロールおよびユーザー取得」ダイアログ・ボックスが表示されるので、次のどちらかをします。
-
フィルタ式を入力して、フィルタに一致するロールおよびユーザーをアイデンティティ・ストアに表示します。
-
アイデンティティ・ストアを検索して、特定のロールまたはユーザー名を見つけます。
エンタープライズ・ロールおよびエンタープライズ・ユーザーの各ノードを展開して、アイデンティティ・ストアで定義された個々のロールおよびユーザーを表示できます。
-
-
「エンタープライズ・ロールおよびユーザー取得」ダイアログ・ボックスから
SUPERVISOR_ROLE
ロールに割り当てるエンタープライズ・ユーザーまたはロールを選択して、「OK」をクリックします。 -
「マスター・リポジトリの作成」の説明に従って、マスター・リポジトリの作成を終了します。
ロール・エディタの使用
次の各項では、ロール・エディタを使用してOracle Data Integratorでエンタープライズ・ロール統合を管理する方法について説明します。
ロール・エディタの起動
ロール・エディタを使用して、Oracle Data Integratorロールの作成、更新および削除を行うことができます。
ロール・エディタを起動するには:
図11-11に示すようなロール・エディタが表示されます。
Oracle Data Integratorでのロールの作成
Oracle Data Integratorロールを作成するには:
- 必要に応じて、Studioでロール・エディタを起動します。
- 「セキュリティ・ナビゲータ」を選択し、「ロール」ナビゲーション・ツリーを選択します。
- 「ロール」ナビゲーション・ツリーのツールバーで、「新規ロール」をクリックします。
- 「名前」フィールドに、作成するOracle Data Integratorロールの名前を入力します。
- 「ファイル」メイン・メニューから「保存」を選択します。
新規ロール名が「ロール」ナビゲーション・ツリーに表示されます。
Oracle Data Integratorロールへの権限またはプロファイルの割当て
Studioでは、次の2つの方法でOracle Data Integratorロールへ権限またはプロファイルを割り当てられます。
-
ロール・エディタの使用
-
権限、プロファイルおよびインスタンス・オブジェクトをクリックして、「ロール」ナビゲーション・ツリーのロール名上にドラッグする
ロール・エディタを使用する場合:
クリック・アンド・ドラッグの場合:
次のアイテムに関する権限は、クリックして「ロール」ナビゲーション・ツリーのロール名上にドラッグすることにより、ロールに追加できます。
-
「オブジェクト」ナビゲーション・ツリーにリストされている、オブジェクト・ノードまたはオブジェクト・ノード内のエントリ。
-
「プロファイル」ナビゲーション・ツリーにリストされている、プロファイル・ノードまたはプロファイル・ノードを持つエントリ。
-
デザイナ・ナビゲータ、オペレータ・ナビゲータまたはトポロジ・ナビゲータのナビゲーション・ツリーにリストされているオブジェクト・インスタンス。オブジェクト・インスタンス権限をOracle Data Integratorユーザーに付与する方法と同様に、インスタンスを選択して目的のロール名までドラッグします(「オブジェクト・インスタンス別認可の付与」を参照)。
Oracle Data Integratorロールの権限を更新した後で、「ファイル」メイン・メニューから「保存」を選択します。
コールバックを使用したJRF-ODI非同期WebサービスのOWSMポリシーの構成
invokeStartScenWithCallbackおよびinvokeRestartSessWithCallback Webサービス操作はJRFプラットフォームで実装され、内部および外部認証方式を介して保護できます。外部認証方式には、Oracle Web Services Manager (OWSM)ポリシーのアタッチによるOracle Platform Security Services (OPSS)の使用が含まれます。OWSMは、Webサービスを管理および保護するポリシー・フレームワークを提供します。内部認証と外部認証の詳細は、「外部認証の構成」を参照してください。
注意:
JRFベースのWebサービスがリクエストを受け取る場合、同じ内容をエージェントに送ります。エージェントは、リポジトリに接続するためのユーザーのログインとパスワードを格納する単一キーを必要とします。エージェントがリポジトリに接続するために必要なOracle Data Integratorのユーザー名とパスワードは、ODI構成ファイルには格納されませんが、アプリケーション・サーバー資格証明ストアに格納されます。そのため、内部または外部認証方式を使用する前に資格証明ストア・エントリを追加する必要があります。資格証明ストア・エントリの追加の詳細は、次のプロシージャのステップ2を参照してください。
Fusion Middleware Controlを使用してOWSMポリシーを非同期Webサービスにアタッチするには、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の次の項を参照してください。
-
OWSMポリシーの環境設定。OWSMポリシーを使用するための環境を設定するには、秘密キーの生成とJavaキーストアの作成に関する項、Fusion Middleware Controlを使用したOracle WSMキーストアの構成に関する項、Fusion Middleware Controlを使用した資格証明ストアへのキーおよびユーザー資格証明の追加に関する項の手順に従います。
注意:
WebLogic Scripting Tool (WLST)コマンドを使用して、実行時にOWSMポリシーをアタッチすることもできます。詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』を参照してください。
パスワード・ポリシーの実施
パスワード・ポリシーは、内部認証の使用時にユーザー・パスワードに適用するルールのセットで構成されています。この一連のルールは、ユーザーがパスワードを定義したり、変更した場合に適用されます。
パスワード・ポリシーを定義するには:
安全な転送を使用するためのスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントの構成
Hyper-Text Transfer Protocol Secure (HTTPS)は、Hyper Text Transfer Protocol (HTTP)の安全なバージョンであり、さらにレベルの高いセキュリティを実現するために使用されます。この項では、次のトピックにより、Oracle Data IntegratorでHypertext Transfer Protocol Secure (HTTPS)サポートを設定する方法について説明します。
スタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントのためのSSLの構成
スタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントのためにSSLを構成するには、HTTPSプロトコルを使用してエージェントを作成する必要があります。
HTTPSプロトコルを使用してスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントを作成するには、次の手順を実行します。
SSL対応エージェントと接続するためのODI Studioの構成
SSLパラメータの値はODI Studioに移入されます。これは、Studio内部エージェントがSSLサーバーに接続するときにODI Studioによって使用されるデフォルトで唯一の資格証明セットです。
Oracle Data Integrator StudioからSSL対応エージェントに接続するには、次の手順を実行します。
- 「ツール」→「プリファレンス」→「資格証明」に移動します。
- 「クライアントの信頼する証明書キーストア」フィールドおよびクライアントの信頼するキーストアのパスワード・フィールドを編集します。
別のtrustStoreを指すようにするには、前述のフィールドを編集します。詳細は、『Oracle Data Integratorでの統合プロジェクトの開発』のHTTPアナライザでのSSLの使用に関する項を参照してください。
SSL対応エージェントと通信するためのOracle Data Integratorクライアント・ツールの構成
ODIクライアント・ツールはマスター・リポジトリにアクセスできないため、instance.properties
ファイルに格納されているSSLパスワードを復号化できません。
ODIトラストストアおよびキーストアは、instance.shまたはinstance.cmdを対応するスタンドアロン・サーバーまたは連結サーバーに介して構成されます。
パスワードはプレーン・テキストまたはODI暗号化パスワードのいずれかで付与されます。
ツールを正常に呼び出すために、トラストストアを構成する必要があります。
これには、必要な証明書のトラストストアへのインポートおよびトラストストア・パスワードの構成が含まれます。
instance.sh/cmdは特定のトラストストアを示すコードをすでに持つ場合があります。
その場合、指定されたトラストストアを使用して作業します。
トラストストアが構成されていない場合、JVMトラストストアを使用します。
SSL対応エージェントに接続するOracle Data Integratorクライアント・ツールを実行するには、trustStorePassword
システム・プロパティのプレーン・テキストまたはODI暗号化パスワードを設定します。trustStorePassword
システム・プロパティを、次の場所にあるODI_INSTANCE_JAVA_OPTIONS
変数に追加する必要があります。
<domain>/config/fmwconfig/components/ODI/OracleDIAgent1/bin/instance.sh
次のコマンドを使用して、パラメータを追加します。
ODI_INSTANCE_JAVA_OPTIONS="-Djavax.net.ssl.trustStorePassword=<plain_text-password>
-Djavax.net.ssl.trustStore=<domain>/security/DemoIdentity.jks -Djavax.net.ssl.trustStoreType=JKS
-Djavax.net.ssl.trustStore=<Domain>/oracle/work/middleware/wlserver/server/lib/DemoTrust.jks
-Djavax.net.ssl.trustStoreType=JKS $ODI_ADDITIONAL_JAVA_OPTIONS"
trustStorePassword
システム・プロパティを必要とするODIクライアント・ツールの例を次に示します。
./agentstop.sh -NAME= OracleDIAgent1 ./startcmd.sh -INSTANCE=OracleDIAgent1 OdiPingAgent -AGENT_NAME=OracleDIAgent1 ./startcmd.sh -INSTANCE=OracleDIAgent1 OdiKillAgent -NAME=OracleDIAgent1 -IMMEDIATE=YES -MAX_WAIT=0 ./startscen.sh -INSTANCE=OracleDIAgent1 OdiStartScen -SCEN_NAME=SAM -SCEN_VERSION=001 -CONTEXT=GLOBAL -SYNC_MODE=1 ./startscen.sh -INSTANCE=OracleDIAgent1 SAM 001 GLOBAL -AGENT_URL=https://<hostname>:<port>/oraclediagent
ODIクライアント・ツールの詳細は、Oracle Data Integratorツール・リファレンスを参照してください。
Webプロキシ・サーバーによるOracle Data Integratorの構成
この項では、ネットワーク設定でWebプロキシが構成されている場合に外部http接続を使用する方法について説明します。
Oracle Data Integrator StudioからWebプロキシを設定してOracle Data Integratorを構成するには、「ツール」→「プリファレンス」に移動し、Webブラウザおよびプロキシ・ページでプロキシを設定します。
Oracle Data Integratorスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントがインストールされている場合は、コマンド行からWebプロキシ設定を設定できます。Java EEエージェントの場合、Webプロキシ設定はWebLogic ServerのsetDomainEnv.sh
ファイル内に設定する必要があります。java.netパッケージの様々なクラスのメカニズムおよび動作を変更するための標準のシステム・プロパティの詳細は、ネットワーク・プロパティを参照してください。
注意:
標準のJavaプロキシ・パスワード・プロパティhttp.proxyPassword
はクリアテキスト・パスワードしか受け入れないため、Oracle Data Integratorでは、必要に応じてクリアテキスト・パスワードのかわりに暗号化されたプロキシ・サーバー・パスワードを設定できるように追加プロパティoracle.odi.http.encoded.proxyPassword
が導入されました。
暗号化されたプロキシ・サーバー・パスワードは、次の方法で設定できます。
-
スタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェント:
instance.sh
ファイル内に、Javaコマンドの-D
オプションを使用してoracle.odi.http.encoded.proxyPassword
プロパティをODI_INSTANCE_JAVA_OPTIONS
変数に追加します(次の場所にあります)。<DOMAIN_HOME>/config/fmwconfig/components/ODI/<INSTANCE_NAME>/bin
-
Java EEエージェント: WebLogic Serverの
setDomainEnv.sh
ファイルを編集します。setDomainEnv.sh
ファイルは次の場所にあります。<DOMAIN_HOME>/bin
Oracle Access Manager 11gを使用したOracle Data IntegratorコンソールおよびEnterprise Managerのシングル・サインオン(SSO)の構成
このセクションでは、Oracle Access Manager (OAM) 11gを使用して、Oracle Data IntegratorコンソールおよびEnterprise Managerのシングル・サインオンをオプションで構成する方法について説明します。
Oracle Data IntegratorコンソールおよびEnterprise Managerのシングル・サインオンを構成するには:
-
ブラウザを使用して、OAMコンソールにログインします。
http://host:port/oamconsole
-
「ポリシー構成」→「アプリケーション・ドメイン」に移動します。
「ポリシー・マネージャ」ペインが表示されます。
-
WebGateエージェントの登録時の名前を使用して作成したアプリケーション・ドメインを探します。
-
「リソース」ノードを展開して、「作成」をクリックします。
リソース・ページが表示されます。
-
セキュリティ保護が必要なリソースを追加します。各リソースに対して、次の手順を実行します。
-
「リソース・タイプ」
としてhttpを選択します。 -
WebGateエージェントの登録時に作成したホスト識別子を選択します。
-
「リソースURL」を次のように入力します。
リソースURL ODIコンポーネント /odiconsole*
ODIコンソール
/odiconsole/.../*
ODIコンソール
/em*
Enterprise Manager
/em/.../*
Enterprise Manager
-
リソースの「説明」を入力し、「適用」をクリックします。
-
-
「認証ポリシー」→保護されているリソース・ポリシーに移動し、新しく作成したリソースを追加します。
-
「認可ポリシー」→保護されているリソース・ポリシーで同じ作業を行います。
-
WebTierで、(
WT_ORACLE_HOME/instances/<your_instance>/config/OHS/ohs1
/の)mod_wl_ohs.conf
ファイルを変更し、ODIコンソールとEnterprise Managerを追加するために、新しい2つのLocationエントリを追加して、WebLogicHostにWebCenter Portal管理サーバーの実際のホストIDを使用します。<Location /odiconsole*> SetHandler weblogic-handler WebLogicHost webcenter.example.com WebLogicPort 7001 </Location> <Location /em*> SetHandler weblogic-handler WebLogicHost webcenter.example.com WebLogicPort 7001 </Location>
-
変更を有効にするために、Oracle HTTP Serverを再起動します。
これで、次のリンクを使用してODIコンソールおよびEnterprise Managerにアクセスできるようになりました。
http://host:OHS port/odiconsole
http://host:OHS port/em
OAMのSSOログイン・フォームのプロンプトが表示されます。
OAM 11gをインストールし、ODI用に構成する方法の詳細は、『Oracle Data Integratorのインストールと構成』のODIとOracle Access Manager 11gの統合に関する項を参照してください。
Oracle Data Integratorのセキュリティのベスト・プラクティス
表11-3は、Oracle Data Integrator環境を保護するためのベスト・プラクティスのリストです。
表11-3 Oracle Data Integrator環境におけるセキュリティのベスト・プラクティス
セキュリティ・アクション | 説明 |
---|---|
Oracle Data Integrator Studioの保護 |
Oracle Data Integrator Studioに対して最適なセキュリティを実施するには、次のように構成します。
|
安全な転送を使用するためのスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントの構成 |
安全な転送を使用するためにスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントを構成する方法の詳細は、「安全な転送を使用するためのスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントの構成」を参照してください。 |
安全な転送を使用するためのOracle Data Integratorコンソールの構成 |
オラクル社では、安全な転送を使用してOracle Data Integratorコンソールにアクセスすることをお薦めします。たとえば、Oracle Data IntegratorコンソールがデフォルトのSSLリスニング・ポートであるポート7002を使用するように構成できます。このように構成することで、次のURLを使用してOracle Data Integratorコンソールにアクセスできます。
WebLogic Server管理コンソールを使用すると、Oracle Data Integratorコンソールが使用する転送を保護できます。詳細は、『Oracle WebLogic Serverセキュリティの管理』のSSLの構成に関する項を参照してください。 |