ALTER AUDIT POLICY ステートメント

ALTER AUDIT POLICY ステートメントは、現行サーバーの監査ポリシーの定義を変更します。

呼び出し

このステートメントは、アプリケーション・プログラムに組み込むか、あるいは対話式に発行することができます。 これは、DYNAMICRULES の実行動作がパッケージに効力を持つ場合にのみ、動的に準備できる実行可能ステートメントです (SQLSTATE 42509)。

許可

このステートメントの許可 ID が持つ特権には、SECADM 権限が含まれている必要があります。

構文

Read syntax diagramSkip visual syntax diagramALTER AUDIT POLICYpolicy-name1CATEGORIES,2ALLAUDITCHECKINGCONTEXTEXECUTEWITHOUT DATAWITH DATAOBJMAINTSECMAINTSYSADMINVALIDATESTATUSBOTHFAILURENONESUCCESSERROR TYPENORMALAUDIT
Notes:
  • 1 Each of the CATEGORIES and ERROR TYPE clauses can be specified at most once (SQLSTATE 42614).
  • 2 Each category can be specified at most once (SQLSTATE 42614), and no other category can be specified if ALL is specified (SQLSTATE 42601).

説明

ポリシー名
変更する監査ポリシーを指定します。 これは、1 部構成の名前です。 これは、SQL ID です (通常 ID または区切り ID)。 名前は、現行のサーバー上の既存の監査ポリシーを一意的に識別するものでなければなりません (SQLSTATE 42704)。
カテゴリー
新規の状況値が指定される 1 つ以上の監査カテゴリーのリスト。 ALL が指定されない場合、明示的に指定されないカテゴリーの STATUS は未変更のままとなります。
すべて
すべてのカテゴリーを同じ状況に設定します。 EXECUTE カテゴリーは WITHOUT DATA です。
AUDIT
監査設定が変更されるとき、または監査ログがアクセスされるときにレコードを生成する。
CHECKING
データベース・オブジェクトまたは関数へのアクセス試行またはその操作試行の許可検査中にレコードを生成します。
CONTEXT
データベースの操作が実行されるとき、操作コンテキストを表示するレコードを生成する。
EXECUTE
SQL ステートメントの実行を示すレコードを生成します。
WITHOUT DATA または WITH DATA
任意のホスト変数およびパラメーター・マーカーに指定される入力データ値を EXECUTE カテゴリーの一部としてログに記録するかどうかを指定します。
WITHOUT DATA
任意のホスト変数およびパラメーター・マーカーに指定される入力データ値は EXECUTE カテゴリーの一部としてログに記録されません。
WITH DATA
任意のホスト変数およびパラメーター・マーカーに指定される入力データ値は EXECUTE カテゴリーの一部としてログに記録されます。 すべての入力値がログに記録されるわけではありません。 特に、LOB、LONG、XML、および構造化タイプのパラメーターは NULL 値となります。 日付、時刻、およびタイム・スタンプの各フィールドは ISO 形式でログに記録されます。 入力データ値はログに記録される前にデータベース・コード・ページに変換されます。 コード・ページの変換に失敗してもエラーは戻されず、変換前のデータがログに記録されます。
OBJMAINT
データ・オブジェクトが作成またはドロップされたときにレコードを生成します。
SECMAINT
オブジェクト特権、データベース特権、または DBADM 権限が付与されたとき、または取り消されたときにレコードを生成します。 レコードは、データベース・マネージャー・セキュリティー構成パラメーター sysadm_groupsysctrl_group、または sysmaint_group が変更されたときにも生成されます。
SYSADMIN
SYSADM、SYSMAINT、または SYSCTRL 権限を必要とする操作が実行されるとき、 レコードを生成する。
VALIDATE
ユーザーが認証されたとき、またはユーザーに関連したシステム・セキュリティー情報が取得されたときにレコードを生成します。
状況
指定されたカテゴリーの状況を指定します。
BOTH
成功したイベントと失敗したイベントがどちらも監査されます。
FAILURE
失敗したイベントだけが監査されます。
成功
成功したイベントだけが監査されます。
NONE
このカテゴリーのイベントは監査されません。
ERROR TYPE
監査エラーを戻すか、無視するかを指定します。
NORMAL
監査によって生成されたエラーはすべて無視され、実行される操作に関連したエラーの SQLCODE だけがアプリケーションに戻されます。
AUDIT
監査機能自体で発生したエラーを含む、すべてのエラーがアプリケーションに戻されます。

ルール

  • AUDIT 排他 SQL ステートメントの後は、COMMIT または ROLLBACK ステートメントでなければなりません (SQLSTATE 5U021)。 AUDIT 排他 SQL ステートメントは次のとおりです。
    • AUDIT
    • CREATE AUDIT POLICY、ALTER AUDIT POLICY、または DROP (AUDIT POLICY)
    • ロールまたはトラステッド・コンテキストが監査ポリシーと関連付けられる場合は DROP (ROLE) または DROP (TRUSTED CONTEXT)
  • AUDIT 排他 SQL ステートメントをグローバル・トランザクション (例えば XA トランザクション) 内で発行することはできません (SQLSTATE 51041)。

  • データベース・パーティション全体を通じて、同時に実行できる非コミットの AUDIT 排他 SQL ステートメントは 1 つのみです。 非コミットの AUDIT 排他 SQL ステートメントが実行されている場合、後続の AUDIT 排他 SQL ステートメントは、現行の AUDIT 排他 SQL ステートメントがコミットまたはロールバックされるまで待機します。
  • 変更はシステム・カタログに書き込まれますが、コミットされるまでは有効になりません。 これは、ステートメントを発行する接続の場合でも当てはまります。
  • 変更される監査ポリシーが現在データベース・オブジェクトと関連付けられている場合、変更はそれによって影響を受けるアプリケーションの次の作業単位までは有効になりません。 例えば、監査ポリシーがデータベースで使用されている場合、現行の作業単位はその COMMIT または ROLLBACK ステートメントが完了するまではポリシーに対する変更を認識しません。

DBAUDPRF という名前の監査ポリシーの SECMAINT、CHECKING、および VALIDATE カテゴリーが成功と失敗の両方を監査するように変更します。
   ALTER AUDIT POLICY DBAUDPRF
     CATEGORIES SECMAINT STATUS BOTH,
                CHECKING STATUS BOTH,
                VALIDATE STATUS BOTH