ユーザー・プロファイル監査は、ユーザー・プロファイルの属性、ユーザー・メンバーシップ、リソース・プロビジョニング、アクセス・ポリシーおよびリソース・フォームに対する変更を対象としています。
この章の内容は次のとおりです。
監査エンジンは、Oracle Identity Managerの監査情報を収集します。プロファイルが変更されるたびに、監査エンジンは変更(デルタ)を収集してユーザーおよびグループのプロファイルのスナップショットを更新(存在しない場合は生成)し、これらのスナップショットおよびデルタをXML形式で格納します。また、監査エンジンには、生成されたXMLに基づいて関連データをレポート表に移入するポストプロセッサがあります。高いパフォーマンスを維持するため、デフォルトでは、監査エンジンは、アプリケーション・サーバーに装備されている基礎となるJava Message Service(JMS)を使用して、これらのタスクを非同期オフライン方式で実行します。
この項の内容は次のとおりです。
この章で前述したように、Oracle Identity Managerを監査およびコンプライアンス・モジュールとともにインストールすると、デフォルトでユーザー・プロファイル監査機能が有効になり、監査レベルはResource Form
に設定されます。監査レベルを変更する場合は、GenerateSnapshot.sh
スクリプト(Linuxの場合)またはGenerateSnapshot.bat
スクリプト(Microsoft Windowsの場合)を実行する必要があります。このスクリプトは、OIM_HOME
/xellerate/bin
ディレクトリにあります。スクリプトでは、Oracle Identity Managerデータベース内のすべてのユーザーを調査し、新しいスナップショットを新しい監査レベルに基づいて生成します。
監査エンジンは、次の部分を構成できます。
監査詳細のレベル
アクティブ・トリガー
監査エンジンの動作
監査スナップショットに収集されるデータ
監査レベルは、システム構成プロパティXL.UserProfileAuditDataCollection
の値としてDesign Consoleで指定できます。
関連項目: 『Oracle Identity Managerデザイン・コンソール・ガイド』の「System Configuration」フォーム」 |
サポートされる監査レベルは、次のとおりです。
Process Task: リソース・ライフ・サイクル・プロセスでユーザー・プロファイル・スナップショット全体を監査します。
Resource Form: ユーザー・レコード、グループ・メンバーシップ、プロビジョニングされたリソース、リソースおよびプロセスに関連付けられたフォーム・データを監査します。
Resource: ユーザー・レコード、グループ・メンバーシップ、プロビジョニングされたリソースを監査します。
Membership: ユーザー・レコードおよびユーザー・グループ・メンバーシップのみを監査します。
Core: ユーザー・レコードのみを監査します。
None: 監査データは生成または格納されません。
注意: 特定の監査レベルを指定すると、下位の優先順位レベルにある監査レベルはすべて自動的に有効になります。たとえば、 監査レベルの指定では、大/小文字が区別されます。監査レベルを指定する際は、監査レベルの大/小文字を変更しないでください。 |
AUD
表は、監査メタデータのXMLを格納します。監査エンジンでは、このメタデータを使用してスナップショットのXMLおよびスナップショット変更のXMLを作成します。メタデータのXMLは、特に、スナップショットのXML、スナップショット変更のXMLおよびポストプロセッサを格納する表に関する情報を指定します。監査エンジンがスナップショットを生成した後に、これらのポストプロセッサはスナップショット・データを処理し、XML情報を変更してレポート表に格納します。
ポストプロセッサには、内部監査タイプとカスタム・タイプの2種類があります。内部監査ポストプロセッサは、監査者のXMLメタデータに定義されます。
カスタム・ポストプロセッサを作成すると、追加情報をレポート表に格納できるように既存のポストプロセッサの機能を拡張できます。カスタム・ポストプロセッサは、XMLメタデータには定義されません。
カスタム・ポストプロセッサを作成するには、次のようにします。
Design Consoleの「Lookup Definition」フォームを開きます。
CustomAuditDataProcessor
クラスを拡張するクラスを作成し、processAuditData
メソッドを実装します。
Oracle Identity Manager Design Consoleで、次のように参照定義を作成します。
「Code」フィールドに、Audit
.AuditorName
.CustomProcessors
と入力します。AuditorName
は、ポストプロセッサで使用する監査者の名前です。
たとえば、ユーザー・プロファイル監査の場合、「Code」フィールドの値はAudit.UserProfile.CustomProcessors
となります。
「Lookup Type」オプションを選択します。
監査者に関連付けられたグループ名を入力します。この場合はUPA Processors Group
です。
参照コード情報を追加します。
これは、作成したクラスへの完全修飾されたクラスパスです。コード・キーおよびデコードは、クラスパスである必要があります。
クラスを作成して参照情報を設定したら、OIM_HOME
/xellerate/JavaTasks
ディレクトリのJARファイルに配置します。
監査者に関する情報は、データベース内の次の表に格納されます。
aud_jms
: この表は、監査者について行われた変更に関する情報を格納します。
この表のキーは、JMSに送信されます。Oracle Identity Managerでは、複数の変更が同じユーザーに加えられたときに、この表を使用して変更順序を制御します。スケジュール済タスクIssue Audit Messages Task
を使用すると、処理されていないメッセージの再発行を自動化できます。このスケジュール済タスクの詳細は、「監査メッセージの発行」を参照してください。
Oracle Identity Managerには、Issue Audit Messages Task
というスケジュール済タスクがあります。このスケジュール済タスクは、監査メッセージの詳細をaud_jms
表から取り出し、aud_jms
表の特定の識別子および監査者のエントリについてJMSメッセージを1つ送信します。MDBで対応する監査メッセージが処理されます。
このタスクの属性は、次のとおりです。
Max Records
Max Records
属性を使用し、指定したスケジュール済タスクの実行について処理される監査メッセージの最大数を指定します。この属性のデフォルト値は、400
です。
aud_jms
表に監査メッセージのバックログがある場合は、Max Records
属性の値を増やすことができます。設定する値は、スケジュール済タスクのデフォルトの実行間隔の間にJMSエンジンが処理できるメッセージ数に依存します。その数は、アプリケーション・サーバーおよびデータベースのパフォーマンスによって決まります。Max Records値を増やす前に、アプリケーション・サーバーの管理コンソールを使用するなどして、JMS宛先(xlAuditQueue)での監査メッセージ数の処理にかかる時間を割り出す必要があります。必要な時間がスケジュール済タスクの間隔より短い場合は、Max Records属性の値をその分だけ増やすことができます。