Oracle Fusion Middleware 11gでは、Oracle Fusion Middlewareの監査フレームワーク・サービスを設定することもできます。監査によって、アカウンタビリティの手段が提供されるとともに、誰がいつ何を行ったか、というタイプの疑問が解決されます。
Oracle Fusion Middlewareの監査フレームワークは、ミドルウェア製品の集中監査フレームワークとして機能するように設計されています。このフレームワークで提供されている監査サービスの対象は次のとおりです。
ミドルウェア・プラットフォーム: これには、Oracle Platform Security Services(OPSS)やOracle Web ServicesなどのJavaコンポーネントが含まれます。これらは、ミドルウェアにデプロイされたアプリケーションによって活用されるコンポーネントです。間接的には、これらのJavaコンポーネントを活用するデプロイ済アプリケーションはすべて、プラットフォーム・レベルで発生する監査フレームワークの監査イベントから利点を得られます。
Java EEアプリケーション: 目的は、Oracle自体のJavaコンポーネントをはじめとするJava EEアプリケーションにフレームワークを提供することです。Java EEアプリケーションは、そのアプリケーション固有の監査イベントを作成できるようになります。現在のリリースでは、Oracle Fusion Middlewareの監査フレームワークを使用するJava EEコンポーネントはOracleの内部コンポーネントです。
システム・コンポーネント: 監査フレームワークは、Oracle Process Manager and Notification Server(OPMN)で管理されるミドルウェア内のシステム・コンポーネントにも、Javaコンポーネントに対するサービスと同様のエンドツーエンドのサービスを提供します。
Oracle Fusion Middlewareの監査フレームワークに関する概要情報の詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』の「Oracle Fusion Middlewareの監査フレームワークの概要」を参照してください。
出荷時の設定では、監査フレームワークでの監査レコードの格納にはファイル・システムが使用されます。ただし本番環境では、データベース監査ストアを使用して、監査フレームワークのスケーラビリティと高可用性を確保することをお薦めします。この章で説明する構成のような高可用性構成を採用する場合は、データベース監査ストアとしてOracle Real Application Clusters(RAC)データベースを使用することをお薦めします。
『Oracle Fusion Middlewareセキュリティ・ガイド』の「監査の構成および管理」には、監査の構成手順が記載されています。その章の監査ストアの管理に関する項では、監査データ・ストアとしてデータベースを設定する手順が説明されています。
Oracle RACデータベース監査ストアを使用してOracle Fusion Middlewareの監査フレームワークを設定する場合は、手動により次の構成を行います。
WebLogic Serverを使用した、監査データソースのデータソースおよびマルチ・データソースの構成
opmn.xmlファイルでの、OPMNローダーのJDBC文字列の構成
次の各項では、監査データ・ストアとしてOracle RACデータベースを使用する場合の監査構成固有の追加情報を提供します。
Oracle RACデータベースに対して監査データソースおよびマルチ・データソースを設定する方法については、『Oracle Fusion Middlewareセキュリティ・ガイド』の監査ストアの管理に関する項の手順に従ってください。監査データソースの設定方法については監査データソースの設定に関する項を、Oracle RACデータベースを監査データ・ストアとして構成する方法については複数のデータソースに関する項を、それぞれ参照してください。
監査データソースの設定に関する項を参照して、監査データソースを設定します。監査データソースとしてOracle RACデータベースを使用するには、2つのデータソースを個別に作成する必要があります。この2つのデータソースは、監査スキーマがインストールされている個々のOracle RACインスタンスをそれぞれ指すようにします。必要な設定は次のとおりです。
接続URLは次の形式にします。
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=PROTOCOL=TCP)(HOST=host-vip) (PORT=1521))(CONNECT_DATA=(SERVICE_NAME=dbservice)(INSTANCE_NAME=inst1))
ホストとポート以外にも、サービス名とインスタンス名が必要です。
使用するドライバはoracle.jdbc.OracleDriverです。
次のプロパティを設定します。
<property> <name>oracle.net.CONNECT_TIMEOUT</name> <value>10000</value> </property>
データソースごとに必要な設定は次のとおりです。
initial-capacity: 0
connection-creation-retry-frequency-seconds: 10
test-frequency-seconds: 300
test-connections-on-reserve: true
test-table-name: SQL SELECT 1 FROM DUAL
seconds-to-trust-an-idle-pool-connection: 0
global-transactions-protocol: なし
複数のデータソースに関する項を参照して、監査データ・ストアとしてOracle RACデータベースを構成します。JNDI名をjdbc/AuditDBに指定して、マルチ・データソースを作成します。このマルチ・データソースは、作成した個々のデータソースを指している必要があります。
マルチ・データソースに必要な設定は次のとおりです。
test-frequency-seconds: 5
algorithm-type: ロード・バランシング
data-source-list: カンマで区切った子データソースのリスト("JDBC Data Source-0,JDBC Data Source-1")を指します。このリストは、Oracle RACデータベースの個別ノードごとに作成したデータソースのセットと同じものです。
監査ストアを構成してある場合、Oracle Process Manager and Notification Server(OPMN)によって、Oracle WebLogic Serverで実行されている複数のシステム・コンポーネントが管理されます。これらのコンポーネント用に、OPMNはデータベース監査ストアに監査イベントをプッシュします。
『Oracle Fusion Middlewareセキュリティ・ガイド』のシステム・コンポーネントに対するデータベース監査ストアの構成に関する項には、OPMN起動監査ローダーの設定方法が記載されています。
OPMN起動監査ローダーの設定時には、opmn.xml
ファイルのrmd-definitions
要素を変更する必要があります。デフォルトでは、rmd-definitions
要素には、次の形式によるのJDBC文字列が含まれています。
jdbc:oracle:thin:@host:port:sid
監査データ・ストアとしてOracle RACデータベースを使用する場合は、rmd-definitions
要素で、Oracle RACデータベースのJDBC文字列を次の形式で使用する必要があります。
jdbc:oracle:thin@(DESCRIPTION=(ADDRESS_LIST=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL= tcp)(HOST=node1-vip)(PORT=1521))(ADDRESS=(PROTOCOL=tcp)(HOST=node2-vip)(PORT=1521) ))(CONNECT_DATA=SERVICE_NAME=service-name.mycompany.com)))
また、Javaコンポーネント用のOracle RACデータベース監査ストアを構成する必要がある場合は、『Oracle Fusion Middlewareセキュリティ・ガイド』のJavaコンポーネントに対するデータベース監査ストアの構成に関する項を参照してください。