ポリシー構成の変更といったOracle Database Vault内のアクティビティは、監査することができます。
内容は次のとおりです。
Oracle Database Vaultのすべてのアクティビティは、Database Vault Administratorのアクティビティを含めて監査できます。
オプションで、レルム、ルール・セットおよびファクタに作成する個別のポリシーを監査できます。監査は、ユーザーのアクションの成功(ポリシーによってユーザーがタスクを実現できたかどうか)、またはユーザーのアクションの失敗(ポリシー違反したかどうか)のいずれかを示します。このようなアクションは監査ログに書き込まれます。この内容を確認するには、適切なデータ・ディクショナリ・ビューを問い合せるか、「Oracle Database Vaultレポート」に記載されているレポートを実行します。
Database Vaultへのすべての構成変更については監査が必須となっており、これには、権限が与えられていないユーザーによってDatabase Vaultポリシーの変更が試行されるアクションが含まれます。
新しいデータベースをインストールして、Oracle Database Vaultを使用するようにそのデータベースを構成する場合、デフォルトで混合モード環境(統合監査と事前移行済監査の混合)が使用されます。以前のリリースからアップグレードした場合、Database Vaultは、そのリリースで使用できた監査を使用します。
完全な統合監査環境に移行する前に、監査ポリシーを次のように作成できます。
Database VaultのAPIの使用: DBMS_MACADM
PL/SQLパッケージまたはEnterprise ManagerのDatabase Vaultページを使用します。この場合、監査レコードはDatabase Vault監査証跡に書き込まれます。この証跡は、DVSYS.AUDIT_TRAIL$
表に格納されます。これらの監査レコードについて、DVSYS.DV$CONFIGURATION_AUDIT
ビューとDVSYS.DV$ENFORCEMENT_AUDIT
ビューに問い合せることができます。
統合監査ポリシーのSQL文の使用: これらの文は、CREATE AUDIT POLICY
、ALTER AUDIT POLICY
、DROP AUDIT POLICY
、AUDIT
およびNO AUDIT
文です。これらは統合監査証跡に書き込まれます。この証跡は、UNIFIED_AUDIT_TRAIL
、SYS.DV$CONFIGURATION_AUDIT
およびSYS.DV$ENFORCEMENT_AUDIT
データ・ディクショナリ・ビューで取得されます。
統合監査に移行する場合、Database VaultのAPIの監査機能は、無効となります。「Oracle Database Vault監査証跡のアーカイブおよびパージ」の説明に従い、これらの監査レコードをアーカイブおよびパージする必要があります。それ以降、統合監査ポリシーのPL/SQL文によってDatabase Vault監査ポリシーを管理できます。
記述した内容を除き、この章の残りの項では、Database Vault監査の非統合または混合モードの監査環境での動作について説明します。
関連項目:
Oracle Database Vaultでの統合環境の動作と統合監査ポリシーの作成方法の詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください
Database Vault統合監査に固有の次のデータ・ディクショナリ・ビュー。
統合監査にデータベースを移行する場合は、『Oracle Databaseアップグレード・ガイド』を参照してください
デフォルトでは、統合監査証跡を含むAUDSYS
スキーマはレルムで保護されません。
AUDSYS
スキーマにレルムは必要ありません。このスキーマに含まれる情報は内部用であり、他のデータベース・オブジェクト(表やビュー)をスキーマで表示できるのと同じように表示することはできないからです。統合監査証跡を保護するには、AUDIT_ADMIN
ロールとAUDIT_VIEWER
ロールの周囲にレルムを作成します。こうすると、これらのロールを付与できるユーザーを制御できます。
関連項目:
Oracle Database Vaultの監査イベントは、レルムで試行されたアクションが成功したか等のアクティビティを追跡します。
内容は次のとおりです。
Oracle Database Vaultでは、監査イベントを使用して構成アクティビティを追跡します。
これらのアクティビティは、次のとおりです。
レルムの監査。レルムの作成時に設定した監査オプションに基づいて、正常終了したアクションおよび失敗したアクションの両方を監査できます。ただし、スキーマ所有者によって実行されたアクションは監査できません。
ルール・セット監査。ルール・セットの処理結果を監査します。正常終了した処理および失敗した処理の両方を監査できます。レルム認可は、ルール・セットを使用して管理できます。ルール・セットの処理結果を監査できます。ファクタ割当ておよびセキュア・アプリケーション・ロール監査は、ルール・セットを使用して管理できます。
ファクタの監査。正常終了したファクタ処理および失敗したファクタ処理の両方を監査できます。失敗したファクタ処理の場合、「取得エラー」、「取得がNULL」、「検証エラー」、「検証がFalse」、「信頼レベルがNULL」、「信頼レベルがゼロ未満」のすべてまたはいずれかについて監査できます。
Oracle Label Securityセッション初期化の失敗。Oracle Label Securityセッションの初期化に失敗したインスタンスを監査します。
Oracle Label Securityセッション・ラベル・アップグレード試行の失敗。Oracle Label Securityコンポーネントによって最大セッション・ラベルを超えるラベルの設定が妨げられているセッションのインスタンスを監査します。
関連項目:
ファクタの詳細は、ファクタの監査オプションの設定を参照してください
監査レポートの表示の詳細は、Oracle Database Vaultレポートを参照してください
統合監査を使用しない場合、Oracle Database Vaultは、表DVSYS.AUDIT_TRAIL$
に監査記録を書き込みます。
これらの監査レコードはOracle Database Vault監査証跡の一部ではないため、データベースで監査がどのように有効になっても、Oracle Database VaultがDVSYS.AUDIT_TRAIL$
表から監査データをどのように収集するかには影響しません。実際には、Oracle Databaseで監査が無効になっている場合でも、Oracle Database Vaultの監査機能はDVSYS.AUDIT_TRAIL$
表への書込みを続けます。
DV_OWNER
、DV_ADMIN
、DV_SECANALYST
またはDV_MONITOR
ロールが付与されているユーザーは、DVYS.AUDIT_TRAIL$
表に直接問い合せることができます。
表A-1では、監査証跡の書式を説明しています。DVSYS.AUDIT_TRAIL$
表を使用するカスタム・レポートの作成を予定している場合、これらの書式を理解する必要があります。
表A-1 Oracle Database Vault監査証跡の書式
列 | データ型 | NULL | 説明 |
---|---|---|---|
|
|
|
監査レコードごとの数値識別子。 |
|
|
|
アクションが監査対象となったユーザーのオペレーティング・システムのログイン・ユーザー名。 |
|
|
|
アクションが監査対象となったデータベース・ユーザーの名前。 |
|
|
|
クライアント・コンピュータ名。 |
|
|
|
ユーザーの端末に対する識別子。 |
|
|
|
監査証跡エントリの作成日時(ローカル・データベース・セッションのタイムゾーン)。 |
|
|
|
アクションの影響を受けるオブジェクトの作成者、常時 |
|
|
|
アクションの影響を受けるオブジェクトの名前。想定値は次のとおりです。
|
|
|
|
数値のアクション・タイプ・コード。アクション・タイプに対応する名前は、 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
実行された結果、監査イベントがトリガーされたコマンド・プロシージャのSQLテキスト。 |
|
|
|
結果として監査イベントがトリガーされたレコードに指定されたすべての監査オプションのラベル。たとえば、失敗または |
|
|
|
実行された結果、監査イベントがトリガーされたルール・セットの一意の識別子。 |
|
|
|
実行された結果、監査イベントがトリガーされたルール・セットの一意の名前。 |
|
|
|
未使用 |
|
|
|
未使用 |
|
|
|
監査イベントがトリガーされた時点での、現行セッションに対するすべてのファクタ識別子を含むXML文書。 |
|
|
|
監査対象となった文の詳細を示す、監査証跡エントリについてのテキスト・コメント。 |
|
|
|
Oracleセッションごとの数値識別子。 |
|
|
|
|
|
|
|
起動された結果、監査イベントが生成された文の数値識別子。ほとんどのOracle Database Vaultイベントの場合、このパラメータは空です。 |
|
|
|
アクションによって生成されたOracleエラー・コード。起動された結果、監査イベントが生成された文またはプロシージャに対するエラー・コード。ほとんどのOracle Database Vaultイベントの場合、このパラメータは空です。 |
|
|
|
UTC(協定世界時)タイムゾーンの、監査証跡エントリの作成時のタイムスタンプ(エントリに対するユーザー・ログインのタイムスタンプ)。 |
|
|
|
エンタープライズ・ユーザーがプロキシ機構を介してログインした場合の、プロキシ・セッションのシリアル番号 |
|
|
|
ユーザーがエンタープライズ・ユーザーとしてログインした場合の、ユーザーのグローバル・ユーザー識別子。 |
|
|
|
|
|
|
|
Oracleプロセスのオペレーティング・システム・プロセス識別子 |
|
|
|
アクションが監査対象となったユーザーのデータベースのログイン・ユーザー名。 |
|
|
|
|
|
|
|
|
|
|
|
|
統合監査に移行していない場合、Oracle Database Vault監査証跡を定期的にアーカイブおよびパージする必要があります。
内容は次のとおりです。
非統合監査環境では、表DVSYS.AUDIT_TRAIL$
をダンプ・ファイルにエクスポートすることによって、Oracle Database Vaultの監査証跡をアーカイブできます。
監査証跡は、大きくなりすぎないように定期的にアーカイブし、パージする必要があります。
統合監査に移行するように選択する場合、移行の完了後、このプロシージャを使用してDatabase Vault監査証跡レコードをアーカイブおよびパージします。統合監査がレコードの収集を開始すると、新しいレコードは、UNIFIED_AUDIT_TRAIL
、SYS.DV$CONFIGURATION_AUDIT
およびSYS.DV$ENFORCEMENT_AUDIT
データ・ディクショナリ・ビューの表示に利用できます。
SQL*PlusおよびOracle Data Pumpを使用すると、Oracle Database Vault監査証跡をアーカイブできます。
SYSDBA
管理権限を持つユーザーSYS
として、データベース・インスタンスにログインします。
sqlplus sys as sysdba
Enter password: password
アーカイブを実行するユーザーに適切な権限があることを確認します。
次に例を示します。
GRANT CREATE ANY DIRECTORY, EXP_FULL_DATABASE, UNLIMITED TABLESPACE TO psmith;
DV_OWNER
またはDV_AUDIT_CLEANUP
ロールを付与されているユーザーとして接続します。
次に例を示します。
connect ebrown
Enter password: password
Oracle Database Vault監査証跡を、該当するスキーマの新しい表にアーカイブします。
次に例を示します。
CREATE TABLE psmith.dv_audit_trail nologging \ AS SELECT * FROM DVSYS.AUDIT_TRAIL$;
スキーマがレルムによってすでに保護されている場合、担当者またはエクスポート操作を実行するユーザーに、Database Vault環境でOracle Data Pumpを使用する適切な認可が付与されていることを確認します。
たとえば、ユーザーpsmith
がそのスキーマに対してData Pump操作を実行できるように、このユーザーを認可するとします。
EXEC DBMS_MACADM.AUTHORIZE_DATAPUMP_USER('PSMITH', 'PSMITH');
Data Pumpユーザーとして接続します。
次に例を示します。
CONNECT psmith
Enter password: password
Database Vault監査証跡用のディレクトリを作成します。
CREATE DIRECTORY dv_audit_dir AS 'dv_audit_trail_directory';
SQL*Plusを終了します。
EXIT
Data Pumpを使用して、Database Vault監査証跡を、作成したディレクトリ・オブジェクトにエクスポートします。
expdp psmith directory=dv_audit_dir tables=psmith.dv_audit_trail \ dumpfile=dv_audit.dmp log=dv_audit_exp.log
DV_OWNER
ロールを付与されているユーザーとしてSQL*Plusに接続します。
sqlplus ebrown
Enter password: password
このようにしなかった場合、Database Vault監査証跡を含むスキーマの周辺にレルムを作成します。
レルムを作成します。次に例を示します。
BEGIN DBMS_MACADM.CREATE_REALM( realm_name => 'DV Audit Trail Realm', description => 'Realm to protect the DV audit trail', enabled => DBMS_MACUTL.G_YES, audit_options => DBMS_MACUTL.G_REALM_AUDIT_FAIL + DBMS_MACUTL.G_REALM_AUDIT_SUCCESS, realm_type => 1); END; /
監査証跡を含むスキーマをこのレルムに追加します。次に例を示します。
BEGIN DBMS_MACADM.ADD_OBJECT_TO_REALM( realm_name => 'DV Audit Trail Realm', object_owner => 'psmith', object_name => '%', object_type => '%'); END; /
このレルムに対して信頼されるユーザーを認可します。
BEGIN DBMS_MACADM.ADD_AUTH_TO_REALM( realm_name => 'DV Audit Trail Realm', grantee => 'PSMITH', auth_options => DBMS_MACUTL.G_REALM_AUTH_OWNER); END; /
関連項目:
Database Vault環境でのユーザーへのOracle Data Pump権限の付与の詳細は、「Oracle Database VaultでのOracle Data Pumpの使用」を参照してください
CREATE DIRECTORY
文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください
Oracle Data Pumpのexpdpユーティリティの詳細は、『Oracle Databaseユーティリティ』を参照してください
DBMS_MACADM
のレルム関連プロシージャの詳細は、「Oracle Database VaultレルムのAPI」を参照してください
Oracle Database Vaultをインストールすると、データベース内に複数のAUDIT
設定が作成されます。
ただし、非統合監査環境でこれらの監査設定を実施にするには、このデータベースで監査を有効にする必要があります。監査が有効かどうかは、SHOW PARAMETER
コマンドを使用して、AUDIT_TRAIL
初期化パラメータの値を検索することで確認できます。デフォルトでは、監査はOracle Databaseで有効になっています。
表A-2に、Oracle Database Vaultによりデータベースに追加されるAUDIT
の設定を示します。
表A-2 Oracle Database VaultによりOracle Databaseに追加される監査ポリシーの設定
監査設定タイプ | 監査対象文(特に断りのない場合はBY ACCESSかつ成功時または失敗時) |
---|---|
システム監査設定/システム権限の使用 |
|
システム監査設定/オブジェクト管理 |
|
システム監査設定/割込みコマンド |
|
システム監査設定/管理コマンド |
|
システム監査設定/監査コマンド |
|
システム監査設定/アクセス制御 |
|
これらのアカウントの詳細は、表12-2を参照してください。 また、 |
|
|
|
|
|