この章では、Oracle Data Integratorでのセキュリティの設定方法について説明します。また、Oracle Data Integratorのセキュリティの概念およびコンポーネントの概要についても説明します。
この章の内容は、次のとおりです。
Oracle Data Integratorのセキュリティは、Oracle Data Integratorの設計時アーティファクト、ランタイム・アーティファクトおよびコンポーネントに対して認証されたユーザーが実行したすべてのアクションを保護するために使用されます。
セキュリティは、ユーザーおよびプロファイルの周囲に構築されます。これらのユーザーおよびプロファイルには、セキュリティ管理者によって、オブジェクト・タイプ(プロジェクト、モデル、インタフェースなど)または特定のオブジェクト・インスタンス(データ・ウェアハウス・プロジェクト、ODSプロジェクトなど)に対するメソッド(編集、削除など)が付与されています。
Oracle Data Integratorに関するすべてのセキュリティ情報はマスター・リポジトリに格納されます。
この項の内容は次のとおりです。
オブジェクトは、Oracle Data Integratorを介して処理された設計時アーティファクトまたはランタイム・アーティファクトの表現です。たとえば、エージェント、モデル、データストア、シナリオ、インタフェースおよびリポジトリさえもオブジェクトです。特定のオブジェクトには、2つの名前(エージェント/コンテキスト、プロファイル/メソッドなど)があります。これらのオブジェクトは、オブジェクト間のリンクを表し、これらのリンクもオブジェクトです。たとえば、エージェント/コンテキストは、コンテキストを介して関連付けられた物理/論理エージェントに対応しています。トポロジにあるこの関連付けは、このオブジェクトに対する権限によって変更できます。
インスタンスは、オブジェクトに関する特定の発生例です。たとえば、データウェアハウス・プロジェクトは、プロジェクト・オブジェクトのインスタンスです。
メソッドは、オブジェクトに対して実行できるアクションです。各オブジェクトには、事前定義された一連のメソッドがあります。
注意: Oracle Data Integratorのオブジェクト・インスタンスとメソッドの概念は、オブジェクト指向プログラミングで使用されている概念に類似しています。 |
警告: オブジェクトとメソッドはセキュリティ・ナビゲータに表示されますが、Oracle Data Integratorに事前定義されているオブジェクトとメソッドは変更できません。 |
プロファイルには、Oracle Data Integratorを使用するための一連の権限が含まれています。1つ以上のプロファイルをユーザーに割り当て、これらの権限をまとめたものをこのユーザーに付与できます。
プロファイル・メソッドは、オブジェクト・タイプのメソッドのプロファイルに付与される認可です。付与された各メソッドによって、このプロファイルのユーザーは、オブジェクト・タイプ(プロジェクト、モデル、データストアなど)のインスタンスに対してアクション(編集、削除など)を実行できます。
プロファイルに付与されたメソッドは、セキュリティ・ナビゲータの「プロファイル」アコーディオンにある該当プロファイルの下に表示されます。特定プロファイルにメソッドが表示されない場合、そのプロファイルからメソッドにアクセスすることはできません。
メソッドは、次のように一般権限または一般以外の権限として付与できます。
一般権限として付与されるメソッドは、オブジェクトのすべてのインスタンスにデフォルトで付与されます。
一般以外の権限として付与されるメソッドは、オブジェクトのすべてのインスタンスにはデフォルトで付与されませんが、インスタンスごとに付与できます。
汎用プロファイルと非汎用プロファイル
汎用プロファイルでは、すべてのオブジェクト・メソッドに対して「一般権限」オプションが選択されます。これは、このようなプロファイルのユーザーは、汎用プロファイルが認可されているオブジェクトのすべてのインスタンスに関するすべてのメソッドに対して、デフォルトで認可されることを意味します。
非汎用プロファイルでは、すべてのオブジェクト・メソッドに対して「一般権限」オプションが選択されないため、インスタンスのすべてのメソッドがデフォルトで認可されません。管理者は、各インスタンスのメソッドに対する権限をユーザーに付与する必要があります。
セキュリティ管理者がユーザーにどのインスタンスに対する権限もデフォルトで付与せず、インスタンスごとに権限を付与する場合は、そのユーザーに非汎用プロファイルを指定する必要があります。
セキュリティ管理者がユーザーにオブジェクト・タイプのすべてのインスタンスに対する権限をデフォルトで付与する場合は、そのユーザーに汎用プロファイルを指定する必要があります。
組込みプロファイル
Oracle Data Integratorには組込みプロファイルがいくつかあり、セキュリティ管理者は、作成したユーザーにこれらのプロファイルを割り当てることができます。
表24-1に、Oracle Data Integratorに付属の組込みプロファイルを示します。
表24-1 組込みプロファイル
プロファイル名 | 説明 |
---|---|
CONNECT |
Oracle Data Integratorに接続するための基本権限を付与するプロファイル。別のプロファイルとともに付与する必要があります。 |
DESIGNER |
開発操作を実行するための権限を付与するプロファイル。このプロファイルは、主にプロジェクトで作業するユーザーに対して使用します。 |
NG_DESIGNER |
非汎用バージョンのDESIGNERプロファイル。 |
METADATA_ADMIN |
メタデータを管理するための権限を付与するプロファイル。このプロファイルは、主にモデルで作業するユーザーに対して使用します。 |
NG_METADATA_ADMIN |
非汎用バージョンのMETATADA_ADMINプロファイル。 |
OPERATOR |
ランタイム・オブジェクトを管理するための権限を付与するプロファイル。このプロファイルは、本番のユーザーに対して使用します。 |
REPOSITORY_EXPLORER |
オブジェクトを表示するための権限を付与するプロファイル。このプロファイルは、オブジェクトを変更する必要のないユーザーに対して使用します。 |
NG_REPOSITORY_EXPLORER |
非汎用バージョンのREPOSITORY_EXPLORERプロファイル。 |
SECURITY_ADMIN |
セキュリティを編集するための権限を付与するプロファイル。このプロファイルはセキュリティ管理者に対して使用します。 |
TOPOLOGY_ADMIN |
トポロジを編集するための権限を付与するプロファイル。このプロファイルは、システム管理者またはOracle Data Integrator管理者に対して使用します。 |
VERSION_ADMIN |
バージョンおよびソリューションを作成、リストアおよび編集するための権限を付与するプロファイル。このプロファイルは、プロジェクト・マネージャや、バージョン管理操作の実行を担当する開発者に対して使用します。 |
NG_VERSION_ADMIN |
非汎用バージョンのVERSION_ADMINプロファイル。 |
注意: 組込みプロファイルは変更しないでください。これは、これらのプロファイルが、Oracle Data Integratorの新規機能の保護に関連しているためです。自分のプロファイルまたは既存のプロファイルをカスタマイズする場合は、組込みプロファイルの複製を作成し、そのコピーをカスタマイズすることをお薦めします。 |
ユーザーはOracle Data Integratorのユーザーで、リポジトリへの接続に使用されるログイン名に対応しています。
ユーザーは、次の権限を継承します。
様々なプロファイルに付与されているすべての権限
ユーザーに割り当てられているオブジェクトまたはインスタンス(あるいはその両方)に対する権限
ユーザー・メソッドは、ユーザーに付与されるオブジェクト・タイプのメソッドに対する権限です。付与された各メソッドによって、ユーザーは、オブジェクト・タイプ(プロジェクト、モデル、データストアなど)のインスタンスに対してアクション(編集、削除など)を実行できます。これらのメソッドはプロファイル・メソッドに類似していますが、ユーザーに適用されます。
ユーザーには、特定の作業リポジトリのインスタンスに対する権限を付与できます(インスタンスが存在する場合)。たとえば、開発者ユーザーに、PRODUCTIONリポジトリではなく、DEVELOPMENTリポジトリのLOAD_DATAWAREHOUSEシナリオに対する編集権限を付与できます。
オブジェクト・インスタンスによる認可は、オブジェクト・インスタンス上のユーザーに付与されます。このオブジェクト・インスタンスのこのユーザー特定のメソッドに権限を付与できます。
ユーザーのツリーに、特定のインスタンスに対するオブジェクト・インスタンス別認可が存在している場合は、そのユーザーに、特定のインスタンスのオブジェクト・メソッドに対する特定の権限が付与されています(これらの権限はオブジェクト・インスタンスのエディタで指定します)。インスタンスがユーザーのインスタンスのツリーに表示されない場合は、そのオブジェクト・タイプに対してユーザー・メソッド権限またはプロファイル・メソッド権限が適用されます。
インスタンスはマスター・リポジトリに関連付けられている別の作業リポジトリにレプリケートできるため、オブジェクト・インスタンス別認可は、マスター・リポジトリに関連付けられている作業リポジトリの1つまたは複数、あるいはすべてに対して定義できます。たとえば、LOAD_DATAWAREHOUSEシナリオ・インスタンスは、DEVELOPMENT、TESTおよびPRODUCTIONの各リポジトリにバージョニングなどを使用してレプリケートできます。インスタンスの権限は、リポジトリに応じて変更されます。
たとえば、一般的に、開発リポジトリのプロジェクトはテスト・リポジトリにレプリケートされます。開発者には、開発リポジトリ内のプロジェクトに対する編集権限が付与されますが、テスト・リポジトリでは付与されません。テスト・リポジトリで付与されるのは、プロジェクトに対する表示権限のみです。
この項では、様々なセキュリティの概念を使用してOracle Data Integratorでセキュリティを実施する方法について説明します。
この項は次のトピックで構成されています。
Oracle Data Integratorのセキュリティを定義するには、主に次の2つの手法があります。
保護強化手法: ユーザーにはオブジェクトに対する認可がデフォルトで付与されません。この手法で使用するのは、非汎用プロファイルのみです。セキュリティ管理者は、ユーザーにオブジェクト・インスタンスに対する認可を付与する必要があります。このポリシーの構成は、権限をインスタンス別に管理する必要があるため複雑です。
一般的手法: ユーザーは、保持しているプロファイルの権限を継承します。このポリシーは、ほとんどの環境に適しており、構成が簡単です。
保護強化手法を実装するには:
ユーザーを作成します。
ユーザーに非汎用プロファイル(組込みまたはカスタマイズ)を指定します。
オブジェクト・インスタンスの作成後に、その権限をユーザーに付与します。この操作は、新規のインスタンスすべてについて繰り返す必要があります。
一般的手法を実装するには:
ユーザーを作成します。
ユーザーに汎用プロファイル(組込みまたはカスタマイズ)を指定します。
注意: 汎用プロファイルと非汎用プロファイルを同時に使用すると、2つの手法を組み合せることができます。たとえば、ユーザーに対してDESIGNERとNG_METADATA_ADMINを使用すると、一般的手法でプロジェクトを管理し、保護強化手法でモデルを管理できます。 |
プロファイルは作成または削除できます。また、ユーザーに割り当てたプロファイルをカスタマイズするために複製できます。
プロファイルを作成するには:
セキュリティ・ナビゲータで、「プロファイル」アコーディオンを展開します。
「プロファイル」アコーディオンのツールバーで、「新規プロファイル」をクリックします。
「名前」フィールドに、プロファイルの名前を入力します。
「ファイル」メイン・メニューから「保存」を選択します。
新規プロファイルが表示されます。
プロファイルを複製するには:
セキュリティ・ナビゲータで、「プロファイル」アコーディオンを展開します。
プロファイルのリストから複製するプロファイルを選択します。
右クリックして「複製」を選択します。
新規プロファイル(元のプロファイルのコピー)が表示されます。
ユーザーは作成または削除できます。また、組込みプロファイルまたはカスタマイズしたプロファイルをユーザーに割り当てたり、それらのプロファイルを削除することができます。
ユーザーを作成するには:
セキュリティ・ナビゲータで、「ユーザー」アコーディオンを展開します。
「ユーザー」アコーディオンのツールバーで、「新規ユーザー」をクリックします。
「名前」フィールドに、ユーザーの名前を入力します。
ユーザーの「イニシャル」を入力します。
次のいずれかの操作を行います。
内部認証を使用する場合は、「パスワードを入力してください」をクリックし、このユーザーのパスワードを入力します。
外部認証を使用する場合は、「GUIDの取得」をクリックし、新規ユーザーを外部認証サービスのユーザーに関連付けます。Oracle Data Integratorのユーザー名は、外部認証記憶域のユーザー・ログインと一致している必要があります。一致が検出されると、グローバルの一意IDが「外部GUID」フィールドに表示されます。
「ファイル」メイン・メニューから「保存」を選択します。
新規ユーザーが「ユーザー」アコーディオンに表示されます。
プロファイルをユーザーに割り当てるには:
セキュリティ・ナビゲータで、「ユーザー」アコーディオンおよび「プロファイル」アコーディオンを展開します。
割り当てるプロファイルを選択し、割当先のユーザーにドラッグします。
「確認」ダイアログで、「OK」をクリックします。
このプロファイルが、割当先ユーザーの「プロファイル」の下に表示されます。このプロファイルに関連付けられている権限がユーザーに即時に付与されます。
ユーザーのプロファイルを削除するには:
セキュリティ・ナビゲータで、「ユーザー」アコーディオンを展開します。
ユーザーの下にある「プロファイル」ノードを展開します。
削除するプロファイルを右クリックします。
「削除」を選択します。
「確認」ダイアログで、「OK」をクリックします。
該当のプロファイルがこのユーザーの「プロファイル」から削除されます。このプロファイルを介してユーザーに割り当てられていたすべての権限が削除されます。
ユーザーまたはプロファイルを作成した後は、それらに権限を付与できます。付与できるのは、オブジェクト・タイプに適用するプロファイル・メソッドとユーザー・メソッド、および特定のオブジェクト・インスタンスに適用するオブジェクト・インスタンス別認可(ユーザー用のみ)です。
プロファイル・メソッドまたはユーザー・メソッドを付与するには:
セキュリティ・ナビゲータで、「ユーザー」アコーディオンまたは「プロファイル」アコーディオンを展開します。
「オブジェクト」アコーディオンを展開し、権限を付与するオブジェクトのノードを展開します。
付与するメソッドを選択し、そのメソッドを付与するユーザーまたはプロファイルにドラッグします。
確認ウィンドウで「OK」をクリックします。
メソッドがユーザーまたはプロファイルに付与されます。このメソッドは、ユーザーの「オブジェクト」ノードの下またはプロファイルの下に表示されます。
注意: オブジェクトのすべてのメソッドの権限を付与するには、メソッドの1つをドラッグするかわりに、オブジェクト自体をユーザーまたはプロファイルにドラッグします。 |
プロファイル・メソッドまたはユーザー・メソッドを取り消すには:
セキュリティ・ナビゲータで、「ユーザー」アコーディオンまたは「プロファイル」アコーディオンを展開します。
権限を取り消す「プロファイル」、またはユーザーの下にある「オブジェクト」ノードを展開し、取り消す必要があるオブジェクトのメソッドを展開します。
メソッドを右クリックし、「削除」を選択します。
「確認」ダイアログで、「OK」をクリックします。
メソッドがユーザーまたはプロファイルから取り消されます。このユーザーまたはプロファイルの「オブジェクト」ノードの下のメソッド・リストから、このメソッドの表示が消去されます。
オブジェクト・インスタンス別認可をユーザーに付与するには:
セキュリティ・ナビゲータで、「ユーザー」アコーディオンを展開します。
デザイナ・ナビゲータ、オペレータ・ナビゲータまたはトポロジ・ナビゲータで、権限を付与するオブジェクトが格納されているアコーディオンを展開します。
オブジェクトを選択し、「ユーザー」アコーディオンのユーザーにドラッグします。オブジェクト・インスタンス別認可のエディタが表示されます。このエディタには、このインスタンスで使用可能なメソッドのリストと、このオブジェクトに格納されているインスタンスが表示されます。たとえば、プロジェクト・インスタンスの権限を付与する場合は、そのプロジェクトに格納されているフォルダ、インタフェースなどがエディタに表示されます。
付与する権限をオブジェクトおよびメソッドごとに微調整します。リストから選択したメソッドには、次の簡単な権限ポリシーを実装できます。
すべてのリポジトリのすべてのメソッドを付与するには「すべてのリポジトリ内の選択したメソッドを許可」をクリックします。
すべてのリポジトリのすべてのメソッドを拒否するには「すべてのリポジトリ内の選択したメソッドを拒否」をクリックします。
特定の作業リポジトリのすべてのメソッドを付与するには、「選択したリポジトリ内の選択したメソッドを許可」をクリックし、リストからリポジトリを選択します。
「ファイル」メイン・メニューから「保存」を選択します。
注意: オブジェクト・インスタンス別認可をサポートしているのは、特定のオブジェクトのみです。これらのオブジェクト・タイプは、各ユーザーの「インスタンス」ノードの下にリストされています。 ユーザーに一般権限があるメソッドは、オブジェクト・インスタンス・エディタにリストされません。 |
オブジェクト・インスタンス別認可をユーザーから取り消すには:
セキュリティ・ナビゲータで、「ユーザー」アコーディオンを展開します。
権限を取り消すユーザーの下にある「インスタンス」ノードを展開します。
認可を取り消すインスタンスを右クリックし、「削除」を選択します。
「確認」ダイアログで、「OK」をクリックします。
オブジェクト・インスタンスの認可が、ユーザーから取り消されます。
注意: オブジェクト・インスタンス別認可を編集し、特定のメソッドをユーザーに対して拒否することで、メソッドごとに権限を取り消すこともできます。この操作の後に、インスタンスに対する権限がユーザーになくなると、そのインスタンスはセキュリティ・マネージャのツリーから削除されます。 |
オブジェクト・インスタンス別認可は、マスター・リポジトリに格納されています。すべての作業リポジトリからオブジェクトを削除した場合でも、その認可の削除が必要とは限りません。特定の未使用認可が、エクスポート・ファイルやストアド・ソリューションに現在格納されているオブジェクトを参照している場合など、それらの認可の保持が必要な場合があります。
未使用認可をマスター・リポジトリから削除するには、セキュリティ・クリーン・アップ・ツールを定期的に使用する必要があります。未使用認可は、それらの認可がマスター・リポジトリまたはすべての作業リポジトリに存在しないオブジェクトを参照している場合に削除されます。
注意: マスター・リポジトリに関連付けられているすべての作業リポジトリは、オブジェクトの存在を確認するためにアクセスできる必要があります。 |
未使用認可をクリーン・アップするには:
セキュリティ・ナビゲータのツールバー・メニューから「セキュリティ設定のクリーンアップ」を選択します。「セキュリティ・クリーンアップ・ツール」ダイアログが表示されます。
「クリーニング可能」タブで、削除するクリーニング可能セキュリティ設定に対して「クリーン」を選択します。削除できないセキュリティ設定は、「クリーニング不可」タブに表示されます。
「OK」をクリックし、選択したセキュリティ設定をクリーン・アップします。
この項では、いくつかの高度なセキュリティ機能を使用して、Oracle Data Integratorのセキュリティを向上させる方法について説明します。
この項の内容は次のとおりです。
Oracle Java Platform Security(JPS)には、認証および認可のために標準のJavaセキュリティ・モデル・サービスが用意されています。
Oracle Data Integratorでは、すべてのセキュリティ情報がデフォルトでマスター・リポジトリに格納されます。このパスワード記憶域オプションは内部パスワード記憶域と呼ばれます。
Oracle Data Integratorでは、オプションで、重要なセキュリティ情報を格納するためにJPSを使用できます。Oracle Data IntegratorでJPSを使用すると、データ・サーバー・パスワードおよびコンテキスト・パスワードがJPS資格証明ストア・フレームワーク(CSF)に格納されます。このパスワード記憶域オプションは、外部パスワード記憶域と呼ばれます。
注意: 外部パスワード記憶域を使用した場合、ユーザー名、パスワード、権限などの他のセキュリティ詳細はマスター・リポジトリに残ります。外部認証を使用すると、認証を外部化し、ユーザーとパスワードをアイデンティティ・ストアに格納できます。詳細は、24.3.2項「外部認証の設定」を参照してください。 |
外部パスワード記憶域オプションを使用するには、JPSで構成されたWebLogic Serverインスタンスをインストールする必要があり、すべてのOracle Data Integratorコンポーネント(ランタイム・エージェントを含む)が、リモート資格証明ストアにアクセスできる必要があります。詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドのOPSSを使用するためのJavaEEアプリケーションの構成を参照してください。
パスワード記憶域を設定または変更するには、次の4つの方法があります。
マスター・リポジトリのインポート: パスワード記憶域を変更できます。
マスター・リポジトリの作成: パスワード記憶域を定義できます。
パスワード記憶域の切替え: 既存のマスター・リポジトリのパスワード記憶域を変更します。
パスワード記憶域のリカバリ: 資格証明ストアのキャッシュをリカバリできます。
Oracle Data Integratorリポジトリのパスワード記憶域を切り替えると、データ・サーバーとコンテキストのパスワードの格納方法が変更されます。この操作は、スーパーバイザ・ユーザーが実行する必要があります。
データ・サーバーのパスワードのパスワード記憶域オプションを変更するには、パスワード記憶域の切替えウィザードを使用します。
パスワード記憶域の切替えウィザードを起動する前に、次のタスクを実行します。
Oracle Data Integrator Studioをリポジトリから切断します。
Oracle Data Integratorリポジトリを使用しているすべてのコンポーネントをシャットダウンします。
パスワード記憶域の切替えウィザードを起動するには:
「ODI」メイン・メニューから「パスワード記憶域」→「切替え」の順に選択します。
Oracle Data Integratorのマスター・リポジトリのログイン詳細を、マスター・リポジトリへの接続のときに定義したとおりに指定します。
「次へ」をクリックします。
パスワード記憶域を次のように選択します。
パスワードをOracle Data Integratorリポジトリに格納する場合は、「内部パスワード記憶域」を選択します。
JPS資格証明ストア・フレームワーク(CSF)を使用して、データ・サーバーおよびコンテキストのパスワードを格納する場合は、「外部パスワード記憶域」を選択します。
外部パスワード記憶域を選択した場合は、表24-2の説明に従ってMBeanサーバー・パラメータを指定し、資格証明ストアにアクセスします。次に「テスト接続」をクリックし、MBeanサーバーへの接続を確認します。
「終了」をクリックします。
パスワード記憶域オプションが変更されました。これで、Oracle Data Integratorリポジトリに再接続できます。
Oracle Data Integratorでは、外部パスワード記憶域がクラッシュした場合にのみ使用されるパスワード・リカバリ・サービスを提供しています。この手順を使用すると、外部記憶域を使用できなくなるため、パスワード記憶域は強制的に内部パスワード記憶域になります。この操作は、スーパーバイザ・ユーザーが実行する必要があります。
警告: パスワード記憶域のリカバリを実行すると、コンテキストのパスワード、データ・サーバーのパスワード、作業リポジトリのjdbcパスワードおよびESS関連パスワードが失われ、トポロジ・ナビゲータで手動で再入力する必要があります。 |
パスワードのリカバリを開始には、パスワード記憶域のリカバリ・ウィザードを使用します。
パスワード記憶域のリカバリ・ウィザードを起動するには:
「ODI」メイン・メニューから「パスワード記憶域」→「リカバリ」の順に選択します。
Oracle Data Integratorのマスター・リポジトリのログイン詳細を、マスター・リポジトリへの接続のときに定義したとおりに指定します。
「終了」をクリックします。
データ・サーバーおよびコンテキストのパスワードを手動で再入力します。詳細は、第4章「トポロジの設定」を参照してください。
Oracle Platform Security Services(OPSS)は、Javaアプリケーションの標準に基づいた移植可能なセキュリティ・フレームワークです。OPSSには、認証および認可のために標準のJavaセキュリティ・モデル・サービスが用意されています。
Oracle Data Integratorでは、すべてのユーザー情報およびユーザーの権限がデフォルトでマスター・リポジトリに格納されます。ユーザーがOracle Data Integratorにログインすると、マスター・リポジトリと照合してログが記録されます。この認証方法は、内部認証と呼ばれます。
Oracle Data Integratorでは、オプションでOPSSを使用して、外部のアイデンティティ・ストアと照合してユーザーを認証できます。アイデンティティ・ストアには、エンタープライズ・ユーザーとパスワードが記載されています。このようなアイデンティティ・ストアは、ユーザーおよびパスワードを定義し、Single-Sign On(SSO)を集中管理するために、アプリケーションではエンタープライズ・レベルで使用されます。このような構成で、リポジトリに含まれるのはエンタープライズ・ユーザーへの参照のみです。この認証方法は、外部認証と呼ばれます。
注意: 外部認証を使用した場合、外部化されるのはユーザーおよびパスワードのみです。Oracle Data Integratorの権限は、リポジトリ内に残ります。データ・サーバーおよびコンテキストのパスワードもマスター・リポジトリに残ります。データ・サーバーおよびコンテキストのパスワードを外部化するには、外部パスワード記憶域機能を使用します。詳細は、24.3.1項「外部パスワード記憶域の設定」を参照してください。 |
外部認証オプションを使用するには、エンタープライズ・アイデンティティ・ストア(LDAP、Oracle Internet Directoryなど)を構成し、Oracle Data Integratorの各コンポーネントがデフォルトでそのアイデンティティ・ストアを参照するように構成する必要があります。
Oracle Data Integrator Studio
アイデンティティ・ストアに接続して使用するための構成は、jps-config.xml
ファイルと呼ばれるOPSS構成ファイルにあります。詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドのOPSSを使用するためのJavaEEアプリケーションの構成を参照してください。
このファイルをODI_HOME/client/odi/bin/
ディレクトリにコピーします。Studioは、このアイデンティティ・ストアの構成を読み取り、構成したアイデンティティ・ストアと照合して認証します。
このファイルを別の場所に配置する場合は、ODI_HOME/client/odi/bin/odi.conf
ファイルを編集し、構成ファイルの場所を設定するオプションを編集します。このオプションは、次の行に設定されています。
AddVMOption -Doracle.security.jps.config=./jps-config.xml
スタンドアロン・エージェント
アイデンティティ・ストアに接続して使用するための構成は、jps-config.xml
ファイルと呼ばれるOPSS構成ファイルにあります。詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドを参照してください。
このファイルをODI_HOME/agent/bin/
ディレクトリにコピーします。このエージェントとコマンド行のスクリプトは構成したアイデンティティ・ストアと照合して認証されます。
Java EEコンポーネント
コンテナ(Java EEエージェント、Oracle Data Integratorコンソール)にデプロイされたOracle Data Integratorコンポーネントには、特定の構成は必要ありません。これらのコンポーネントでは、それぞれのコンテナの構成が使用されます。
Java EEコンテキストでのOPSS構成の詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドのOracle Access Manager 10gを使用したSSO用のOAMアイデンティティ・アサーションの構成を参照してください。
パスワード記憶域を設定または変更するには、次の2つの方法があります。
マスター・リポジトリの作成: 認証モードを定義できます。
認証モードの切替え: 既存のマスター・リポジトリの認証モードを変更します。
Oracle Data Integratorリポジトリの認証モードを切り替えると、ユーザーの認証方法が変更されます。この操作は、スーパーバイザ・ユーザーが実行する必要があります。
警告: 外部認証から内部認証に切り替える際には、ユーザー・パスワードがアイデンティティ・ストアからリポジトリにコピーされません。パスワードは無効になります。すべてのユーザー・アカウントが期限切れになるので、切り替え時に作成されるSUPERVISORで再度アクティブにする必要があります。 内部認証から外部認証に切り替える際には、リポジトリに存在し、アイデンティティ・ストアのユーザーと一致するユーザーが自動的にマッピングされます。アイデンティティ・ストアのユーザーと一致しないユーザーは無効になります。スーパーバイザは、アイデンティティ・ストアの名前と一致するようにユーザーを編集する必要があります。 コンテキストのパスワードが失われます。データ・サーバーのパスワード、作業リポジトリのjdbcパスワードおよびESS関連パスワードは資格証明ストアから別の場所に移動します。 |
ユーザー認証モードを変更するには、認証モードの切替えウィザードを使用します。
認証モードの切替えウィザードを起動する前に、次のタスクを実行します。
Oracle Data Integrator Studioをリポジトリから切断します。
Oracle Data Integratorリポジトリを使用しているすべてのコンポーネントをシャットダウンします。
認証モードの切替えウィザードを使用するには:
「ODI」メイン・メニューから「認証モードの切替え」を選択します。認証モードの切替えウィザードが表示されます。
Oracle Data Integratorのマスター・リポジトリのJDBC接続詳細を、マスター・リポジトリへの接続のときに定義したとおりに指定します。
「次へ」をクリックします。
現在使用中の認証モードによって、次のアクションが異なります。
内部認証を現在使用している場合は、外部認証に切り替えるようにプロンプトが表示されます。
外部認証を現在使用している場合は、内部認証に切り替えるようにプロンプトが表示されます。ウィザードがリポジトリに自動的に作成するSUPERVISORユーザーのパスワードを入力して確認する必要があります。
「終了」をクリックします。
認証モードが変更されます。
外部認証から内部認証に切り替えた場合は、このウィザードに入力したパスワードを使用して、SUPERVISOR
でOracle Data Integratorリポジトリに再接続できます。接続した後は、各ユーザーを編集して再アクティブ化し、そのユーザーにパスワードを設定できます。
外部認証から内部認証に切り替えた場合は、スーパーバイザ権限のあるユーザーの1人としてOracle Data Integratorリポジトリに再接続し、切替え時に無効化されていたOracle Data Integratorユーザーを再度有効化できます。
内部認証への切替え後のユーザーの再アクティブ化
ユーザーを再アクティブ化するには:
セキュリティ・ナビゲータで、「ユーザー」アコーディオンを展開します。
ユーザーのリストから再度アクティブ化するユーザーを選択します。
右クリックして「編集」を選択します。ユーザーのエディタが表示されます。
「有効期限の許可」の選択を解除します。
このユーザーにパスワードを設定する場合は、「パスワードの変更」をクリックし、このユーザーの新規パスワードを入力します。
「ファイル」メイン・メニューから「保存」を選択します。
外部認証への切替え後のユーザーの再有効化
ユーザーを再度有効化するには:
セキュリティ・ナビゲータで、「ユーザー」アコーディオンを展開します。
ユーザーのリストから再度有効化するユーザーを選択します。
右クリックして「編集」を選択します。ユーザーのエディタが表示されます。
「名前」フィールドに、アイデンティティ・ストアのログインのエンタープライズ・ユーザーと一致するユーザー名を入力します。
「GUIDの取得」をクリックします。ユーザー名がアイデンティティ・ストアで一致した場合は、この外部ユーザーのGUIDが「外部GUID」フィールドに表示されます。
「ファイル」メイン・メニューから「保存」を選択します。
OPSS構成ファイルは、ポリシー、資格証明ストア、アイデンティティ・ストア、ログイン・モジュールおよび監査サービスを構成するために使用します。
デフォルトでは、OPSSサービスを構成するファイルには、jps-config.xml
(Java EEアプリケーション用)またはjps-config-jse.xml
(Java SEアプリケーション用)という名前が付けられます。
ODI Studio用の構成ファイルの構成
次のようにODI Studio用の構成ファイルを構成します:
LDAPサーバーのブートストラップ資格証明、つまりユーザー名とパスワードを隠すためのcwallet.sso
ファイルを作成します(または、すでに存在する場合は更新します)。
<ODI_HOME>/oracle.odi.studio/oracledi/client/odi/bin
のodi_credtool.sh
スクリプトを実行します。
次を要求されます:
パラメータ | 例 |
---|---|
マップ名 |
|
キー名 |
|
ブートストラップ・ユーザー名 |
|
ブートストラップ・パスワード |
マップ名とキー名は、非公開の資格証明との関連付けに使用するため、手順4で使用します。
次のメッセージが表示されます。
The credential has been successfully added to the Oracle wallet file: cwallet.sso. Please update your jps-config.xml file accordingly on values of the two properties: bootstrap.security.principal.map, bootstrap.security.principal.key
同じディレクトリ内で、JPSテンプレート・ファイルのjps-config.xml_template
をjps-config.xml
にコピーします。デフォルトでは、このjps-config.xml
ファイルがユーザーの外部認証に使用されます。
前述の手順で入手したjps-config.xml
内のLDAPサーバーを、使用するLDAPサーバー情報(URLや関連プロパティ、およびブートストラップ・マップとブートストラップ・キー)で構成します。
これらのLDAPプロパティは、このファイル内のJPS OID LDAPアイデンティティ・ストア・サービス・インスタンス構成セクション(<serviceInstance name="idstore.oid" provider="idstore.ldap.provider">
で始まるセクション)にリストされています。
bootstrap.security.principal.map
およびbootstrap.security.principal.key
プロパティは、手順1.1で入力したマップとキーと同じ値にしてください。
例: 24-1は、jps-config.xml
ファイル内のLDAPサーバー構成の例です。
例24-1 jps-config.xmlファイル内のLDAPサーバー構成
-------------- <!-- JPS 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="jps_map"/> <property name="bootstrap.security.principal.key" value="jps_key"/> <property name="ldap.url" value="ldap://example.oracle.com"/><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> <property name="username.attr" value="uid" /> <property name="groupname.attr" value="cn" /> </serviceInstance> -----------------
ODI Studioを起動し、外部認証モードでマスター・リポジトリを作成します。
スタンドアロン・エージェント用の構成ファイルの構成
スタンドアロン・エージェントの場合は、odi_credtool.sh
スクリプトが<ODI_HOME>/oracle.odi.studio/oracledi/agent/bin
ディレクトリにあること以外は、ODI Studioの場合の構成と同じ手順に従ってください。
パスワード・ポリシーは、内部認証の使用時にユーザー・パスワードに適用する一連のルールで構成されています。この一連のルールは、ユーザーがパスワードを定義したり、変更した場合に適用されます。
パスワード・ポリシーを定義するには:
セキュリティ・ナビゲータのツールバー・メニューから「パスワード・ポリシー」を選択します。
「パスワード・ポリシー」ダイアログが表示されます。このダイアログには、ルールのリストが表示されます。
パスワードを自動的に期限切れにする場合は、「パスワード有効日数」を選択し、パスワードの変更が必要になるまでの日数を設定します。
「ポリシーの追加」をクリックします。「ポリシー定義」ダイアログが表示されます。ポリシーは、パスワードをチェックする一連の条件です。
この新規ポリシーに「名前」と「説明」を設定します。
「ルール」セクションで、パスワードのテキストまたは長さに対する条件をいくつか追加します。たとえば、パスワードの最小文字数を定義できます。
「一致する条件」リストで、パスワードが少なくとも1つの条件に一致する必要があるのか、またはすべての条件に一致する必要があるのかを選択します。
「OK」をクリックします。
必要な数のポリシーを追加し、アクティブ化するルールのポリシーに対して「アクティブ」を選択します。すべてのポリシーを満たすパスワードのみが、現在のポリシーで有効とみなされます。
「OK」をクリックし、パスワード・ポリシーを更新します。
このセクションでは、Oracle Access Manager (OAM) 11gを使用して、Oracle Data IntegratorコンソールおよびEnterprise Managerのシングル・サインオンをオプションで構成する方法について説明します。
Oracle Data IntegratorコンソールおよびEnterprise Managerのシングル・サインオンを構成するには:
ブラウザを使用して、OAMコンソールにログインします。
http://host:port/oamconsole
「ポリシー構成」→「アプリケーション・ドメイン」に移動します。
「Policy Manager」ペインが表示されます。
webgateエージェントの登録時の名前を使用して作成したアプリケーション・ドメインを探します。
「リソース」ノードを展開して、「作成」をクリックします。
リソース・ページが表示されます。
セキュリティ保護が必要なリソースを追加します。リソースごとに次の手順を行います。
「リソース・タイプ」としてhttp
を選択します。
WebGateエージェントの登録時に作成したホスト識別子を選択します。
「リソースURL」を次のように入力します。
リソースURL | ODIコンポーネント |
---|---|
|
ODIコンソール |
|
ODIコンソール |
|
Enterprise Manager |
|
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ログイン・フォームのプロンプトが表示されます。
ODIにあわせてOAM 11gをインストールして構成する方法の詳細は、Oracle Fusion Middleware Oracle Data Integratorインストレーション・ガイドの3.4項のODIとOracle Access Mananger 11gの統合を参照してください。