29 監査ポリシーのプロビジョニング

Oracle Databaseには、アクティビティを監査するための様々な方法が用意されています。

29.1 監査の開始

効果的な監査では、監査ポリシーを選択的に限定して使用する必要があります。これにより、不要な監査レコードが生成されずに、生成される監査レコードがフォレンジック分析およびコンプライアンスをサポートするために必要なものだけに徹底されます。

監査する最も一般的なアクティビティには、次のものが含まれますが、これらに限定されません

  • 失敗したログイン
  • アプリケーションまたは監視ツールの外部からのログイン
  • データ定義言語 - データベース・オブジェクトの作成、削除または変更
  • データ制御言語 - 特にユーザーの作成、ユーザーの変更、権限およびロール付与
  • Oracle Data Pump Importの操作
  • Oracle Database Vaultアクティビティまたはルール違反
  • SYSDBAまたはデータベース管理者のアクティビティ

統合監査を使用したOracle Databaseでの監査アクティビティを開始するための上位3つのヒントは次のとおりです:

  1. Oracleデータベースで常に有効である必須監査構成は複製しないでください。
  2. Oracle Database、Oracle Data SafeまたはOracle Audit Vault and Database Firewall (AVDF)で提供される事前定義の統合監査ポリシーを使用してください。
  3. 特殊なニーズに応じてカスタム監査ポリシー(統合監査またはファイングレイン)を作成してください。

統合監査ポリシーを条件付きで微調整し、特定のユーザーに適用することで、監査量を削減できます。次のようなユースケースに条件付き有効化機能を使用できます:

  • 信頼できるアプリケーション・パスの外部の機密データへのアクセスを監視して、重要なアクティビティにのみ焦点を当てます。
  • 通常、信頼できるアプリケーション・パスの外部のデータを問い合せるためのアクセス権を持つアドホック・ユーザーまたはパワー・ユーザーのアクティビティを監視します。

関連トピック

29.2 監査ポリシーについて

監査ポリシーは、データベースにおけるユーザー動作の特定の部分を監査できる監査設定の名前付きグループです。

次のような幅広いアクティビティを監視する監査ポリシーを作成できます:

  • ユーザー・アカウント(SYSDBA管理権限でログインする管理ユーザーを含む)、ロールおよび権限

  • 表の削除やプロシージャの実行などのオブジェクト・アクション

  • アプリケーション・コンテキスト値

  • Oracle Database Real Application Security、Oracle Recovery Manager、Oracle Data Pumpなど、他のOracle Database製品からのアクティビティ。

Oracle Databaseでは、監査ポリシーを作成するために次の3つの方法があります。

  • 事前定義済の統合監査ポリシーを使用して、最も一般的なセキュリティ関連アクティビティを監査します。事前定義の監査ポリシーを使用すると、Center for Internet Securityの推奨事項やセキュリティ技術導入ガイドの標準など、特定の業界基準に従うことができます。事前定義のポリシーは、失敗したログインなどの一般的な監査タスクや、Oracle Database Real Application SecurityやOracle Database Vaultなどの他のOracle製品にも使用できます。ほとんどの監査ニーズには事前定義の監査ポリシーで十分ですが、そうでない場合は、カスタム監査ポリシーまたはファイングレイン監査ポリシーを作成できます。
  • より特殊なアクティビティには、カスタム統合監査ポリシーを作成します。カスタム統合監査ポリシーを使用すると、ロール使用の監査や、表などのオブジェクトに対して実行されたアクションなどの幅広いアクティビティを監査できます。CREATE AUDIT POLICY文を使用して統合監査ポリシーを作成し、AUDIT文を使用して有効にします。CREATE AUDIT POLICY構文は、たとえば、条件を組み込んだり、アプリケーション・コンテキスト値を監査するのに十分な柔軟性があります。
  • より詳細な監査ニーズには、ファイングレイン監査ポリシーを作成します。 ファイングレイン監査ポリシーは統合監査ポリシーではありません。DBMS_FGA PL/SQLパッケージを使用して、ファイングレイン監査ポリシーを作成します。ファイングレイン監査ポリシーを使用すると、条件およびイベント・ハンドラを含めることができます。たとえば、ユーザーが監査ポリシーに違反した場合、管理者にアラートを送信できます。ファイングレイン監査を使用して、特定の列の値に基づいて表の特定の行を監査することもできます。

29.3 強制的に監査されるアクティビティ

セキュリティ・センシティブな特定のデータベース・アクティビティは常に監査され、このような監査構成は無効化できません。

常に監査されるアクティビティには、以下が含まれますが、これらに限定されません:

  • データベースが停止しているときのSYSDBASYSBACKUPSYSKMなどの管理ユーザーのアクティビティは常に監査されます。
  • UNIFIED_AUDIT_TRAILまたはAUDSYSスキーマ内の基礎となるディクショナリ表に対するDDLまたはDMLの試行は、常に監査されます。これらの操作は設計上は許可されていません。統合監査証跡は、AUDSYSスキーマ内の読取り専用表にあります。

強制的に監査されるアクティビティには、UNIFIED_AUDIT_TRAILデータ・ディクショナリ・ビューのUNIFIED_AUDIT_POLICIES列内にORA$MANDATORYという名前の監査ポリシーがあります。強制的に監査されたアクティビティを追跡する統合監査ポリシーが他にもある場合は、ORA$MANDATORYが常に最初にこの列に示されます。SYSTEM_PRIVILEGE_USED列は、アクティビティに使用された管理権限のタイプを示します。

Oracle Databaseでは、次のアクティビティが自動的に監査されます:

非監査関連アクティビティ

  • SQLファイアウォールの管理アクション
  • ORADEBUGユーティリティ

監査関連アクティビティ

  • CREATE AUDIT POLICY

  • ALTER AUDIT POLICY

  • DROP AUDIT POLICY

  • AUDIT

  • NOAUDIT

  • DBMS_FGA PL/SQLパッケージのEXECUTE

  • DBMS_AUDIT_MGMT PL/SQLパッケージのEXECUTE

  • AUDSYS監査証跡表でのALTER TABLEの試行(この表は監査できません)

  • 管理ユーザーSYSSYSDBASYSOPERSYSASMSYSBACKUPSYSDGおよびSYSKMによるトップ・レベルの文(データベースがオープンするまで)。

  • SYS.AUD$およびSYS.FGA_LOG$ディクショナリ表に対してユーザーが発行したすべてのDML文

  • 統合監査内部表のデータまたはメタデータの変更。この表に対するSELECT文はデフォルトで、または強制的には監査されません。

  • Oracle Database Vaultに対して行われるすべての構成変更

Oracleオプティマイザ・ディクショナリ表での機密列に対して強制的に監査されるアクセス

DBMS_STATSパッケージによるこれらの表列への内部アクセスでは、必須の監査レコードは生成されないということに注意してください。事前定義されたORA$DICTIONARY_SENS_COL_ACCESS監査ポリシーを使用して、これらの表を監査できます。オプティマイザ・ディクショナリ表を次に示します。

オプティマイザ・ディクショナリ表
SYS.HIST_HEAD$ minimummaximumlowvalhival
SYS.HISTGRM$ endpointepvalue_raw
SYS.WRI$_OPSTAT_HISTGRM_HISTORY endpointepvalue_raw
SYS.WRI$_OPTSTAT_HISTHEAD_HISTORY minimummaximumlowvalhival

ブロックチェーンおよび不変表上で強制的に監査される操作

  • CREATE TABLE

  • DROP TABLE

  • 失敗したALTER TABLE操作

  • 失敗したDELETE操作

  • 失敗したFLASHBACK TABLE操作

  • 失敗したRENAME操作

  • 失敗したTRUNCATE TABLE操作

  • 失敗したUPDATE操作

29.4 事前定義の統合監査ポリシーを使用したアクティビティの監査

Oracle Databaseには、よく使用されるセキュリティ関連の監査設定を対象とする、事前定義の統合監査ポリシーがあります。

29.4.1 事前定義の統合監査ポリシーを使用したアクティビティの監査について

Oracle Databaseには、ほとんどの監査ニーズに対応する一連の事前定義の統合監査ポリシーがあります。

これらの監査ポリシーでは、セキュリティ・インターネット実装ガイドやCenter for Internet Securityの推奨事項によるログイン障害、セキュア・オプションおよび要件の取得など、一般的なシナリオに対処します。

データベース内でデフォルトで有効になっている特定の事前定義済の監査ポリシーが表示される場合があります。有効になっている監査ポリシーのリストを表示するには、AUDIT_UNIFIED_ENABLED_POLICIESデータ・ディクショナリ・ビューを問い合せます。事前定義済の監査ポリシーを有効にするには、AUDIT PL/SQL文を使用します。

Oracle提供の事前定義の統合監査ポリシーの最新リストを検索するには、次のようにAUDIT_UNIFIED_POLICIESデータ・ディクショナリ・ビューを問い合せます:

SELECT DISTINCT POLICY_NAME FROM AUDIT_UNIFIED_POLICIES WHERE ORACLE_SUPPLIED = 'YES';

Oracle Data SafeまたはOracle Audit Vault and Database Firewall (AVDF)を使用してエンタープライズ全体のデータベース・アクティビティを監視している場合、これらの製品には、Oracle Databaseで提供される監査ポリシーに加えて、多数の事前定義済の監査ポリシーも用意されています。これらのポリシーは、1回のクリックでプロビジョニングできます。

29.4.2 セキュア・オプションの事前定義の統合監査ポリシー

ORA_SECURECONFIG統合監査ポリシーには、Oracle Databaseセキュリティのベスト・プラクティスを使用した監査オプションが用意されています。

新規データベースの場合、このポリシーは、完全な統合監査モードと混合モードの両方の監査環境で、デフォルトで有効です。このポリシーは、旧バージョンからアップグレードされたデータベースに対して有効になりませんが、以前のリリースから新規データベースを作成し、そのデータベースを最新リリースにアップグレードした場合はこの限りではありません。

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

次の文は、ORA_SECURECONFIG統合監査ポリシー定義を示しています。

PRIVILEGES ALTER ANY TABLE, CREATE ANY TABLE, DROP ANY TABLE,
            CREATE ANY PROCEDURE, DROP ANY PROCEDURE, ALTER ANY PROCEDURE,
            GRANT ANY PRIVILEGE, GRANT ANY OBJECT PRIVILEGE, GRANT ANY ROLE,
            AUDIT SYSTEM, CREATE EXTERNAL JOB, CREATE ANY JOB,
            CREATE ANY LIBRARY,
            EXEMPT ACCESS POLICY,
            CREATE USER, DROP USER,
            ALTER DATABASE, ALTER SYSTEM,
            CREATE PUBLIC SYNONYM, DROP PUBLIC SYNONYM,
            CREATE SQL TRANSLATION PROFILE, CREATE ANY SQL TRANSLATION
PROFILE,
            DROP ANY SQL TRANSLATION PROFILE, ALTER ANY SQL TRANSLATION
PROFILE,
            TRANSLATE ANY SQL,
            EXEMPT REDACTION POLICY,
            PURGE DBA_RECYCLEBIN, LOGMINING,
            ADMINISTER KEY MANAGEMENT, BECOME USER,
            ADMINISTER FINE GRAINED AUDIT POLICY,
            ADMINISTER REDACTION POLICY,
            ADMINISTER ROW LEVEL SECURITY POLICY,
            GRANT ANY SCHEMA PRIVILEGE,
            CREATE ANY DOMAIN, ALTER ANY DOMAIN,
            DROP ANY DOMAIN,
            CREATE ANY MLE, ALTER ANY MLE, DROP ANY MLE,
            ADMINISTER SQL FIREWALL
 ACTIONS ALTER USER, CREATE ROLE, ALTER ROLE, DROP ROLE,
            SET ROLE, CREATE PROFILE, ALTER PROFILE,
            DROP PROFILE, CREATE DATABASE LINK,
            ALTER DATABASE LINK, DROP DATABASE LINK,
            CREATE DIRECTORY, DROP DIRECTORY,
            CREATE PLUGGABLE DATABASE,
            DROP PLUGGABLE DATABASE,
            ALTER PLUGGABLE DATABASE,
            ALTER DATABASE DICTIONARY,
            EXECUTE ON REMOTE_SCHEDULER_AGENT.ADD_AGENT_CERTIFICATE;
ORA_SECURECONFIG監査ポリシーを有効にするには、次を実行します:
AUDIT POLICY ORA_SECURECONFIG;

29.4.3 Oracle Databaseパラメータ変更の事前定義の統合監査ポリシー

ORA_DATABASE_PARAMETERポリシーでは、一般的に使用されるOracle Databaseのパラメータの変更コマンドを監査します。

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

次の文は、ORA_DATABASE_PARAMETER統合監査ポリシー定義を示しています。デフォルトでは、このポリシーは有効になっていません。

ACTIONS ALTER DATABASE, ALTER SYSTEM, CREATE SPFILE;
ORA_DATABASE_PARAMETERを有効にするには、次のコマンドを実行します:
AUDIT POLICY ORA_DATABASE_PARAMETER;

29.4.4 ユーザー・アカウントおよび権限管理の事前定義の統合監査ポリシー

ORA_ACCOUNT_MGMTポリシーでは、よく使用されるユーザー・アカウントおよび権限の設定を監査します。

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

次の文は、ORA_ACCOUNT_MGMT統合監査ポリシー定義を示しています。デフォルトでは、このポリシーは有効になっていません。

ACTIONS CREATE USER, ALTER USER, DROP USER, CREATE ROLE, DROP ROLE,
  ALTER ROLE, SET ROLE, GRANT, REVOKE;
ORA_ACCOUNT_MGMTを有効にするには、次のコマンドを実行します:
AUDIT POLICY ORA_ACCOUNT_MGMT;

29.4.5 Center for Internet Securityで推奨される事前定義の統合監査ポリシー

ORA_CIS_RECOMMENDATIONSポリシーは、Center for Internet Security (CIS)で推奨される監査を実行します。

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

次の文は、ORA_CIS_RECOMMENDATIONS統合監査ポリシー定義を示しています。デフォルトでは、このポリシーは有効になっていません。

PRIVILEGES SELECT ANY DICTIONARY, ALTER SYSTEM
ACTIONS CREATE USER, ALTER USER, DROP USER,
        CREATE ROLE, DROP ROLE, ALTER ROLE,
        GRANT, REVOKE, CREATE DATABASE LINK,
        ALTER DATABASE LINK, DROP DATABASE LINK,
        CREATE PROFILE, ALTER PROFILE, DROP PROFILE,
        CREATE SYNONYM, DROP SYNONYM,
        CREATE PROCEDURE, DROP PROCEDURE,
        ALTER PROCEDURE, ALTER SYNONYM, CREATE FUNCTION,
        CREATE PACKAGE, CREATE PACKAGE BODY,
        ALTER FUNCTION, ALTER PACKAGE, ALTER SYSTEM,
        ALTER PACKAGE BODY, DROP FUNCTION,
        DROP PACKAGE, DROP PACKAGE BODY,
        CREATE TRIGGER, ALTER TRIGGER,
        DROP TRIGGER;
ORA_CIS_RECOMMENDATIONSを有効にするには、次のコマンドを実行します:
AUDIT POLICY ORA_CIS_RECOMMENDATIONS;

29.4.6 セキュリティ技術導入ガイドの事前定義された統合監査ポリシー

事前定義された統合監査ポリシーを使用して、セキュリティ技術導入ガイド(STIG)の監査要件を実装できます。

29.4.6.1 STIG推奨の事前定義の統合監査ポリシー

ORA_STIG_RECOMMENDATIONSポリシーは、セキュリティ技術導入ガイド(STIG)で推奨される監査を実行します。

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

次の文は、ORA_STIG_RECOMMENDATIONS統合監査ポリシー定義を示しています。デフォルトでは、このポリシーは有効になっていません。

PRIVILEGES ALTER SESSION
ACTIONS CREATE FUNCTION, ALTER FUNCTION, DROP FUNCTION,
	CREATE PACKAGE, ALTER PACKAGE, DROP PACKAGE,
	CREATE PROCEDURE, ALTER PROCEDURE, DROP PROCEDURE,
	CREATE TRIGGER, ALTER TRIGGER, DROP TRIGGER,
	CREATE PACKAGE BODY, ALTER PACKAGE BODY,
	DROP PACKAGE BODY,
	CREATE TYPE, ALTER TYPE, DROP TYPE,
	CREATE TYPE BODY, ALTER TYPE BODY, DROP TYPE BODY,
	CREATE LIBRARY, ALTER LIBRARY, DROP LIBRARY,
	CREATE JAVA, ALTER JAVA, DROP JAVA,
	CREATE OPERATOR, ALTER OPERATOR, DROP OPERATOR,
	CREATE TABLE, ALTER TABLE, DROP TABLE,
	CREATE VIEW, ALTER VIEW, DROP VIEW,
	CREATE MATERIALIZED VIEW, ALTER MATERIALIZED VIEW,
	DROP MATERIALIZED VIEW,
	CREATE ASSEMBLY, ALTER ASSEMBLY, DROP ASSEMBLY,
	CREATE SYNONYM, ALTER SYNONYM, DROP SYNONYM,
	CREATE USER, ALTER USER, DROP USER,
	GRANT, REVOKE,
	CREATE ROLE, ALTER ROLE, DROP ROLE, SET ROLE,
	CREATE PROFILE, ALTER PROFILE, DROP PROFILE,
	CREATE LOCKDOWN PROFILE, ALTER LOCKDOWN PROFILE,
	DROP LOCKDOWN PROFILE,
	ALTER SYSTEM, ALTER DATABASE, ALTER PLUGGABLE DATABASE,
	CREATE SPFILE, ALTER DATABASE DICTIONARY,
	ADMINISTER KEY MANAGEMENT,
	EXECUTE ON DBMS_JOB, EXECUTE ON DBMS_RLS,
	EXECUTE ON DBMS_REDACT, EXECUTE ON DBMS_TSDP_MANAGE,
	EXECUTE ON DBMS_TSDP_PROTECT,
	EXECUTE ON DBMS_NETWORK_ACL_ADMIN,
	EXECUTE ON DBMS_SCHEDULER
ACTIONS COMPONENT = OLS ALL';

STIGコンプライアンスの場合、すべてのユーザーに対してORA_STIG_RECOMMENDATIONS統合監査ポリシーを有効にします。

AUDIT POLICY ORA_STIG_RECOMMENDATIONS;
29.4.6.2 すべてのトップ・レベル・アクションの事前定義の統合監査ポリシー

ORA_ALL_TOPLEVEL_ACTIONSポリシーは、権限を持つユーザーのすべてのトップ・レベル・アクションの監査を実行します。

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

次の文は、ORA_ALL_TOPLEVEL_ACTIONS統合監査ポリシー定義を示しています。デフォルトでは、このポリシーは有効になっていません。

ACTIONS ALL ONLY TOPLEVEL;

STIGコンプライアンスの場合、すべてのOracle定義およびサイト固有の特権ユーザーに対してORA_ALL_TOPLEVEL_ACTIONS統合監査ポリシーを有効にします。たとえば、次の文は、Oracle定義の特権ユーザーSYSとサイト定義の特権ユーザーSITEADMINを監査します。

AUDIT POLICY ORA_ALL_TOPLEVEL_ACTIONS BY SYS, SITEADMIN;
29.4.6.3 ログオンおよびログアウトの事前定義済の統合監査ポリシー

ORA_LOGIN_LOGOUTポリシー(旧称ORA_LOGON_FAILURES)は、ログオンおよびログオフ操作を追跡します。

このポリシーは、Center for Internet Security (CIS)と技術導入のセキュリティ・ガイド(STIG)の両方の要件に必要です。CISおよびSTIGコンプライアンスの場合、ORA_LOGIN_LOGOUT統合監査ポリシーがすべてのユーザーに対して有効になっていることを確認する必要があります。

新しいデータベースの場合、このポリシーはデフォルトで有効になっています。このポリシーは、以前のバージョンからアップグレードされたデータベースでは有効になっていません。なお、LOGON文の統合監査ポリシーを構成した場合は、直接ログインおよびALTER SESSION文とSET CONTAINER文の両方について、監査レコードが生成されます。

次の文は、ORA_LOGIN_LOGOUT統合監査ポリシー定義を示しています。

ACTIONS LOGON, LOGOFF;

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

AUDIT POLICY ORA_LOGIN_LOGOUT WHENEVER NOT SUCCESSFUL;

29.4.7 ORA_DICTIONARY機密列問合せの事前定義済統合監査ポリシー

ORA$DICTIONARY_SENS_COL_ACCESS事前定義監査ポリシーは、Oracle Optimizerディクショナリ表の機密列を監査します。

この事前定義済ポリシーは、Oracle Optimizerディクショナリ表の機密列へのアクセスを監視および監査します。有効にすると、このポリシーでは、Oracleオプティマイザ・ディクショナリ表の機密列がアクセスされるたびに監査レコードが書き込まれます。無効にすると、このポリシーでは、これらの表へのアクセスは監査されません。これらの表が頻繁にアクセスされると、監査アクションによって作成される監査レコードが多くなりすぎ、パフォーマンスの問題が発生します。

次の表があります。

オプティマイザ・ディクショナリ表
SYS.HIST_HEAD$ minimummaximumlowvalhival
SYS.HISTGRM$ endpointepvalue_raw
SYS.WRI$_OPTSTAT_HISTHEAD_HISTORY minimummaximumlowvalhival
SYS.WRI$_OPSTAT_HISTGRM_HISTORY endpointepvalue_raw

このポリシーは削除できません。有効化または無効化のみ可能です。このオプションはデフォルトでは有効になっています。

29.4.8 Oracle Database Real Application Securityの事前定義の監査ポリシー

事前定義の統合監査ポリシーをOracle Database Real Application Securityのイベントに使用できます。

29.4.8.1 システム管理者操作の事前定義の統合監査ポリシー

ORA_RAS_POLICY_MGMTの事前定義の統合監査ポリシーでは、アプリケーション・ユーザー、ロールおよびポリシーのOracle Real Application Securityのすべて管理アクションのポリシーを監査します。

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

次の文は、ORA_RAS_POLICY_MGMT監査ポリシーを示しています。デフォルトでは、このポリシーは有効になっていません。

ACTIONS COMPONENT=XS
  CREATE USER, UPDATE USER, DELETE USER, 
  CREATE ROLE, UPDATE ROLE, DELETE ROLE, GRANT ROLE, REVOKE ROLE, 
  ADD PROXY, REMOVE PROXY, 
  SET USER PASSWORD, SET USER VERIFIER, SET USER PROFILE,
  CREATE ROLESET, UPDATE ROLESET, DELETE ROLESET,
  CREATE SECURITY CLASS, UPDATE SECURITY CLASS, DELETE SECURITY CLASS, 
  CREATE NAMESPACE TEMPLATE, UPDATE NAMESPACE TEMPLATE, DELETE NAMESPACE TEMPLATE,
  CREATE ACL, UPDATE ACL, DELETE ACL, 
  CREATE DATA SECURITY, UPDATE DATA SECURITY, DELETE DATA SECURITY, 
  ENABLE DATA SECURITY, DISABLE DATA SECURITY, 
  ADD GLOBAL CALLBACK, DELETE GLOBAL CALLBACK, ENABLE GLOBAL CALLBACK;

STIGコンプライアンスの場合、すべてのユーザーに対してORA_RAS_POLICY_MGMT統合監査ポリシーを有効にします。

AUDIT POLICY ORA_RAS_POLICY_MGMT;
29.4.8.2 セッション操作の事前定義の統合監査ポリシー

ORA_RAS_SESSION_MGMTの事前定義の統合監査ポリシーでは、Oracle Real Application Securityのすべてのランタイム・セッション・アクションおよびネームスペース・アクションのポリシーを監査します。

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

次の文は、ORA_RAS_SESSION_MGMTポリシーを示しています。デフォルトでは、このポリシーは有効になっていません。

CREATE AUDIT POLICY ORA_RAS_SESSION_MGMT
 ACTIONS COMPONENT=XS 
  CREATE SESSION, DESTROY SESSION, 
  ENABLE ROLE, DISABLE ROLE, 
  SET COOKIE, SET INACTIVE TIMEOUT, 
  SWITCH USER, ASSIGN USER,
  CREATE SESSION NAMESPACE, DELETE SESSION NAMESPACE,
  CREATE NAMESPACE ATTRIBUTE, GET NAMESPACE ATTRIBUTE, SET NAMESPACE ATTRIBUTE,
  DELETE NAMESPACE ATTRIBUTE;

STIGコンプライアンスの場合、失敗した操作に対してORA_RAS_SESSION_MGMTを有効にします。

AUDIT POLICY ORA_RAS_SESSION_MGMT WHENEVER NOT SUCCESSFUL;

29.4.9 DVSYSおよびLBACSYSスキーマに対するOracle Database Vaultの事前定義の統合監査ポリシー

事前定義のORA_DV_SCHEMA_CHANGES (旧名ORA_DV_AUDPOL)統合監査ポリシーは、Oracle Database VaultのDVSYSおよびLBACSYSの各スキーマ・オブジェクトを監査します。

ORA_DV_SCHEMA_CHANGESポリシーは、Oracle Database VaultのDVSYS (DVFを含む)スキーマ・オブジェクトと、Oracle Label SecurityのLBACSYSスキーマ・オブジェクトに対して実行されるすべてのアクションを監査します。DVFスキーマのF$*ファクタ・ファンクションに関するアクションは取得しません。デフォルトでは、このポリシーは有効です。

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

このポリシーの完全な定義を表示するには、policy_nameORA_DV_SCHEMA_CHANGESAUDIT_UNIFIED_POLICIESデータ・ディクショナリ・ビューを問い合せます。

29.4.10 デフォルト・レルムおよびコマンド・ルールに対するOracle Database Vaultの事前定義の統合監査ポリシー

事前定義の統合監査ポリシーORA_DV_DEFAULT_PROTECTION (以前はORA_DV_AUDPOL2と呼ばれていました)は、Oracle Database Vaultのデフォルト・レルムおよびコマンド・ルールを監査します。

ORA_DV_DEFAULT_PROTECTIONポリシーは、Oracle Database Vaultで提供されるデフォルトのレルムおよびコマンド・ルールの監査設定を構成します。デフォルトでは、このポリシーは有効です。

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

このポリシーの完全な定義を表示するには、policy_nameORA_DV_DEFAULT_PROTECTIONAUDIT_UNIFIED_POLICIESデータ・ディクショナリ・ビューを問い合せます。

29.4.11 LBACSYSオブジェクト用のOracle Label Securityの事前定義済統合監査ポリシー

ORA_OLS_SCHEMA_CHANGES事前定義の統合監査ポリシーは、Oracle Label Security LBACSYSユーザーが所有するオブジェクトを監査します。

Oracle Database Vaultが使用されていない場合は、この監査ポリシーを使用できます。ORA_DV_SCHEMA_CHANGES事前定義済統合監査ポリシーがすでに有効になっている場合、このポリシーを有効にする必要はありません。Oracle Database Vaultをアンインストールすると、ORA_DV_SCHEMA_CHANGESが削除されます。LBACSYSスキーマ・オブジェクトが引き続き監査されるように、ORA_DV_SCHEMA_CHANGESが有効になっている場合、Oracle Database Vaultのアンインストール中にORA_OLS_SCHEMA_CHANGESが有効になります。

ノート:

ユーザーSYSのみが、この事前定義のポリシーを変更または削除できます。

このポリシーの完全な定義を表示するには、policy_nameORA_OLS_SCHEMA_CHANGESAUDIT_UNIFIED_POLICIESデータ・ディクショナリ・ビューを問い合せます。

29.5 統合監査ポリシーをプロビジョニングするステップ

強制的に監査されるアクティビティおよびOracleデータベースでデフォルトで有効になっている事前定義の統合監査ポリシーとは別に、セキュリティおよびコンプライアンスのニーズに基づいて追加の統合監査ポリシーをプロビジョニングすることが必要になる場合があります。

29.5.1 最も一般的に使用されるセキュリティ関連アクティビティの監査

Oracle Databaseには、最も一般的なセキュリティ関連のアクティビティ用として選択できる一連の事前定義の統合監査ポリシーが用意されてます。

次のステップに従って、事前定義の統合監査ポリシーを有効にします:
  1. 事前定義の統合監査ポリシーのいずれかを選択します。次の問合せを実行して、これらのポリシーのリストを検索できます:
    SELECT DISTINCT POLICY_NAME FROM AUDIT_UNIFIED_POLICIES WHERE ORACLE_SUPPLIED = 'YES'; 
  2. AUDIT文を使用してポリシーを有効にし、必要に応じて1人以上のユーザーの監査設定を適用(または除外)します。
  3. UNIFIED_AUDIT_TRAILデータ・ディクショナリ・ビューを問い合せ、生成された監査レコードを検索します。
  4. 監査証跡の内容を定期的にアーカイブして削除します。

29.5.2 SQL文、権限およびその他の対象アクティビティの監査

カスタム監査ポリシーを作成して、特定のオブジェクトへのアクセス、アクションまたは権限の使用、またはOracle Label SecurityなどのOracle Databaseコンポーネントの使用を追跡できます。監査ボリュームを減らすためにこれらを条件付きで有効にできます。

次のステップに従って、カスタム統合監査ポリシーを作成して有効にします:
  1. ほとんどの場合は、CREATE AUDIT POLICY文を使用して監査ポリシーを作成します。アプリケーション・コンテキスト値を監査する必要がある場合は、AUDIT文を使用します。
  2. 監査ポリシーを作成する場合は、AUDIT文を使用して有効にし、オプションで、SYSDBA管理権限でログインする管理ユーザー(SYSなど)を含む、1人以上のユーザーに監査設定を適用(または除外)します。

    AUDITでは、アクションの成功または失敗(あるいは両方)時に監査レコードを作成することもできます。

  3. UNIFIED_AUDIT_TRAILビューを問い合せ、生成された監査レコードを検索します。
  4. 監査証跡の内容を定期的にアーカイブして削除します。

29.5.3 値ベースのファイングレイン監査アクティビティ

値ベースの監査を実行し、特定の列値に基づいて特定の行へのアクセスを監査する場合、またはOracleデータベース内のイベント・ハンドラと統合する場合は、ファイングレイン監査を使用します。

次のステップに従って、ファイングレイン監査ポリシーを作成して有効にします:
  1. ファイングレイン監査ポリシーを作成します。
  2. DBMS_FGA PL/SQLパッケージを使用して、ファイングレイン監査ポリシーを構成します。
  3. UNIFIED_AUDIT_TRAILまたはALL_AUDIT_POLICIESビューを問い合せ、生成された監査レコードを検索します。
  4. 監査証跡の内容を定期的にアーカイブして削除します。

29.6 すべてのPDBに共通する監査構成

共通監査構成は、すべてのPDBで表示でき、強制されます。

監査構成は、ローカルまたは共通のいずれかです。他のローカルまたは共通現象(ユーザーやロールなど)に適用されるすべてのスコープ指定ルールが、監査構成にも適用されます。

ノート:

監査初期化パラメータは、CDBレベルに存在し、各PDBには存在しません。

PDBでは、次の監査オプションがサポートされます。

  • オブジェクト監査

    オブジェクト監査とは、特定のオブジェクトに対する監査構成のことを指します。共通監査構成に含めることができるのは、共通オブジェクトのみです。ローカル監査構成には、共通オブジェクトを含めることはできません。

  • 監査ポリシー

    監査ポリシーは、ローカルまたは共通のいずれかです。

    • ローカル監査ポリシー

      ローカル監査ポリシーは、1つのPDBに適用されます。ローカル監査ポリシーは、このPDBのみのローカルおよび共通ユーザーに対して実行できます。ローカル監査ポリシーをすべてのコンテナにわたって実行しようとすると、エラーが発生します。

      いかなる場合でも、ローカル監査ポリシーの実行は、ローカル監査フレームワークの一部です。

    • 共通監査ポリシー

      共通監査ポリシーは、すべてのコンテナに対して適用されます。共通監査ポリシーを作成する場合は、名前の先頭にC##またはc##を付けます(たとえば、c##all_select_pol)。このポリシーには、アクション、システム権限、共通ロールおよび共通オブジェクトのみを含めることができます。共通監査ポリシーは、共通ユーザーに対してのみ適用できます。ローカル・ユーザーに対する共通監査ポリシーをすべてのコンテナにわたって実行しようとすると、エラーが発生します。

共通監査構成は、ルートのSYSスキーマに格納されています。ローカル監査構成は、適用対象のPDBのSYSスキーマに格納されています。

監査証跡は、関連CDBまたはPDBコンテナのSYSまたはAUDSYSスキーマに格納されています。オペレーティング・システムおよびPDBのXML監査証跡は、AUDIT_FILE_DEST (非推奨)初期化パラメータで指定されたディレクトリのサブディレクトリに格納されています。

29.7 一般的な監査データ・ディクショナリ・ビュー

Oracle Databaseには、統合監査で使用するための様々なタイプのデータ・ディクショナリ・ビューおよび動的ビューが用意されています。

表30-20に、すべてのタイプの監査に共通するビューを示します。

ヒント:

監査ポリシーに関するエラー情報を検索するには、トレース・ファイルを確認します。USER_DUMP_DEST初期化パラメータは、トレース・ファイルの位置を示します。

表29-1 一般的な監査データ・ディクショナリ・ビュー

ビュー 説明

AUDIT_UNIFIED_ENABLED_POLICIES

ポリシー内で監視されているユーザーのアクションの成功または失敗の監査など、監査ポリシーが有効になる条件について説明します

AUDIT_UNIFIED_POLICIES

監査ポリシーの監査対象となるアクションについて説明します

CDB_UNIFIED_AUDIT_TRAIL

UNIFIED_AUDIT_TRAILビューと同様、監査レコードを表示しますが、マルチテナント環境のすべてのPDBからの監査レコードを表示します。このビューは、CDBルートのみで使用可能で、そこから問い合せる必要があります。

UNIFIED_AUDIT_TRAIL

すべての監査レコードが表示されます。

V$OPTION

このビューのPARAMETER列は常にTRUEを返します。これは、統合監査が有効であることを示します。

V$XML_AUDIT_TRAIL

XML形式のファイルに書き込まれた標準監査、ファイングレイン監査、SYS監査および必須監査のレコードが表示されます。