ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Fusion Middlewareリリース・ノート
11g リリース1 (11.1.1) for HP-UX Itanium
B55937-06
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

26 Oracle Entitlements Server

この章では、Oracle Entitlements Serverに関連する問題について説明します。次のトピックが含まれます:

26.1 一般的な問題および回避策

この項では、一般的な問題および回避策について説明します。次のトピックが含まれます:

26.1.1 Oracle Internet Directoryポリシー・ストアでのバックスラッシュの使用

ポリシー・オブジェクト名にバックスラッシュ(\)が使用されており、バックスラッシュの後ろにポンド記号(#)または2つの16進数文字([a-fA-f_0-9][a-fA-f_0-9])がある場合、オブジェクトの検索が予想どおりに機能しない場合があります。この問題が発生するのは、リソース・タイプ、リソース名またはアクション別の権限セットの問合せの失敗の原因となる値がリソース・タイプ名、リソース名またはアクション・アソシエーションのいずれかに含まれる場合です。

回避策:

ポリシー・オブジェクト名にこれらの値を使用しないようにしてください。

26.1.2 Oracle Databaseポリシー・ストアのパフォーマンス・チューニング

Oracle dbms_statsパッケージを使用して、Oracle Databaseポリシー・ストアでのデータ移行パフォーマンスを向上させることができます。実行する正確なSQLコマンドは、次のとおりです。

*EXEC DBMS_STATS.gather_schema_stats
  ('DEV_OPSS',DBMS_STATS.AUTO_SAMPLE_SIZE,no_invalidate=>FALSE);*

DEV_OPSSは、データベース・ポリシー・ストアに使用されるスキーマ所有者です。他の2つのパラメータも、この例のように使用できます。

回避策:

このDBMS_STATSコールは、次のオプションのいずれかを使用して定期的に実行できます。

  • DBMS_JOBを使用します。

    1. 次のコードをSQLスクリプトにコピーして貼り付けます。

      この例では、ジョブは10分ごとに実行されます。

      variable jobno number;
      BEGIN
      DBMS_JOB.submit
      (job => :jobno,
      what =>
      'DBMS_STATS.gather_schema_stats(''DEV_OPSS'',DBMS_STATS.AUTO_SAMPLE_SIZE,
      no_invalidate=>FALSE);',
      interval => 'SYSDATE+(10/24/60)');
      COMMIT;
      END;
      /
      #end of sql script
      
    2. スキーマ所有者としてsqlplusにログインします。たとえば、sys_userではなく'DEV_OPSS'としてログインします。

    3. SQLスクリプトを実行します。

      実行したスクリプトからジョブIDを検索するには、次を実行します。

      sqlplus '/as sysdba'
      SELECT job FROM dba_jobs WHERE schema_user = 'DEV_OPSS' AND what =
      'DBMS_STATS.gather_schema_stats(''DEV_OPSS'',DBMS_STATS.AUTO_SAMPLE_SIZE,
      no_invalidate=>FALSE);';
      

      ジョブを削除するには、スキーマ所有者(たとえば、sys_userではなく'DEV_OPSS')としてsqlplusにログインし、次のSQLコマンドを実行します。

      EXEC DBMS_JOB.remove(27);
      
  • cronジョブまたはシェル・スクリプトを使用して、SQLコマンドを実行します。

    # run dbms_stats periodically
    ./runopssstats.sh
    # runopssstats.sh content is below:
    # In this example, we will execute the command in every 10 minutes
    #!/bin/sh
    
    i=1
    while [ $i -le 1000 ]
    do
    echo $i
    sqlplus dev_opss/welcome1@inst1 @opssstats.sql
    sleep 600
    i=`expr $i + 1`
    done
    # end of sh
    
    # opssstats.sql
    EXEC DBMS_STATS.gather_schema_stats('DEV_OPSS',
      DBMS_STATS.AUTO_SAMPLE_SIZE,no_invalidate=>FALSE);
    QUIT;
    # end of sql
    

26.1.3 Internet Explorer 7の使用時にアクション・バーが消える

Internet Explorer 7を使用している場合、「システム構成」→「システム管理者」の下にある「管理者ロール」からロールまたはユーザーを選択すると、アクション・バーが消え、外部ロール・マッピングおよび外部ユーザー・マッピングを削除できなくなります。

回避策:

この問題は、Internet Explorer 7に固有です。Firefox 3を使用してください。

26.1.4 再作成されたアプリケーションが制御モードで配布されない場合がある

場合によっては、PDPサービスが制御モードで実行されているときに、1つのアプリケーション・オブジェクトがポリシー・ストアから削除された後に同じ名前を使用して再作成されると、変更がPDPサービスに配布されない可能性があります。これは、ローカル・キャッシュ内のアプリケーションのバージョンがポリシー・ストア内のアプリケーションのバージョンより高いことが原因です。

回避策:

PDPサービスのローカル・キャッシュ・ファイルを削除し、PDPサービス・インスタンスを再起動してください。oracle.security.jps.runtime.pd.client.localpolicy.work_folder構成パラメータによってキャッシュへのパスが定義されます。デフォルト値は<SM_INSTANCE>/config/work/です。

26.1.5 新しく追加した監査イベントをEnterprise Managerが取得しない

component_events.xmlは、構成ツール(Enterprise ManagerやWebLogic Scripting Toolなど)と監査ランタイムおよびデータベース・ローダーによって使用される監査イベント定義ファイルです。「Low/Medium」リストに新しく追加されたすべてのイベントがEnterprise Managerによって取得されるようにするには、component_events.xmlファイルを変更する必要があります。

回避策:

  1. Enterprise Managerからログアウトします。

  2. component_events.xmlファイルを開きます。

    このファイルは$IDM_OPSS_ORACLE_HOME/modules/oracle.iau_11.1.1/components/JPS/ディレクトリ内にあります。

  3. <FilterPresetDefinition name="Low">を検索します。

  4. イベント・リスト内で、purgeDistributionStatusPurgeDistributionStatusに変更します。

    大文字に注意してください。

  5. <FilterPresetDefinition name="Medium">を検索します。

  6. イベント・リスト内で、purgeDistributionStatusPurgeDistributionStatusに変更します。

    大文字に注意してください。

  7. ファイルを保存して閉じます。

  8. Enterprise Managerを起動します。

26.1.6 認可リクエストに渡された属性が大/小文字を区別して処理される

渡された属性のPEP API名を使用する場合、これらの大/小文字の区別は、ポリシーに記載されているものと同じである必要があります。

26.1.7 監査スキーマ定義が不完全である

IAUOES監査スキーマはOracle Entitlements Serverのイベント定義と同期化されていないため、このコンポーネントに必要な列は含まれていません。このため、データを適切な列に保存できず、Oracle Entitlements Serverデータに対して監査レポートを実行できません。

回避策 - オプション1

RCUが実行されていない場合、このオプションを使用します。手順は次のとおりです。

  1. 次の場所にあるJPS.sqlを検索します。

    $RCU_HOME/rcu/integration/iauoes/scripts/JPS.sql
    

    ファイル権限を変更し、ファイルを書込み可能にします。

  2. 次のファイルをコピーします:

    $IDM_OPSS_ORACLE_HOME/modules/oracle.iau_11.1.1/sql/scripts/JPS.sql
    

    コピー先:

    $RCU_HOME/rcu/integration/iauoes/scripts/JPS.sql
    
  3. RCUを実行してIAUOESスキーマを作成します。

回避策 - オプション2

RCUがすでに実行されている場合、このオプションを使用します。手順は次のとおりです。

  1. 次のファイルをコピーします:

    $IDM_OPSS_ORACLE_HOME/modules/oracle.iau_11.1.1/sql/scripts/JPS.sql
    

    sqlplusの実行元のディレクトリにコピーします。

  2. sysdbaとしてsqlplusに接続します。

  3. 次のコマンドをSQLプロンプトで実行します。

    1. alter session set current_schema=audit_schema_user

    2. drop table JPS;

    3. @@JPS.sql audit_schema_user audit_schema_user_Append
      audit_schema_user
      _Viewer;

26.1.8 IPv6クライアント上のJavaセキュリティ・モジュールがWindowsでサポートされない

JDK 1.6の問題が原因で、Windows IPv6クライアントを使用している場合、Javaセキュリティ・モジュールはサポートされません。現在、JDK開発チームと協力して解決に当たっています。

26.1.9 カスタム機能の属性名の検証

カスタム機能実装を使用しているときに属性名が無効である場合、認可リクエストの結果が間違っている可能性があります。このため、属性名の値を取得する前に属性名を検証する必要があります。

回避策:

カスタム機能実装で次のコードを使用して属性名を検証します。

boolean isValidAttributeName(String name) {
    if (name == null) return false;
    return name.matches("[A-Za-z_][A-Za-z0-9_]*");
} 

26.2 構成の問題および回避策

この時点で構成の問題はありません。

26.3 ドキュメントの訂正箇所

この時点でドキュメントの訂正箇所はありません。