グループ・プロファイル監査は、グループ・プロファイルの属性、グループ管理者および直下のサブグループに対する変更を対象としています。
この章の内容は次のとおりです。
ユーザー監査機能とは異なり、グループ・プロファイル監査機能には独自の監査レベルが定義されません。かわりに、ユーザー・プロファイル監査機能に定義された監査レベルがグループ・プロファイル監査機能に使用されます。グループ・プロファイル監査機能は、ユーザー・プロファイル監査レベルに定義された監査レベルがMembership以上のレベルである場合にのみ使用できます。Oracle Identity Managerをインストールすると、デフォルトでユーザー・プロファイル監査機能が有効になり、監査レベルはResource Formに設定されます。その結果、グループ・プロファイル監査機能もデフォルトで有効になります。これは、ユーザー・プロファイル監査機能のデフォルトの監査レベルが、Membershipよりも上位のResource Formであるためです。
この項の内容は次のとおりです。
グループ・プロファイルの変更のたびに、Oracle Identity Managerでは、グループ・プロファイルのスナップショットを取得してデータベースの監査表に格納します。
Oracle Identity Managerでは、グループに対する監査が作成されると、たとえ最初のスナップショットが存在しなくても、スナップショットが生成されます。現在のスナップショットが最初のスナップショットとして取り扱われます。
次に、グループ・プロファイルの構成要素とこれらの構成要素を成す表を示します。
ユーザー・グループ・レコード: UGP表(グループのすべてのUDFを含む)
ユーザー・グループ管理者: GPP表
サブグループ情報: GPG表
Oracle Identity Managerでは、グループ・スナップショット・データをXMLとしてグループ・プロファイル監査(GPA)の表に格納します。次の各項では、スナップショットおよびスナップショットに対する変更のXML表現について説明します。
グループ・プロファイル・スナップショットのXML表現を構成する要素は次のとおりです。
これは、XML表現の一番上の要素です。この要素には、各XMLエントリのグループ・キーとバージョンが含まれます。特定のグループ・プロファイルについて、グループ・キーの値は固定であり、スナップショットに割り当てられるバージョン番号は、グループ・プロファイルに作成された新しいスナップショットごとに1ずつ増えます。
このリストの残りの要素は、GroupSnapshot要素の子要素です。
この要素には、グループ・プロファイルの一般情報が含まれます。
この要素には、グループ管理者に関する情報が含まれます。
この要素には、サブグループに関する情報が含まれます。
例4-1に、サンプルのグループ・プロファイル・スナップショットのXML表現を示します。
例4-1 グループ・プロファイル・スナップショットのXML表現
<?xml version="1.0" encoding="UTF-8" ?>
- <GroupSnapshot key="311" version="1.0">
- <GroupInfo>
<Attribute name="Groups.Creation Date">2007-04-12 17:27:17.231</Attribute>
<Attribute key="311" name="Groups.Group Name">TESTGROUP100</Attribute>
<Attribute name="Groups.Update Date">2007-04-12 17:27:17.231</Attribute>
<Attribute key="1" name="UGP_UPDATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute key="1" name="UGP_CREATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute name="Groups.Group Status">Active</Attribute>
</GroupInfo>
- <GroupAdmin>
- <Group key="1">
<Attribute name="Groups-Group Ownership.Write">1</Attribute>
<Attribute name="Groups-Group Ownership.Creation Date">2007-04-12 17:27:17.356</Attribute>
<Attribute name="Groups.Key">311</Attribute>
<Attribute name="Groups-Group Ownership.Delete">1</Attribute>
<Attribute name="Groups-Group Ownership.Update Date">2007-04-12 17:27:17.356</Attribute>
<Attribute key="1" name="GPP_CREATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute key="1" name="Groups.Group Name">SYSTEM ADMINISTRATORS</Attribute>
<Attribute key="1" name="GPP_UPDATEBY_LOGIN">XELSYSADM</Attribute>
</Group>
- <Group key="312">
<Attribute key="1" name="GPP_CREATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute key="312" name="Groups.Group Name">ADMINGROUP1</Attribute>
<Attribute key="1" name="GPP_UPDATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute name="Groups-Group Ownership.Write">1</Attribute>
<Attribute name="Groups-Group Ownership.Delete">1</Attribute>
</Group>
- <Group key="313">
<Attribute key="1" name="GPP_CREATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute key="313" name="Groups.Group Name">ADMINGROUP2</Attribute>
<Attribute key="1" name="GPP_UPDATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute name="Groups-Group Ownership.Write">1</Attribute>
<Attribute name="Groups-Group Ownership.Delete">0</Attribute>
</Group>
</GroupAdmin>
- <Subgroups>
- <Group key="314">
<Attribute name="Groups-User Sub Groups.Creation Date">2007-04-12 17:34:56.746</Attribute>
<Attribute name="Groups-User Sub Groups.Update Date">2007-04-12 17:34:56.746</Attribute>
<Attribute key="1" name="GPG_UPDATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute key="1" name="GPG_CREATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute key="314" name="Groups.Group Name">SUBGROUP100</Attribute>
</Group>
- <Group key="315">
<Attribute name="Groups-User Sub Groups.Creation Date">2007-04-12 17:34:56.746</Attribute>
<Attribute name="Groups-User Sub Groups.Update Date">2007-04-12 17:34:56.746</Attribute>
<Attribute key="1" name="GPG_UPDATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute key="1" name="GPG_CREATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute key="315" name="Groups.Group Name">SUBGROUP101</Attribute>
</Group>
- <Group key="316">
<Attribute name="Groups-User Sub Groups.Creation Date">2007-04-12 17:34:56.746</Attribute>
<Attribute name="Groups-User Sub Groups.Update Date">2007-04-12 17:34:56.746</Attribute>
<Attribute key="1" name="GPG_UPDATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute key="1" name="GPG_CREATEBY_LOGIN">XELSYSADM</Attribute>
<Attribute key="316" name="Groups.Group Name">SUBGROUP102</Attribute>
</Group>
</Subgroups>
</GroupSnapshot>
スナップショットに対する変更は、XML形式でGPA表のDELTAS列に格納されます。このXML情報には、特定のトランザクションのグループ・プロファイルの属性に影響するすべての変更が、その理由とともに記述されます。
このXML表現の一番上の要素は、Changesです。特定のトランザクション中に行われた変更は、それぞれChange要素に記述されます。1つのChanges要素内に、Change要素が複数存在してもかまいません。Change要素の属性は次のとおりです。
reason
この属性は、ユーザー・プロファイル・データの変更に関する理由を保持します。
reasonKey
この属性は、ユーザー・プロファイル・データの変更を発生させたエンティティまたはプロセスのキーを保持します。
where
この属性は、変更の場所を保持します。
action
この属性は、変更が挿入、更新または削除のいずれによって発生したかを指定します。値は、それぞれinsert、update、deleteです。
order
この属性は、Change要素が複数存在する場合に、デルタ内のChange要素の順序を指定します。
表4-1に、reason属性とreasonKey属性に使用できる値をすべて示します。
表4-1 グループ・プロファイル監査のreason属性とreasonKey属性の値
| reason属性値 | reasonKey属性値 | 説明 |
|---|---|---|
|
|
リコンシリエーション・イベントのキー( |
リコンシリエーションによって行われた変更 |
|
|
アクセス・ポリシーのキー( |
アクセス・ポリシーの変更によって行われた変更 |
|
|
リクエストのキー( |
リクエストによって行われた変更 |
|
|
ダイレクト・プロビジョニングを実行するユーザーのキー( |
ダイレクト・プロビジョニングによって行われた変更 |
|
|
手動で変更を実行するユーザーのキー( |
ユーザーが手動で行った変更 |
|
|
自動グループ・メンバーシップ・ルールのキー( |
自動グループ・メンバーシップ・ルールに対する更新によって行われた変更 |
|
|
アダプタのキー( |
アダプタの実行時に行われた変更 |
|
|
APIを使用するアクションを実行するユーザーのキー( |
APIによって行われた変更 |
|
|
データ・オブジェクト変更を行うアクションを実行するユーザーのキー( |
データ・オブジェクト・レベルで行われた変更 |
|
|
オフライン処理アクションを実行するユーザーのキー( |
オフライン処理中に行われた変更 |
|
|
イベント・ハンドラのキー( |
イベント・ハンドラによって行われた変更 |
|
|
アテステーション・リクエストのキー( |
アテステーションによって行われた変更 |
|
|
|
この表に示したreason属性値のいずれにも該当しない変更 |
|
|
|
|
例4-2に、サンプルのグループ・プロファイル・スナップショットに対する変更のXML表現を示します。
例4-2 サンプルのグループ・プロファイル・スナップショットに対する変更のXML表現
<?xml version="1.0" encoding="UTF-8" ?>
- <Changes>
- <Change action="insert" order="1" reason="Manual" reasonKey="1"
where="/GroupSnapshot/Subgroups/Group[@key='314']">
- <Attribute name="GPG_CREATEBY_LOGIN">
<OldValue key="" />
<NewValue key="1">XELSYSADM</NewValue>
</Attribute>
- <Attribute name="GPG_UPDATEBY_LOGIN">
<OldValue key="" />
<NewValue key="1">XELSYSADM</NewValue>
</Attribute>
- <Attribute name="Groups-User Sub Groups.Creation Date">
<OldValue />
<NewValue>2007-04-12 17:34:56.746</NewValue>
</Attribute>
- <Attribute name="Groups.Key">
<OldValue />
<NewValue>311</NewValue>
</Attribute>
- <Attribute name="Groups-User Sub Groups.Update Date">
<OldValue />
<NewValue>2007-04-12 17:34:56.746</NewValue>
</Attribute>
- <Attribute name="Groups.Group Name">
<OldValue key="" />
<NewValue key="314">SUBGROUP100</NewValue>
</Attribute>
</Change>
- <Change action="insert" order="2" reason="Manual" reasonKey="1"
where="/GroupSnapshot/Subgroups/Group[@key='314']">
- <Attribute name="Groups-User Sub Groups.Creation Date">
<OldValue />
<NewValue>2007-04-12 17:34:56.809</NewValue>
</Attribute>
- <Attribute name="Groups.Key">
<OldValue />
<NewValue>311</NewValue>
</Attribute>
- <Attribute name="Groups-User Sub Groups.Update Date">
<OldValue />
<NewValue>2007-04-12 17:34:56.809</NewValue>
</Attribute>
</Change>
- <Change action="insert" order="3" reason="Manual" reasonKey="1"
where="/GroupSnapshot/Subgroups/Group[@key='315']">
- <Attribute name="GPG_UPDATEBY_LOGIN">
<OldValue key="" />
<NewValue key="1">XELSYSADM</NewValue>
</Attribute>
- <Attribute name="GPG_CREATEBY_LOGIN">
<OldValue key="" />
<NewValue key="1">XELSYSADM</NewValue>
</Attribute>
- <Attribute name="Groups.Group Name">
<OldValue key="" />
<NewValue key="315">SUBGROUP101</NewValue>
</Attribute>
</Change>
- <Change action="insert" order="4" reason="Manual" reasonKey="1"
where="/GroupSnapshot/Subgroups/Group[@key='314']">
- <Attribute name="Groups-User Sub Groups.Creation Date">
<OldValue />
<NewValue>2007-04-12 17:34:56.871</NewValue>
</Attribute>
- <Attribute name="Groups.Key">
<OldValue />
<NewValue>311</NewValue>
</Attribute>
- <Attribute name="Groups-User Sub Groups.Update Date">
<OldValue />
<NewValue>2007-04-12 17:34:56.871</NewValue>
</Attribute>
</Change>
- <Change action="insert" order="5" reason="Manual" reasonKey="1"
where="/GroupSnapshot/Subgroups/Group[@key='316']">
- <Attribute name="GPG_UPDATEBY_LOGIN">
<OldValue key="" />
<NewValue key="1">XELSYSADM</NewValue>
</Attribute>
- <Attribute name="GPG_CREATEBY_LOGIN">
<OldValue key="" />
<NewValue key="1">XELSYSADM</NewValue>
</Attribute>
- <Attribute name="Groups.Group Name">
<OldValue key="" />
<NewValue key="316">SUBGROUP102</NewValue>
</Attribute>
</Change>
</Changes>
Oracle Identity Managerでグループ・プロファイルのスナップショットを取得すると、そのスナップショットはGPA表に格納されます。この表の構造は、表4-2に示すとおりです。
表4-2 GPA表の定義
| 列 | データ型 | 説明 |
|---|---|---|
|
|
NUMBER (19,0) |
監査レコードのキー |
|
|
NUMBER (19,0) |
グループ・スナップショットが記録されるグループのキー |
|
|
TIMESTAMP (6) |
スナップショット・エントリが有効になった日時 |
|
|
TIMESTAMP (6) |
スナップショット・エントリが無効になった日時 つまり、これは次のスナップショット・エントリが作成された日時です。最新のユーザー・プロファイルを表すエントリの場合、終了日列の値は |
|
|
VARCHAR2 (4000) |
エントリのソース(グループ名と使用されるAPI) |
|
|
CLOB |
スナップショットのXML表現 |
|
|
CLOB |
スナップショットに対して行われた変更に対応する新旧の値のXML表現 |
|
|
CLOB |
顧客が(否認防止のために)スナップショットのデジタル署名を格納するために使用できる列 |