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

前
 
次
 

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

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

この項の内容は、次のとおりです。

7.1 概要

共有ライブラリは、複数のアプリケーションで使用できるプログラミングとデータの集合です。共有ライブラリによって、共通プログラミングとリソースを共有することでアプリケーションがメモリーを効率的に使用できるようになります。Oracle Adaptive Access Managerをカスタマイズするには、カスタムJARファイルとその他のファイルをOAAM拡張共有ライブラリに追加します。

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

7.2 列挙の編集によるOAAMのカスタマイズ

Oracle Adaptive Access Managerのプロパティをオーバーライドしたり、Oracle Adaptive Access Managerの列挙を拡張するには、そのプロパティと列挙をoaam_custom.propertiesに追加して、そのファイルをWEB-INF\classesディレクトリまたは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.3 OAAM 拡張共有ライブラリの使用によるカスタマイズの追加

次の手順に従って、カスタマイズをOracle Adaptive Access Managerに追加します。

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

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

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

  3. oracle.oaam.extensions.warを作業フォルダで解凍します。

  4. oaam_extensionsフォルダに、次のサブフォルダを作成します。

    • META-INF

    • WEB-INF

    • WEB-INF\lib

    • WEB-INF\classes

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

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

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

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

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

  8. カスタム・プロパティをoaam_custom.propertiesというファイルに追加し、そのファイルをIAM_Home\oaam\oaam_extensions\generic\WEB-INF\classesフォルダに保存します。

    列挙に関する情報は、第7.2項「列挙の編集によるOAAMのカスタマイズ」に記載されています。

  9. カスタムJSPをoaam_extensionsフォルダに追加します。

  10. 次のコマンドを使用して、oracle.oaam.extensions.warファイルをoaam_extensionsの親フォルダから再パッケージします。

    jar -cvfm oracle.oaam.extensions.war oaam_extensions\META-INF\MANIFEST.MF -C  oaam_extensions/ .
    
  11. Oracle Adaptive Access ManagerがデプロイされているOracle WebLogicサーバーを起動して、Oracle WebLogic管理コンソールにログインします。

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

  13. 古いWARファイルを削除します。

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