11 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を介して処理されたデザインタイム・アーティファクトまたはランタイム・アーティファクトの表現です。オブジェクトの例には、エージェント、プロジェクト、モデル、データストア、シナリオ、マッピング、リポジトリなどが含まれます。特定のオブジェクトには、エージェント/コンテキストおよびプロファイル/メソッドなど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つの手法があります。

  • 保護強化手法: ユーザーにはオブジェクトに対する認可がデフォルトで付与されません。この手法で使用するのは、非汎用プロファイルのみです。セキュリティ管理者は、ユーザーにオブジェクト・インスタンスに対する認可を付与する必要があります。このポリシーの構成は、権限をインスタンス別に管理する必要があるため複雑です。

  • 一般的手法: ユーザーは、保持しているプロファイルの権限を継承します。このポリシーは、ほとんどの環境に適しており、構成が簡単です。

保護強化手法を実装するには:

  1. ユーザーを作成します。

  2. ユーザーに非汎用プロファイル(組込みまたはカスタマイズ)を指定します。

  3. オブジェクト・インスタンスの作成後に、それらのインスタンスの権限をユーザーに付与します。この操作は、新規のインスタンスすべてについて繰り返す必要があります。

一般的手法を実装するには:

  1. ユーザーを作成します。

  2. ユーザーに汎用プロファイル(組込みまたはカスタマイズ)を指定します。

注意:

汎用プロファイルと非汎用プロファイルを同時に使用すると、2つの手法を組み合せることができます。たとえば、ユーザーに対してDESIGNERとNG_METADATA_ADMINを使用すると、一般的手法でプロジェクトを管理し、保護強化手法でモデルを管理できます。

プロファイルの管理

作成、削除または複製できます。プロファイルの作成または複製により、ユーザーに割り当てたプロファイルのカスタマイズが可能です。次の各トピックでは、Oracle Data Integrator Studioでこれらの処理を実行するステップを説明します。

新規プロファイルの作成

プロファイルを作成するには、次のようにします。

  1. セキュリティ・ナビゲータで、「プロファイル」ナビゲーション・ツリーを展開します。
  2. 「プロファイル」ナビゲーション・ツリーのツールバーで、「新規プロファイル」をクリックします。
  3. 「名前」フィールドに、プロファイルの名前を入力します。
  4. 「ファイル」メイン・メニューから「保存」を選択します。

新規プロファイルが表示されます。

プロファイルの複製

プロファイルを複製するには:

  1. セキュリティ・ナビゲータで、「プロファイル」ナビゲーション・ツリーを展開します。
  2. プロファイルのリストから複製するプロファイルを選択します。
  3. 右クリックして「複製」を選択します。

新規プロファイルが表示されますが、これは元のプロファイルのコピーです。

プロファイルの削除

プロファイルを削除するには、次のようにします。

  1. セキュリティ・ナビゲータで、「プロファイル」ナビゲーション・ツリーを展開します。
  2. プロファイルのリストから削除するプロファイルを選択します。
  3. 右クリックして「削除」を選択します。
  4. 「確認」ダイアログで、「OK」をクリックします。

プロファイルがリストから削除されます。このプロファイルが付与されているすべてのユーザーは、このプロファイルに関連付けられている権限を失います。

ユーザーの管理

ユーザーの管理方法は、ある程度、ユーザーが定義されている場所によって異なります。デフォルトでは、ユーザーはリポジトリへの接続に使用されるログイン名に対応し、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の内部リポジトリにユーザーを作成するには:

  1. セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーを展開します。
  2. 「ユーザー」ナビゲーション・ツリーのツールバーで、「新規ユーザー」をクリックします。
  3. 「名前」フィールドに、ユーザーの名前を入力します。
  4. ユーザーの「イニシャル」を入力します。
  5. 次のいずれかを行います:
    • 内部認証を使用する場合は、「パスワードを入力してください」をクリックし、このユーザーのパスワードを入力します。

    • 外部認証を使用する場合は、「GUIDの取得」をクリックし、新規ユーザーを外部アイデンティティ・ストアのユーザーに関連付けます。Oracle Data Integratorでのユーザー名とアイデンティティ・ストアでのユーザー名が一致している必要があります。一致が検出されると、グローバルの一意IDが「外部GUID」フィールドに表示されます。

  6. 「ファイル」メイン・メニューから「保存」を選択します。

新規ユーザーが「ユーザー」ナビゲーション・ツリーに表示されます。「ユーザー」エディタから、ODIスーパーバイザ・ユーザーは他のODIユーザー・アカウント(他のスーパーバイザ・アカウントを含む)を無効にできます。

警告:

常に、少なくとも1つのスーパーバイザ・ユーザー・アカウントを保持する必要があります。すべてのスーパーバーザ・ユーザー・アカウントの有効期限が切れた場合は、Oracleサポートに連絡してください。

ユーザーへのプロファイルの割当て

プロファイルをユーザーに割り当てるには:

  1. セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーおよび「プロファイル」ナビゲーション・ツリーを展開します。
  2. 割り当てるプロファイルを選択し、割当先のユーザーにドラッグします。
  3. 「確認」ダイアログで、「OK」をクリックします。

このプロファイルが、割当先ユーザーのプロファイルの下に表示されます。このプロファイルに関連付けられている権限がユーザーに即時に付与されます。

注意:

外部認証が有効な場合、プロファイルをロールに割り当てることができます。特定のOracle Data Integratorロールに定義されているユーザーには、そのロールに割り当てられているすべてのプロファイルが付与されます。エンタープライズ・ロール統合では、より便利で大雑把な手法を使用してユーザーに付与された権限を管理します。詳細は、「Oracle Data Integratorロールへの権限またはプロファイルの割当て」を参照してください。

ユーザーのプロファイルの削除

ユーザーのプロファイルを削除するには:

  1. セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーを展開します。
  2. ユーザーの下にある「プロファイル」ノードを展開します。
  3. 削除するプロファイルを右クリックします。
  4. 「削除」を選択します。
  5. 「確認」ダイアログで、「OK」をクリックします。

このユーザーに割り当てられているプロファイルのリストから、該当のプロファイルが削除されます。このプロファイルによってユーザーに付与されていたすべての権限が削除されます。

注意:

外部認証が有効な場合、ロールからプロファイルを削除できます。特定のOracle Data Integratorロールに定義されているユーザーには、そのロールに割り当てられているプロファイルのみが付与されます。詳細は、「Oracle Data Integratorロールへの権限またはプロファイルの割当て」を参照してください。

内部リポジトリのユーザーの削除

Oracle Data Integratorの内部リポジトリに定義されているユーザーを削除するには:

  1. セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーを展開します。
  2. ユーザーのリストから削除するユーザーを選択します。
  3. 右クリックして「削除」を選択します。
  4. 「確認」ウィンドウで「OK」をクリックします。

ユーザーがリストから削除されます。

ユーザー接続情報の表示

ユーザー接続情報を表示するには:

  1. セキュリティ・ナビゲータのツールバー・メニューから「ユーザー・アクティビティの確認」を選択します。「ユーザー接続」ダイアログが表示されます。

  2. フィルタ基準を入力して関連するユーザー接続情報を表示し、「フィルタ」をクリックします。

フィルタの設定基準に基づいてユーザー接続が「接続」セクションに表示されます。

権限の管理

ユーザーおよびプロファイルを作成した後は、これらのユーザーに権限を付与できます。付与できるのは、オブジェクト・タイプに適用するプロファイル・メソッドとユーザー・メソッド、および特定のオブジェクト・インスタンスに適用するオブジェクト・インスタンス別認可(ユーザー用のみ)です。

注意:

Oracle Data Integratorコンポーネントで外部認証が有効な場合、エンタープライズ・ロール統合機能を使用してユーザーの権限をより適切に管理できます。詳細は、「ロール・エディタの使用」を参照してください。

プロファイル・メソッドまたはユーザー・メソッドの付与

プロファイル・メソッドまたはユーザー・メソッドを付与するには:

  1. セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーまたは「プロファイル」ナビゲーション・ツリーを展開します。
  2. 「オブジェクト」ナビゲーション・ツリーを展開し、権限を付与するオブジェクトのノードを展開します。
  3. 付与するメソッドを選択し、そのメソッドを付与するユーザーまたはプロファイルにドラッグします。
  4. 「確認」ウィンドウで「OK」をクリックします。

メソッドがユーザーまたはプロファイルに付与されます。このメソッドは、ユーザーのオブジェクト・ノードの下またはプロファイルの下に表示されます。

注意:

オブジェクトのすべてのメソッドに対する権限を付与するには、メソッドの1つをドラッグするかわりに、オブジェクト自体をユーザーまたはプロファイル上にドラッグします。

プロファイル・メソッドまたはユーザー・メソッドの取消し

プロファイル・メソッドまたはユーザー・メソッドを取り消すには:

  1. セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーまたは「プロファイル」ナビゲーション・ツリーを展開します。
  2. 権限を取り消す「プロファイル」、またはユーザーの下にある「オブジェクト」ノードを展開し、取り消す必要があるオブジェクトのメソッドを展開します。
  3. メソッドを右クリックし、「削除」を選択します。
  4. 「確認」ダイアログで、「OK」をクリックします。

ユーザーまたはプロファイルからメソッドが取り消されます。このユーザーまたはプロファイルのオブジェクト・ノードの下のメソッド・リストから、このメソッドの表示が消去されます。

オブジェクト・インスタンス別認可の付与

オブジェクト・インスタンス別認可をユーザーに付与するには:

  1. セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーを展開します。
  2. デザイナ・ナビゲータ、オペレータ・ナビゲータまたはトポロジ・ナビゲータで、権限を付与するオブジェクトが格納されているナビゲーション・ツリーを展開します。
  3. このオブジェクトを選択して、「ユーザー」ナビゲーション・ツリーにドラッグします。オブジェクト・インスタンス別認可のエディタが表示されます。このエディタには、このインスタンスで使用可能なメソッドのリストと、このオブジェクトに格納されているインスタンスが表示されます。たとえば、プロジェクト・インスタンスの権限を付与する場合は、そのプロジェクトに格納されているフォルダおよびマッピングがエディタに表示されます。
  4. 付与する権限をオブジェクトおよびメソッドごとに微調整します。リストから選択したメソッドには、次の簡単な権限ポリシーを実装できます。
    • すべてのリポジトリのすべてのメソッドを付与するには「すべてのリポジトリ内の選択したメソッドを許可」をクリックします。

    • すべてのリポジトリのすべてのメソッドを拒否するには「すべてのリポジトリ内の選択したメソッドを拒否」をクリックします。

    • 特定の作業リポジトリのすべてのメソッドを付与するには、「選択したリポジトリ内の選択したメソッドを許可」をクリックし、リストからリポジトリを選択します。

  5. 「ファイル」メイン・メニューから「保存」を選択します。

注意:

オブジェクト・インスタンス別認可をサポートしているのは、特定のオブジェクトのみです。これらのオブジェクト・タイプは、各ユーザーの「インスタンス」ノードの下にリストされています。

ユーザーに一般権限があるメソッドは、オブジェクト・インスタンス・エディタにリストされません。

オブジェクト・インスタンス別認可の取消し

オブジェクト・インスタンス別認可をユーザーから取り消すには:

  1. セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーを展開します。
  2. 権限を取り消すユーザーの下にある「インスタンス」ノードを展開します。
  3. 認可を取り消すインスタンスを右クリックし、「削除」を選択します。
  4. 「確認」ダイアログで、「OK」をクリックします。

オブジェクト・インスタンスの認可が、ユーザーから取り消されます。

注意:

オブジェクト・インスタンス別認可を編集し、特定のメソッドをユーザーに対して拒否することで、メソッドごとに権限を取り消すこともできます。この操作の後に、インスタンスに対する権限がユーザーになくなると、そのインスタンスはセキュリティ・マネージャのツリーから削除されます。

未使用認可のクリーン・アップ

オブジェクト・インスタンス別認可は、マスター・リポジトリに格納されています。すべての作業リポジトリからオブジェクトを削除した場合でも、その認可の削除が必要とは限りません。特定の未使用認可が、エクスポート・ファイルやストアド・ソリューションに現在格納されているオブジェクトを参照している場合などは、それらの認可を保持することをお薦めします。

未使用認可をマスター・リポジトリから削除するには、セキュリティ・クリーンアップ・ツールを定期的に使用する必要があります。未使用認可は、それらの認可がマスター・リポジトリまたはすべての作業リポジトリに存在しないオブジェクトを参照している場合に削除されます。

注意:

マスター・リポジトリに連結されているすべての作業リポジトリは、リポジトリ内にオブジェクトが存在するか確認できるようにアクセス可能である必要があります。

未使用認可をクリーン・アップするには:

  1. セキュリティ・ナビゲータのツールバー・メニューから、「セキュリティ設定のクリーンアップ」を選択します。「セキュリティ・クリーンアップ・ツール」ダイアログが表示されます。
  2. 「クリーニング可能」タブで、削除するクリーニング可能セキュリティ設定に対して「クリーン」を選択します。削除できないセキュリティ設定は、「クリーニング不可」タブに表示されます。
  3. 「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に初めてログインするときに、次のステップを使用して、パスワードで保護されたウォレットを作成できます。

  1. ウォレットを格納するためのルート・ディレクトリがマシンにない場合はこれを作成します。

    Windowsの場合:

    Windowsマシンの場合は、ルート・ディレクトリ・パスodi\\oraclediを環境変数%APPDATA%で表される場所に作成する必要があります。次に例を示します。

    c:\> mkdir %APPDATA%\odi\oracledi
    

    UNIXの場合:

    UNIXマシンの場合は、ルート・ディレクトリ・パスodi\\oraclediを環境変数$HOMEで表される場所に作成する必要があります。次に例を示します。

    prompt> mkdir -p $HOME/.odi/oracledi/
    
  2. ORACLE_HOME/odi/studioディレクトリに移動します。
  3. 次のコマンドを実行してOracle Data Integrator Studioを起動します。

    Windowsの場合:

    odi.exe
    

    UNIXの場合:

    ./odi.sh
    

    Studioのメイン・ウィンドウが表示されます。

  4. 「リポジトリへの接続」をクリックします。

    図11-1に示すように、「新規ウォレット・パスワード」ダイアログ・ボックスが表示されます。

    図11-1 「新規ウォレット・パスワード」ダイアログ・ボックス

    図11-1の説明が続く
    「図11-1 「新規ウォレット・パスワード」ダイアログ・ボックス」の説明
  5. デフォルト・オプションの「セキュアなウォレットにパスワードを格納する」を選択して、「ウォレット・パスワード」および「ウォレット・パスワードの確認」の各フィールドにパスワードを入力します。

    オプションで、パスワードの有効期限を変更できます。

  6. 「OK」をクリックします。

    マスター・リポジトリのログイン資格証明を入力するよう促されます。必要な資格証明の詳細は、「マスター・リポジトリの作成」を参照してください。

今後、Studioにログインしてリポジトリに接続するたびにウォレット・パスワードを入力するよう促されます。

他のユーザーへのリポジトリ・アクセスの許可

Oracle Data Integratorユーザーにリポジトリへのアクセスを許可するには、次のどちらかの方法を使用して、パスワードで保護されたウォレットをユーザーに配布します。

  • 作成したewallet.p12ファイルのコピーを、指定したパスワードとともに各ユーザーに配布します。

  • 各Oracle Data Integratorユーザーに対して個別にパスワードで保護されたウォレットを作成します。この場合、各ウォレットに異なるパスワードを設定できます。

他のユーザー用にウォレットを作成する場合は、次の点に注意してください。

  1. 新規ウォレットを作成する前に、既存のewallet.p12ファイルを別のディレクトリに移動します。

  2. 他のユーザー用のウォレットを作成する場合は、有効期限を0日に設定します。こうすることで、ユーザーが初めてリポジトリに接続するときに、各自のウォレットに新しいパスワードを設定するよう促されます(「ウォレット・パスワードの変更」を参照)。

「パスワードで保護されたウォレットの作成」の説明のとおり、Oracle Data Integrator Studioで使用されるすべてのパスワードで保護されたウォレットのファイルはewallet.p12と命名され、そのファイルが使用されるマシンの~oracledi/ewalletディレクトリに配置される必要があります。

ウォレット・パスワードの変更

ウォレットのパスワードの有効期限が切れると、リポジトリに接続する際に、自動的に新しいパスワードを入力するよう促されます。ただし、ウォレット・パスワードは次の方法でStudioからいつでも変更できます。

  1. Oracle Data Integrator Studioを起動します。
  2. 「ODI」メニューから「ウォレット・パスワードの変更...」を選択します。

    図11-2に示すような「ウォレット・パスワードの変更」ダイアログ・ボックスが表示されます。

    図11-2 「ウォレット・パスワードの変更」ダイアログ・ボックス

    図11-2の説明が続きます
    「図11-2 「ウォレット・パスワードの変更」ダイアログ・ボックス」の説明
  3. 現在のパスワードおよび新しいパスワードを入力し、新しいパスワードを確認します。

    オプションで、有効期限を変更することも可能です。

  4. 「OK」をクリックします。

ログイン資格証明の保存方法のカスタマイズ

Oracle Data Integrator Studioには、ログイン資格証明の格納について次のオプションが用意されています。

  • ログイン資格証明の保存を有効または無効にできます。

  • ログイン資格証明を保存する場合、それらをパスワードで保護されたウォレットに保存するかまたはログインXMLファイルに保存するかを選択できます。

ログイン資格証明を変更するかどうか、またはログイン資格証明の保存方法を変更するには、次のステップを実行します。

  1. Oracle Data Integrator Studioを起動します。
  2. 「ツール」メニューから、「プリファレンス」...を選択します

    「プリファレンス」ダイアログ・ボックスが表示されます。

  3. 「プリファレンス」ダイアログ・ボックスで「ODI」ノードを展開し「ユーザー・インタフェース」を選択します。

    「プリファレンス」ダイアログ・ボックス(図11-3に表示)に、ログイン資格証明を保存するための次のオプションが表示されます。

    • ログイン資格証明の保存: 資格証明を保存する場合は、このオプションを選択します。

    • ウォレットへのログイン資格証明の保存: Oracle Data Integratorのログイン資格証明を、パスワードで保護されたウォレットに格納する場合は、このオプションを選択します。

      「ログイン資格証明の保存」を選択して「ウォレットへのログイン資格証明の保存」の選択を解除した場合、ログイン資格証明はログインXMLファイルに保存されます。

    デフォルトでは両方のオプションが選択されています。オラクル社ではこの設定をお薦めします。

  4. いずれかのプリファレンスを変更した場合は「OK」をクリックします。

図11-3 ログイン資格証明を保存するための「プリファレンス」ダイアログ・ボックス

図11-3の説明が続きます
「図11-3 ログイン資格証明を保存するための「プリファレンス」ダイアログ・ボックス」の説明

外部パスワード記憶域の設定

Oracle Data Integratorでは、すべてのセキュリティ情報がデフォルトでマスター・リポジトリに格納されます。このパスワード記憶域オプションは内部パスワード記憶域と呼ばれます。

Oracle Data Integratorでは、オプションで、重要なセキュリティ情報を格納するためにOPSSを使用できます。Oracle Data IntegratorでOPSSを使用すると、データ・サーバー・パスワードおよびコンテキスト・パスワードがOPSS資格証明ストア・フレームワーク(CSF)に格納されます。このパスワード記憶域オプションは、外部パスワード記憶域と呼ばれます。

注意:

外部パスワード記憶域を使用した場合、ユーザー名、パスワード、権限などの他のセキュリティ詳細はマスター・リポジトリに残ります。外部認証を使用すると、認証を外部化し、ユーザーとパスワードをアイデンティティ・ストアに格納できます。その他の注意: 外部パスワード記憶域オプションは、外部認証機能とは関係ありません。外部認証の詳細は、「外部認証の構成」を参照してください。

外部パスワード記憶域オプションを使用するには:

  1. OPSSが構成されたWebLogic Serverインスタンスをインストールする必要があります。

  2. ランタイム・エージェントなどのすべてのOracle Data Integratorコンポーネントには、リモートの資格証明ストアへのアクセス権が必要です。

詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』OPSSを使用するためのJava EEアプリケーションの構成に関する項を参照してください。

パスワード記憶域の設定

パスワード記憶域を設定または変更するには、次の4つの方法があります。

パスワード記憶域の切替え

Oracle Data Integratorリポジトリのパスワード記憶域を切り替えると、データ・サーバーとコンテキストのパスワードの格納方法が変更されます。この操作は、スーパーバイザ・ユーザーが実行する必要があります。

データ・サーバーのパスワードのパスワード記憶域オプションを変更するには、「パスワード記憶域の切替え」ウィザードを使用します。

「パスワード記憶域の切替え」ウィザードを起動する前に、次のタスクを実行します。

  • Oracle Data Integrator Studioをリポジトリから切断します。

  • Oracle Data Integratorリポジトリを使用しているすべてのコンポーネントをシャットダウンします。

「パスワード記憶域の切替え」ウィザードを起動するには:

  1. 「ODI」メイン・メニューから「パスワード記憶域」「切替え」の順に選択します。

  2. Oracle Data Integratorのマスター・リポジトリのログイン詳細を、マスター・リポジトリへの接続のときに定義したとおりに指定します(「マスター・リポジトリへの接続」を参照)。

  3. 「次へ」をクリックします。

  4. パスワード記憶域を次のように選択します。

    • パスワードをOracle Data Integratorリポジトリに格納する場合は、「内部パスワード記憶域」を選択します。

    • OPSS資格証明ストア・フレームワーク(CSF)を使用して、データ・サーバーおよびコンテキストのパスワードを格納する場合は、「外部パスワード記憶域」を選択します。

      外部パスワード記憶域を選択した場合は、表11-2の説明に従って「MBeanサーバー・パラメータ」を指定し、資格証明ストアにアクセスした後、「テスト接続」をクリックし、MBeanサーバーへの接続を確認します。

      表11-2 MBeanサーバー・パラメータ

      サーバー ホスト JMXポート ユーザー パスワード

      リストからアプリケーション・サーバーを選択します。

      MBeansサーバー・ホスト。例: machine.example.com

      MBeansサーバー・ポート。例: 7001

      MBeansサーバー・ユーザー名。例: weblogic

      MBeanサーバー・パスワード

  5. 「終了」をクリックします。

パスワード記憶域オプションが変更されました。これで、Oracle Data Integratorリポジトリに再接続できます。

パスワード記憶域のリカバリ

Oracle Data Integratorでは、外部パスワード記憶域がクラッシュした場合にのみ使用されるパスワード・リカバリ・サービスを提供しています。この手順を使用すると、外部記憶域を使用できなくなるため、パスワード記憶域は強制的に内部パスワード記憶域になります。この操作は、スーパーバイザ・ユーザーが実行する必要があります。

警告:

パスワード記憶域のリカバリを実行すると、コンテキストのパスワード、データ・サーバーのパスワード、作業リポジトリのJDBCパスワードおよびエンタープライズ・スケジューラ関連のパスワードが失われるため、トポロジ・ナビゲータで手動で再入力する必要があります。

パスワードのリカバリを開始には、パスワード記憶域のリカバリ・ウィザードを使用します。

パスワード記憶域のリカバリ・ウィザードを起動するには:

  1. 「ODI」メイン・メニューから「パスワード記憶域」「リカバリ」の順に選択します。
  2. Oracle Data Integratorのマスター・リポジトリのログイン詳細を、マスター・リポジトリへの接続のときに定義したとおりに指定します(「マスター・リポジトリへの接続」を参照)。
  3. 「終了」をクリックします。
  4. データ・サーバーおよびコンテキストのパスワードを手動で再入力します。詳細は、「トポロジの設定」を参照してください。

認証モードの管理

デフォルトでは、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つの方法があります。

注意:

マスター・リポジトリで外部認証モードを選択する前に、「外部認証の構成」の説明に従って外部認証を構成する必要があります。

外部認証の構成

デフォルトでは、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で外部認証を構成するには、次の操作を行う必要があります。

  1. OPSS構成ファイルの設定

  2. LDAPブートストラップ・ユーザーのためのウォレット・ファイルの作成

  3. マスター・リポジトリ作成時の外部認証の設定

OPSS構成ファイルの設定

アイデンティティ・ストアに接続して使用するための構成は、jps-config-jse.xmlファイルと呼ばれるOPSS構成ファイルにあります。Oracle Data Integratorコンポーネントで外部認証を構成するには、使用する予定の外部アイデンティティ・ストアに対応するようにこの構成ファイルを設定する必要があります。

OPSS構成ファイルを更新するには、次のステップを実行します。

  1. マシン上にodi/oraclediディレクトリがない場合は、これを作成します。次に例を示します。

    Windowsの場合:

    c:\> mkdir %APPDATA%\odi\oracledi
    

    UNIXの場合:

    prompt> mkdir -p $HOME/.odi/oracledi/
    
  2. 次のファイルをodi/oraclediディレクトリにコピーします。
    • ORACLE_HOME/oracle_common/modules/oracle.jps_12.1.2/domain_config/jse/jps-config.xml

    • ORACLE_HOME/oracle_common/modules/oracle.jps_12.1.2/domain_config/jse/system-jazn-data.xml

  3. odi/oraclediディレクトリに移動します。
  4. jps-config.xmljps-config-jse.xmlという名前に変更します。
  5. エディタでjps-config-jse.xmlを開きます。
  6. アイデンティティ・ストア・プロバイダのサービス・インスタンスを追加し、次のプロパティを含めます。
    • サービス・インスタンス名。たとえば、Oracle Internet Directoryの場合は、name="idstore.oid"

    • idstore.typeプロパティ。

    • bootstrap.security.principal.mapプロパティ。

    • bootstrap.security.principal.keyプロパティ。

    サービス・インスタンスの構成例は、例11-1を参照してください。

    これらのプロパティをアイデンティティ・ストアに指定するための詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』LDAPアイデンティティ・ストア・プロパティに関する項を参照してください。

  7. Oracle Internet Directoryのアイデンティティ・ストア・タイプを設定する次の例のように、デフォルトのjpsコンテキストで、serviceInstanceRef name="idstore.xml"値を"idstore.<your-idstore-type>"に変更します。
     <serviceInstanceRef ref="idstore.oid"/>
    
  8. デフォルトのjpsコンテキストで、keystoreおよびauditのサービス・インスタンス参照をコメント・アウトします。次に例を示します。
    <jpsContext name="default"> 
     <serviceInstanceRef ref="credstore"/>
    <!--  <serviceInstanceRef ref="keystore"/>  --> 
    <serviceInstanceRef ref="policystore.xml"/> 
    <!--  <serviceInstanceRef ref="audit"/>  -->
    
  9. その他すべてのプロパティ属性値をアイデンティティ・ストアに適した値に設定します。OPSS構成ファイルの完全な詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』OPSSを使用するためのJava SEアプリケーションの構成に関する項を参照してください。

例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のログイン資格証明を格納するためのパスワードで保護されたウォレットとは異なります。

このウォレット・ファイルを作成するには、次のステップを実行します。

  1. ORACLE_HOME/odi/sdk/binディレクトリに移動します。

  2. 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.
マスター・リポジトリ作成時の外部認証の設定

マスター・リポジトリを作成し、外部認証を使用するように設定するには:

  1. ORACLE_HOME/odi/studioディレクトリに移動します。
  2. 次のコマンドを実行してOracle Data Integrator Studioを起動します。

    Windowsの場合:

    odi.exe
    

    UNIXの場合:

    ./odi.sh
    
  3. Oracle Data Integrator Studioで、「ファイル」「新規」を選択し、「マスター・リポジトリ作成ウィザード」を選択して「OK」をクリックします。
  4. マスター・リポジトリ作成ウィザードのリポジトリ選択画面で、マスター・リポジトリを格納するデータベースへの接続パラメータを入力し、「テスト接続」をクリックして、パラメータが正しいことを確認します。このデータベースの構成の詳細は、『Oracle Data Integratorのインストールと構成』.を参照してください

    テスト接続が成功した場合は、「OK」をクリックします。

  5. マスター・リポジトリ作成ウィザードの認証画面で、「外部認証の使用」を選択します。

マスター・リポジトリでのスーパーバイザ権限を持つプリンシパルの選択方法の詳細は、「アイデンティティ・ストアに定義されたプリンシパルのOracle Data Integratorロールへのマッピング」を参照してください。

外部認証を使用するための既存のマスター・リポジトリの更新方法の詳細は、「既存のマスター・リポジトリから外部認証モードへの切替え」を参照してください。

既存のマスター・リポジトリから外部認証モードへの切替え

既存のマスター・リポジトリで認証モードを内部から外部に切り替えるには、次のステップを実行します。

  1. ORACLE_HOME/odi/studioディレクトリに移動します。
  2. 次のコマンドを実行してOracle Data Integrator Studioを起動します。

    Windowsの場合:

    odi.exe
    

    UNIXの場合:

    ./odi.sh
    
  3. Oracle Data Integrator Studioで、「ODI」「認証モードの切替え」を選択します。

    図11-4に示す「認証モードの切替え」ウィザードの「ログイン」画面が表示されます。

    図11-4 「認証モードの切替え」ダイアログ・ボックスの「ログイン」画面

    図11-4の説明が続きます
    「図11-4 「認証モードの切替え」ダイアログ・ボックスの「ログイン」画面」の説明
  4. マスター・リポジトリのログイン名、JDBC接続パラメータ、マスター・リポジトリ・データベース・ユーザーのユーザー名およびパスワードを入力し、「次へ」をクリックします。

    図11-5に示すような「認証モードの切替え」ウィザードの「資格証明」画面が表示されます。

    図11-5 「認証モードの切替え」ウィザードの「資格証明」画面

    図11-5の説明が続きます
    「図11-5 「認証モードの切替え」ウィザードの「資格証明」画面」の説明
  5. 検索フィールドに隣接する緑色のプラス記号で表される「追加」ボタンをクリックして、図11-6が示す「エンタープライズ・ロールおよびユーザー取得」ダイアログ・ボックスを表示します。

    図11-6 「エンタープライズ・ロールおよびユーザー取得」ダイアログ・ボックス

    図11-6の説明が続きます
    「図11-6 「エンタープライズ・ロールおよびユーザー取得」ダイアログ・ボックス」の説明

    「エンタープライズ・ロールおよびユーザー取得」ダイアログ・ボックスは、次のどちらかの目的に使用します。

    • フィルタ式を入力して、フィルタに一致するロールおよびユーザーをアイデンティティ・ストアに表示します。

    • アイデンティティ・ストアを検索して、特定のロールまたはユーザー名を見つけます。

    エンタープライズ・ロールおよびエンタープライズ・ユーザーの各ノードを展開して、アイデンティティ・ストアで利用可能なエンタープライズ・ロールおよびユーザーを参照できます。

  6. SUPERVISOR_ROLEロールに割り当てるユーザーまたはロールを選択して、「終了」をクリックします。

外部認証モードへの切替えに成功すると、図11-7のようなダイアログ・ボックスが表示されます。

図11-7 外部認証モードへの切替えに成功した場合のメッセージ・ボックス

図11-7の説明が続きます
「図11-7 外部認証モードへの切替えに成功した場合のメッセージ・ボックス」の説明

外部認証への切替え後のユーザーの再アクティブ化

定義済のOracle Data Integratorユーザーの既存のセットがある場合は、この項の説明に従って外部認証に切り替えた後で再有効化できます。ユーザーを再有効化するには、最初に、内部Oracle Data Integratorリポジトリに格納されたパスワードではなく外部アイデンティティ・ストアに指定されたパスワードを使用して、スーパーバイザ権限を持つユーザー(たとえば、SUPERVISOR)としてStudioに再接続します。次のステップを実行します。

  1. セキュリティ・ナビゲータで、「ユーザー」ナビゲーション・ツリーを展開します。
  2. 表示されたユーザー・リストから、再有効化するユーザーを選択します。
  3. 右クリックし、「開く」を選択します。図11-8に示すようなユーザー・エディタが表示されます。

    図11-8 「USER管理者を開く」ダイアログ・ボックス

    図11-8の説明が続きます
    「図11-8 「USER管理者を開く」ダイアログ・ボックス」の説明

    「名前」フィールドに、ステップ2で選択したユーザーが表示されます。

  4. 「GUIDの取得」をクリックします。ユーザー名がアイデンティティ・ストアで一致した場合は、この外部ユーザーのGUIDが「外部GUID」フィールドに表示されます。
  5. 「ファイル」メイン・メニューから、「保存」をクリックして接続を切断します。
  6. 外部アイデンティティ・ストアのパスワードを使用して、このユーザー(たとえば、図11-8に表示されているSUPERVISOR)として再接続します。

これで、外部認証を使用して、Oracle Data Integrator Studioに接続できるようになります。

次の点に注意してください。

  • LDAPサーバー問題のトラブルシューティングの場合は、いずれかのLDAPクライアントを使用してLDAPツリーを参照すると有用です。LDAPクライアントは、次のURLからダウンロードできます。

    http://www.ldapbrowser.com/

  • 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

外部認証用のスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントの構成

外部認証用にスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントを構成するには、次のステップを実行します。

  1. DOMAIN_HOME/config/fmwconfigディレクトリに次のファイルがない場合は、これをコピーします。DOMAIN_HOMEは、Oracle Data Integratorドメインのルート・ディレクトリを表します。
    • ORACLE_HOME/oracle_common/modules/oracle.jps_12.1.2/domain_config/jse/jps-config.xml

    • ORACLE_HOME/oracle_common/modules/oracle.jps_12.1.2/domain_config/jse/system-jazn-data.xml

    注意:

    Oracle Data Integratorドメインの作成の詳細は、『Oracle Data Integratorのインストールと構成』を参照してください。

  2. DOMAIN_HOME/config/fmwconfigディレクトリに移動します。
  3. jps-config.xmljps-config-jse.xmlという名前に変更します。
  4. エディタでjps-config-jse.xmlを開きます。
  5. アイデンティティ・ストア・プロバイダのサービス・インスタンスを追加し、次のプロパティを含めます。
    • サービス・インスタンス名。たとえば、Oracle Internet Directoryの場合は、name="idstore.oid"

    • idstore.typeプロパティ。

    • bootstrap.security.principal.mapプロパティ。

    • bootstrap.security.principal.keyプロパティ。

    サービス・インスタンスの構成例は、例11-1を参照してください。

    これらのプロパティをアイデンティティ・ストアに指定するための詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』LDAPアイデンティティ・ストア・プロパティに関する項を参照してください。

  6. Oracle Internet Directoryのアイデンティティ・ストア・タイプを設定する次の例のように、デフォルトのjpsコンテキストで、serviceInstanceRef name="idstore.xml"値を"idstore.<your-idstore-type>"に変更します。
     <serviceInstanceRef ref="idstore.oid"/>
    
  7. デフォルトのjpsコンテキスト・エレメントで、keystoreおよびauditのサービス・インスタンス参照をコメント・アウトします。次に例を示します。
    <jpsContext name="default"> 
     <serviceInstanceRef ref="credstore"/>
    <!--  <serviceInstanceRef ref="keystore"/>  --> 
    <serviceInstanceRef ref="policystore.xml"/> 
    <!--  <serviceInstanceRef ref="audit"/>  -->
    
  8. 変更をjps-config-jse.xmlに保存して、エディタを終了します。
  9. DOMAIN_HOME/binディレクトリに移動します。
  10. odi_credtoolスクリプトを実行します。

    次のパラメータを入力するよう促されます。

    パラメータ 入力する値
    User name

    これは、管理者権限を使用してアイデンティティ・ストアに接続するために使用されているブートストラップ・ユーザー・アカウントの識別名(DN)です。

    たとえば、Microsoft Active Directoryの場合は、このユーザーを次のように指定します。

    CN=Administrator,CN=Users,DC=ad,DC=vm,DC=company,DC=com
    Password

    アイデンティティ・ストアへの接続に使用されるブートストラップ・ユーザー・アカウントのパスワード。

    ブートストラップ・ユーザー・アカウントの資格証明を正しく入力すると、次のメッセージが表示されます。

    The credentials have been successfully added to the boostrap credential store.

アイデンティティ・ストアに定義されたプリンシパルの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ロールの定義および管理

マスター・リポジトリを作成し、外部認証を使用するように構成すると、次のことが生じます。

  1. Oracle Data IntegratorロールSUPERVISOR_ROLEが自動的に作成されます。これは、Oracle Data Integratorのメイン管理者ロールです。

  2. この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のためのエンタープライズ・ロールを構成するには、次のようにします。

  1. 「マスター・リポジトリ作成時の外部認証の設定」の説明に従って、マスター・リポジトリ作成ウィザードを起動します。

  2. マスター・リポジトリ作成ウィザード: ステップ2/3ページで、図11-9に示すように、「追加」ボタンをクリックして外部アイデンティティ・ストアから利用可能なエンタープライズ・ロールおよびユーザーを取得します。

    図11-9 マスター・リポジトリ作成ウィザードの「認証」画面

    図11-9の説明が続きます
    「図11-9 マスター・リポジトリ作成ウィザードの「認証」画面」の説明

    「追加」ボタンをクリックすると図11-10に示すような「エンタープライズ・ロールおよびユーザー取得」ダイアログ・ボックスが表示されるので、次のどちらかをします。

    • フィルタ式を入力して、フィルタに一致するロールおよびユーザーをアイデンティティ・ストアに表示します。

    • アイデンティティ・ストアを検索して、特定のロールまたはユーザー名を見つけます。

    エンタープライズ・ロールおよびエンタープライズ・ユーザーの各ノードを展開して、アイデンティティ・ストアで定義された個々のロールおよびユーザーを表示できます。

    図11-10 「エンタープライズ・ロールおよびユーザー取得」ダイアログ・ボックス

    図11-10の説明が続きます
    「図11-10 「エンタープライズ・ロールおよびユーザー取得」ダイアログ・ボックス」の説明
  3. 「エンタープライズ・ロールおよびユーザー取得」ダイアログ・ボックスからSUPERVISOR_ROLEロールに割り当てるエンタープライズ・ユーザーまたはロールを選択して、「OK」をクリックします。

  4. 「マスター・リポジトリの作成」の説明に従って、マスター・リポジトリの作成を終了します。

ロール・エディタの使用
ロール・エディタの起動

ロール・エディタを使用して、Oracle Data Integratorロールの作成、更新および削除を行うことができます。

ロール・エディタを起動するには:

  1. Oracle Data Integrator Studioで、必要に応じて「リポジトリへの接続」をクリックし、使用するリポジトリへの接続に必要な資格証明を入力します。
  2. Studioで、「セキュリティ・ナビゲータ」を選択し、「ロール」ナビゲーション・ツリーを選択します。
  3. 次のどちらかの方法でロール・エディタを起動します。
    • 「ロール」ナビゲーション・ツリーのツールバーで、「新規ロール」をクリックします。この操作により、新しいOracle Data Integratorロールを作成できます。

    • 「ロール」ナビゲーション・ツリーに表示されたロール・リストから、ロール名を右クリックして「開く」を選択します。この操作により、既存のロールを更新できます。

  4. 右クリックし、「開く」を選択します。

図11-11に示すようなロール・エディタが表示されます。

図11-11 ロール・エディタ

図11-11の説明が続きます
「図11-11 ロール・エディタ」の説明
Oracle Data Integratorでのロールの作成

Oracle Data Integratorロールを作成するには:

  1. 必要に応じて、Studioでロール・エディタを起動します。
  2. 「セキュリティ・ナビゲータ」を選択し、「ロール」ナビゲーション・ツリーを選択します。
  3. 「ロール」ナビゲーション・ツリーのツールバーで、「新規ロール」をクリックします。
  4. 「名前」フィールドに、作成するOracle Data Integratorロールの名前を入力します。
  5. 「ファイル」メイン・メニューから「保存」を選択します。

新規ロール名が「ロール」ナビゲーション・ツリーに表示されます。

エンタープライズ・プリンシパルのOracle Data Integratorロールへのマップ

エンタープライズ・プリンシパルをOracle Data Integratorロールへマップするには:

  1. 変更するOracle Integratorロールがロール・エディタで開かれていない場合は、「ロール」ナビゲーション・ツリーでロール名を右クリックして「開く」を選択します。
  2. ロール・エディタの「ロールにプリンシパルを追加」パネルで、「追加」ボタン(プラス記号)をクリックして、「エンタープライズ・ロールおよびユーザー取得」ダイアログ・ボックスを表示します。

    このダイアログから、次のいずれかを行うことができます。

    • フィルタ式を入力して、フィルタに一致するロールおよびユーザーをアイデンティティ・ストアに表示します。

    • アイデンティティ・ストアを検索して、特定のロールまたはユーザー名を見つけます。

  3. 次の一方または両方を行います:
    • 1つ以上のエンタープライズ・ロールを選択してOracle Data Integratorロールにマップするには、エンタープライズ・ロール・ノードを展開して該当するロールを選択します。

    • 1つ以上のエンタープライズ・ユーザーを選択してOracle Data Integratorロールにマップするには、エンタープライズ・ユーザー・ノードを展開して該当するユーザーを選択します。

  4. 「ファイル」メイン・メニューから「保存」を選択します。
Oracle Data Integratorロールへの権限またはプロファイルの割当て

Studioでは、次の2つの方法でOracle Data Integratorロールへ権限またはプロファイルを割り当てられます。

  • ロール・エディタの使用

  • 権限、プロファイルおよびインスタンス・オブジェクトをクリックして、「ロール」ナビゲーション・ツリーのロール名上にドラッグする

ロール・エディタを使用する場合:

  1. 権限を割り当てるOracle Data Integratorロールがロール・エディタで開かれていない場合は、「ロール」ナビゲーション・ツリーでロール名を右クリックして「開く」を選択します。
  2. ロールにスーパーバイザ権限を割り当てる場合は、ロール・エディタの「スーパーバイザ・アクセス権限」セクションから「スーパーバイザ」を選択します。
  3. ロール・エディタの「ロール・プロファイル」パネルで、ロールに割り当てたいプロファイルを選択します。

    注意:

    ロールにスーパーバイザ権限を割り当てた場合は、このステップは必要ありません。

  4. 「ファイル」メイン・メニューから「保存」を選択します。

クリック・アンド・ドラッグの場合:

次のアイテムに関する権限は、クリックして「ロール」ナビゲーション・ツリーのロール名上にドラッグすることにより、ロールに追加できます。

  • 「オブジェクト」ナビゲーション・ツリーにリストされている、オブジェクト・ノードまたはオブジェクト・ノード内のエントリ。

  • 「プロファイル」ナビゲーション・ツリーにリストされている、プロファイル・ノードまたはプロファイル・ノードを持つエントリ。

  • デザイナ・ナビゲータ、オペレータ・ナビゲータまたはトポロジ・ナビゲータのナビゲーション・ツリーにリストされているオブジェクト・インスタンス。オブジェクト・インスタンス権限をOracle Data Integratorユーザーに付与する方法と同様に、インスタンスを選択して目的のロール名までドラッグします(「オブジェクト・インスタンス別認可の付与」を参照)。

Oracle Data Integratorロールの権限を更新した後で、「ファイル」メイン・メニューから「保存」を選択します。

Oracle Data Integratorロールの削除

Oracle Data Integratorロールを削除するには:

  1. セキュリティ・ナビゲータの「ロール」ナビゲーション・ツリーで、削除するロールを選択します。
  2. 右クリックして「削除」を選択します。
  3. 選択内容の確認を要求されたら、「はい」をクリックします。

コールバックを使用した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サービスの保護とポリシーの管理』の次の項を参照してください。

  1. 非同期のWebサービス・コールバック・クライアントへのポリシーの添付

  2. OWSMポリシーの環境設定。OWSMポリシーを使用するための環境を設定するには、秘密キーの生成とJavaキーストアの作成に関する項Fusion Middleware Controlを使用したOracle WSMキーストアの構成に関する項Fusion Middleware Controlを使用した資格証明ストアへのキーおよびユーザー資格証明の追加に関する項の手順に従います。

注意:

WebLogic Scripting Tool (WLST)コマンドを使用して、実行時にOWSMポリシーをアタッチすることもできます。詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』を参照してください。

パスワード・ポリシーの実施

パスワード・ポリシーは、内部認証の使用時にユーザー・パスワードに適用するルールのセットで構成されています。この一連のルールは、ユーザーがパスワードを定義したり、変更した場合に適用されます。

パスワード・ポリシーを定義するには:

  1. セキュリティ・ナビゲータのツールバー・メニューから「パスワード・ポリシー」を選択します。

    「パスワード・ポリシー」ダイアログが表示されます。このダイアログには、ルールのリストが表示されます。

  2. パスワードを自動的に期限切れにする場合は、「パスワード有効日数」を選択し、パスワードの変更が必要になるまでの日数を設定します。
  3. 「ポリシーの追加」をクリックします。「ポリシー定義」ダイアログが表示されます。ポリシーは、パスワードをチェックする一連の条件です。
  4. この新規ポリシーに「名前」「説明」を設定します。
  5. 「ルール」セクションで、パスワードのテキストまたは長さに対する条件をいくつか追加します。たとえば、パスワードの最小文字数を定義できます。
  6. 「一致する条件」リストで、パスワードが少なくとも1つの条件に一致する必要があるのか、またはすべての条件に一致する必要があるのかを選択します。
  7. 「OK」をクリックします。
  8. 必要な数のポリシーを追加し、アクティブ化するルールのポリシーに対して「アクティブ」を選択します。すべてのポリシーを満たすパスワードのみが、現在のポリシーで有効とみなされます。
  9. 「OK」をクリックし、パスワード・ポリシーを更新します。

安全な転送を使用するためのスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントの構成

Hyper-Text Transfer Protocol Secure (HTTPS)は、Hyper Text Transfer Protocol (HTTP)の安全なバージョンであり、さらにレベルの高いセキュリティを実現するために使用されます。この項では、次のトピックにより、Oracle Data IntegratorでHypertext Transfer Protocol Secure (HTTPS)サポートを設定する方法について説明します。

SSL証明書の作成

SSL証明書は、インターネット経由で送信されるデータの暗号化に役立ちます。

SSL証明書を作成するには、次の手順を実行します。

  1. 次のコマンドを使用して、キーストアからデフォルトのSSL証明書demoidentityを削除します。
    keytool –delete –alias demoidentity -keystore <domain>/security/DemoIdentity.jks
    Enter the keyStore password, DemoIdentityKeyStorePassPhrase

    注意:

    keyStore、keyおよびtrustStoreのパスワードはそれぞれ、DemoIdentityKeyStorePassPhraseDemoIdentityPassPhraseおよびDemoTrustKeyStorePassPhraseです。ただし、keyStoreとkeyのパスワードはDemoIdentityKeyStorePassPhraseにする必要があります。

  2. 別名をdemoidentity (デフォルト証明書の場合)またはagent (ユーザー定義証明書の場合)で置き換え、証明書を生成します。
    Default Certificate <aliasName>: demoidentity
    User defined Certificate <aliasName>: agent
  3. Keytoolユーティリティを使用して、エージェントのキーを生成します。エージェントは完全修飾ホスト名を使用して、キーストアからキーをフェッチします。
    keytool -genkey -alias <aliasName> -keyalg RSA -keystore <domain>/security/DemoIdentity.jks
    Enter keystore password:  DemoIdentityKeyStorePassPhrase
    What is your first and last name?
      [Unknown]:agenthostname.us.example.com
    What is the name of your organizational unit?
      [Unknown]:  ODI
    What is the name of your organization?
      [Unknown]:  company name
    What is the name of your City or Locality?
      [Unknown]:  San Jose 
    What is the name of your State or Province?
      [Unknown]:  CA
    What is the two-letter country code for this unit?
      [Unknown]:  US
    Is CN=agent.us.example.com, OU=ODI, O=company name, L=San Jose, ST=CA, C=US correct?
      [no]:  yes
    Enter key password for <agent>
            (RETURN if same as keystore password) : <return>

    キーは別名<aliasName>で作成されます。

  4. 次のkeytoolコマンド構文を使用して、キーをエクスポートします。
    keytool -export -alias <aliasName> -keystore <domain>/security/DemoIdentity.jks
    -rfc -file public.cert
    Enter keystore password:  DemoIdentityKeyStorePassPhrase
       Certificate stored in file <public.cert>
  5. 次のkeytoolコマンド構文を使用して、キーをクライアント・トラストストアにインポートします。
    keytool -import -alias <aliasName> -file public.cert -storetype JKS -keystore      
       <MW_HOME>/Oracle_Home/wlserver/server/lib/DemoTrust.jks
    Enter keystore password: DemoTrustKeyStorePassPhrase
     
     
    ...
    …
    Trust this certificate? [no]:  yes

    自己署名証明書が作成され、クライアント・トラストストアに追加されます。

スタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントのためのSSLの構成

スタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントのためにSSLを構成するには、HTTPSプロトコルを使用してエージェントを作成する必要があります。

HTTPSプロトコルを使用してスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントを作成するには、次の手順を実行します。

  1. Oracle Data Integratorドメインを作成し、エージェント・テンプレートを構成します。
    • ODIスタンドアロン・インストール・タイプを使用している場合、ODIドメインを作成し、Oracle Data Integrator - スタンドアロン・エージェント・テンプレートを構成してODIインスタンス構成を作成します。

    • ODI Enterpriseインストール・タイプを使用している場合、ODIドメインを作成し、Oracle Data Integrator - スタンドアロン・コロケート・エージェント・テンプレートを構成してODIインスタンス構成を作成します。

    詳細は、『Oracle Data Integratorのインストールと構成』を参照してください。

  2. HTTPSプロトコルを使用して、マスター・リポジトリにエージェントを作成します。エージェントがすでに存在する場合は、マスター・リポジトリ内のそのエージェントのプロトコルをhttpsに変更します。詳細は、「物理エージェントの作成」を参照してください。
  3. 次の場所にあるinstance.propertiesファイルを編集し、PROTOCOLhttpsに設定します。
    <domain>/config/fmwconfig/components/ODI/<agentName>

    次に示すように、暗号化された形式でSSLパスワード・パラメータを設定します。

    ODI_KEYSTORE_ENCODED_PASS=<Encrypted password>
    ODI_KEY_ENCODED_PASS=<Encrypted password>
    ODI_TRUST_STORE_ENCODED_PASS=<Encrypted password>

    パスワードの暗号化方法の詳細は、「パスワードのエンコード」を参照してください。

  4. 次に示すように、instance.shファイル内に、他のキーストアの場所およびトラストストアのSSLパラメータの場所とタイプを構成します。
    ODI_INSTANCE_JAVA_OPTIONS="
    -Djavax.net.ssl.keyStore=<domain>/security/DemoIdentity.jks
    -Djavax.net.ssl.keyStoreType=JKS -Djavax.net.ssl.trustStore= <MW_HOME>/Oracle_Home/wlserver/server/lib/DemoTrust.jks
    -Djavax.net.ssl.trustStoreType=JKS $ODI_ADDITIONAL_JAVA_OPTIONS"
  5. 次のコマンドを入力して、エージェントを起動します。
    <domain>/bin/agent.sh -INSTANCE=agentName

SSL対応エージェントと接続するためのODI Studioの構成

SSLパラメータの値はODI Studioに移入されます。これは、Studio内部エージェントがSSLサーバーに接続するときにODI Studioによって使用されるデフォルトで唯一の資格証明セットです。

Oracle Data Integrator StudioからSSL対応エージェントに接続するには、次の手順を実行します。

  1. 「ツール」→「プリファレンス」→「資格証明」に移動します。
  2. 「クライアントの信頼する証明書キーストア」フィールドおよびクライアントの信頼するキーストアのパスワード・フィールドを編集します。

別の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ツール・リファレンスを参照してください。

パスワードのエンコード

クリアテキスト・パスワードをエンコードするには、次の手順を実行します。

  1. agentNameを使用して次のスクリプトを実行します。
    <domain>/bin/encode.sh -INSTANCE=<agentName> 
  2. 次に示すプロンプトで、パスワードを入力します。
    Enter password to encode: <password> 

    暗号化されたパスワードが表示されます。

SSL対応のスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントに対する弱い暗号スイートの無効化

この項では、SSL対応のスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントに対して弱い暗号スイートを無効にする方法について説明します。環境内の暗号スイートを表示する場合、スタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントを起動すると、使用可能なスイートのリストが表示されます。

弱い暗号スイートを無効にするには、次の手順を実行します。

  1. instance.propertiesファイルから除外する必要のある暗号スイートを設定します。次に例を示します。
    ODI_EXCLUDED_CIPHERS=TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5,TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA
  2. 次のコマンドを使用して、SSLモードでエージェントを起動します。
    ./agent.sh-NAME=OracleDIAgent -PORT=20910

    使用可能な暗号スイートのリストが表示され、SSL対応のスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントで使用可能な暗号スイートのリストも表示されます。

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のシングル・サインオンを構成するには:

  1. ブラウザを使用して、OAMコンソールにログインします。

    http://host:port/oamconsole
    
  2. 「ポリシー構成」「アプリケーション・ドメイン」に移動します。

    「ポリシー・マネージャ」ペインが表示されます。

  3. WebGateエージェントの登録時の名前を使用して作成したアプリケーション・ドメインを探します。

  4. 「リソース」ノードを展開して、「作成」をクリックします。

    リソース・ページが表示されます。

  5. セキュリティ保護が必要なリソースを追加します。各リソースに対して、次の手順を実行します。

    1. 「リソース・タイプ」としてhttpを選択します。

    2. WebGateエージェントの登録時に作成したホスト識別子を選択します。

    3. 「リソースURL」を次のように入力します。

      リソースURL ODIコンポーネント

      /odiconsole*

      ODIコンソール

      /odiconsole/.../*

      ODIコンソール

      /em*

      Enterprise Manager

      /em/.../*

      Enterprise Manager

    4. リソースの「説明」を入力し、「適用」をクリックします。

  6. 「認証ポリシー」保護されているリソース・ポリシーに移動し、新しく作成したリソースを追加します。

  7. 「認可ポリシー」保護されているリソース・ポリシーで同じ作業を行います。

  8. 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>
    
  9. 変更を有効にするために、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 Studioのログイン資格証明を格納するためにパスワードで保護されたウォレットを作成します。詳細は、「パスワードで保護されたウォレットを使用したログイン資格証明の格納」を参照してください。

  • 外部認証: デフォルトの内部認証モードではなく外部認証モードを使用します。マスター・リポジトリの作成時に、オプションの1つとして外部認証モードを選択できます。詳細は、「外部認証の構成」を参照してください。

  • 外部パスワード記憶域: データ・サーバー接続パスワードに関して、Oracle Data Integratorでは、内部パスワード記憶域と外部パスワード記憶域の2つのオプションを用意しています。オラクル社では、安全な本番環境を実現するために外部パスワード記憶域をお薦めします。マスター・リポジトリを作成するときに外部パスワード記憶域オプションを選択できます。詳細は、「外部パスワード記憶域の設定」を参照してください

安全な転送を使用するためのスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントの構成

安全な転送を使用するためにスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントを構成する方法の詳細は、「安全な転送を使用するためのスタンドアロン・エージェントまたはスタンドアロン・コロケート・エージェントの構成」を参照してください。

安全な転送を使用するためのOracle Data Integratorコンソールの構成

オラクル社では、安全な転送を使用してOracle Data Integratorコンソールにアクセスすることをお薦めします。たとえば、Oracle Data IntegratorコンソールがデフォルトのSSLリスニング・ポートであるポート7002を使用するように構成できます。このように構成することで、次のURLを使用してOracle Data Integratorコンソールにアクセスできます。

https://<host>:7002/odiconsole

WebLogic Server管理コンソールを使用すると、Oracle Data Integratorコンソールが使用する転送を保護できます。詳細は、『Oracle WebLogic Serverセキュリティの管理』SSLの構成に関する項を参照してください。