ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Adaptive Access Manager開発者ガイド
11gリリース2 (11.1.2)
B71697-03
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

7 OAAM拡張共有ライブラリの使用によるOAAMのカスタマイズ

共有ライブラリは、複数のアプリケーションが使用できるプログラミングとデータの集合です。共有ライブラリによって、共通プログラミングとリソースを共有することでアプリケーションがメモリーを効率的に使用できるようになります。

この章では、OAAM拡張共有ライブラリを使用してOracle Adaptive Access Managerをカスタマイズする方法について説明します。この項の内容は、次のとおりです。

7.1 列挙の編集によるOAAMのカスタマイズまたは拡張

Oracle Adaptive Access Managerのプロパティをオーバーライドしたり、OAAM列挙を拡張したりするには、これらのプロパティと列挙をoaam_custom.propertiesに追加します。後でそのファイルをoaam_extensions/WEB-INF/classes/bharosa_propertiesフォルダに保存します。

ユーザー定義列挙は、アイテムのリストを表すプロパティの集合です。リスト内の各要素には、複数の異なる属性が含まれている場合があります。ユーザー定義列挙の定義はキーワード.enumで終わるプロパティで始まり、ユーザー定義列挙の使用を記述する値が続きます。

各要素定義は、列挙と同じプロパティ名に要素名が追加されたもので始まり、IDである一意の整数の値が続きます。要素の属性も同じパターンに従い、要素のプロパティ名で始まり、その後に属性名がその属性の適切な値とともに示されます。

OAAMサーバー実装のログイン画面に表示される、列挙定義資格証明の例を次に示します。

bharosa.uio.default.credentials.enum = Enum for Login Credentials
bharosa.uio.default.credentials.enum.companyid=0
bharosa.uio.default.credentials.enum.companyid.name=CompanyID
bharosa.uio.default.credentials.enum.companyid.description=Company ID
bharosa.uio.default.credentials.enum.companyid.inputname=comapanyid
bharosa.uio.default.credentials.enum.companyid.maxlength=24
bharosa.uio.default.credentials.enum.companyid.order=0
bharosa.uio.default.credentials.enum.username=1
bharosa.uio.default.credentials.enum.username.name=Username
bharosa.uio.default.credentials.enum.username.description=Username
bharosa.uio.default.credentials.enum.username.inputname=userid
bharosa.uio.default.credentials.enum.username.maxlength=18
bharosa.uio.default.credentials.enum.username.order=1

7.2 OAAM 拡張共有ライブラリの使用によるカスタマイズの追加

Oracle Adaptive Access Managerをカスタマイズするには、カスタムJARファイルとJSPファイル、および他のファイルをOAAM拡張共有ライブラリに追加して、プロパティ・ファイルを編集します。

OAAM拡張共有ライブラリ、oracle.oaam.extensions.warは、IAM_Home/oaam/oaam_extensions/genericにあります。これは、OAAMサーバーとOAAM管理サーバーの両方にデプロイされます。デフォルトでは、oracle.oaam.extensions.warに、OAAM拡張共有ライブラリの定義を保存したMANIFEST.MFが含まれています。

この項では、カスタマイズをOracle Adaptive Access Managerに追加する手順について説明します。

7.2.1 前提条件

プロパティbharosa.uio.proxy.mode.flagが適切に設定されていることを確認します。

bharosa.uio.proxy.mode.flagプロパティのデフォルトはfalseです。UIOプロキシ・デプロイメントを使用している場合は、プロパティをtrueに設定する必要があります。マルチテナントのカスタム・ブランドをOAAMプロキシで構成するには、プロパティbharosa.uio.proxy.mode.flagtrueに設定する必要があります。

カスタマイズを追加しており、TAPスキームを使用してOracle Access Management Access Manager 11gとの統合も構成する場合は、プロパティをfalseに設定する必要があります。プロパティをtrueに設定すると、OAAMとAccess ManagerのTAPを使用した統合に失敗し、次のメッセージが表示されます。

Sorry, the identification you entered was not recognized.

7.2.2 ステップ1 OAAM拡張共有ライブラリの抽出

OAAM拡張共有ライブラリを抽出するには、次の手順を実行します。

  1. oaam_extensionsという作業フォルダを作成します。

    このフォルダは、インストール・フォルダ以外であればどこにでも作成できます。

  2. oracle.oaam.extensions.warファイルを作業フォルダ内に抽出します。

    oaam_extensionsフォルダに、次のサブフォルダが表示されます。

    • META-INF

    • WEB-INF

    • WEB-INF\lib

    • WEB-INF\classes

7.2.3 ステップ2 MANIFEST.MFファイルの作成

META-INFフォルダにMANIFEST.MFというファイルを作成し、そのファイルに次の行が含まれていることを確認します。

Extension-Name: oracle.oaam.extensions
Implementation-Version:99.9.9.9.9
Specification-Version:99.9.9.9.9

仕様バージョンと実装バージョンは、現在のファイルにあるバージョン以上である必要があります。たとえば、ファイルの実装バージョンが11.1.1.3.0の場合は、99.9.9.9.9に変更できます。バージョンが増分されない場合は、エラーがスローされます。

7.2.4 ステップ3 カスタムJavaクラスのコンパイル

JARファイルをORACLE_IDM_HOME\oaam\cli\libフォルダからビルド・クラス・パスに追加して、Oracle Adaptive Access Managerのクラスを拡張または実装するカスタムJavaクラスをコンパイルします。

7.2.5 ステップ4 カスタムJARおよびファイルの追加

カスタムJARおよびファイルを説明に従って追加します。

  1. カスタムJARファイルをIAM_Home\oaam\oaam_extensions\generic\WEB-INF\libフォルダに追加します。

  2. oaam_custom.propertiesに変更を加えて、oaam_extensions\WEB-INF\classes\bharosa_propertiesフォルダに保存します。

  3. カスタムJSPファイルをoaam_extensionsに直接追加します。

7.2.6 ステップ5 OAAM拡張共有ライブラリの再パッケージ化

次のコマンドを使用して、OAAM拡張共有ライブラリ、oracle.oaam.extensions.waroaam_extensionsの親フォルダから再パッケージ化します。

jar -cvfm oracle.oaam.extensions.war oaam_extensions/META-INF/MANIFEST.MF -C  oaam_extensions/ .

7.2.7 ステップ6 再パッケージ化したWARファイルにカスタムJARファイルが含まれているかどうかの確認

再パッケージ化したWARファイルにカスタムJARファイルが含まれていることを確認します。次のコマンドを使用して、その内容を表示します。

jar tvf oracle.oaam.extensions.war

7.2.8 ステップ7 すべての管理対象サーバーの停止

管理対象サーバーが稼働している場合はすべて停止します。

MW_HOME/user_projects/domains/domain_name/bin/stopManagedWeblogic.sh
  oaam_admin_server1
MW_HOME/user_projects/domains/domain_name/bin/stopManagedWeblogic.sh
  oaam_server_server1

7.2.9 ステップ8 WebLogic管理サーバーの起動

WebLogic管理サーバーを起動します。

MW_HOME/user_projects/domains/domain_name/bin/startWeblogic.sh

7.2.10 ステップ9 WebLogic管理コンソールへのログイン

Oracle Adaptive Access ManagerがデプロイされているWebLogic Serverを起動し、WebLogic管理コンソールにログインします。

http://hostname:port/console

7.2.11 ステップ10 新しいOAAM拡張共有ライブラリのデプロイ

oaam_server_server1およびoaam_admin_server1をターゲット・アプリケーションとする、新しいoracle.oaam.extensions.warファイルを、共有ライブラリとしてデプロイします。

  1. 「ドメイン環境」「デプロイメント」に移動して、コンソールをロックします。

  2. 「インストール」ボタンをクリックします。

  3. oracle.oaam.extensions.warファイルの場所を参照し、WARファイルの横のオプションをクリックして選択します。その後、「次へ」をクリックします。

  4. 「このデプロイメントをライブラリとしてインストールする」が選択されていることを確認し、「次へ」をクリックします。

  5. デプロイメントのターゲット、oaam_admin_server1およびoaam_server_server1を選択します。

  6. 「次へ」を再度クリックしてこの次のページでデフォルトを受け入れ、「終了」をクリックします。

  7. 「保存」ボタンをクリックしてから、「変更のアクティブ化」をクリックします。

  8. OAAM管理とOAAM管理対象サーバーを起動します。

    MW_HOME/user_projects/domains/domain_name/bin/startManagedWeblogic.sh
      oaam_admin_server1
    MW_HOME/user_projects/domains/domain_name/bin/startManagedWeblogic.sh
      oaam_server_server1
    

7.2.12 ステップ11 機能のテスト

カスタム機能をテストして、oracle.oaam.extensions.warに追加したファイルをOracle Adaptive Access Managerアプリケーションが使用していることを確認します。