《Oracle命令语法速查》【 AUDIT 】

監査の対象となる SQL文、オブジェクトを選択する


(SQL文)
AUDIT ┬ statement_opt  ────────────┬→
      │[ 監査対象の SQL 文を指定する        ]│
      ├ ALL  ─────────────────┤
      │[ 全ての SQL 文を監査対象とする      ]│
      ├ system_priv  ─────────────┤
      │[ 監査対象のシステム権限を指定する   ]│
      ├ ALL PRIVILEGES   ───────────┤
      │[ 全てのシステム権限を監査対象とする ]│
      └ ← , ─────────────────┘
→[ BY ┬┬ ユーザー名 ┬─────────────────────┬ ] ─ (*1) ;
       │└ ← , ───┘                                          │ 
       └┬ プロキシ名 ┬ [ ON BEHALF OF { ANY | ┬ ユーザー名 ┬ }┘
         └ ← , ───┘                        └ ← , ───┘
    [ 特定のユーザーを監査対象とする場合に指定 ]

(スキーマ·オブジェクト)
AUDIT ┬ ALTER  ─┬ ON ┬ [ スキーマ . ] オブジェクト名  ┬ (*1) ;
      ├ AUDIT  ─┤    ├ DIRECTORY ディレクトリ名 ───┤
      ├ COMMENT  ┤    └ DEFAULT                  ───┘
      ├ DELETE ─┤    [ 監査対象となるオブジェクトを指定する ]
      ├ EXECUTE  ┤
      ├ GRANT  ─┤
      ├ INDEX  ─┤
      ├ INSERT ─┤
      ├ LOCK   ─┤
      ├ READ   ─┤
      ├ RENAME ─┤
      ├ SELECT ─┤
      ├ UPDATE ─┤
      ├ ALL    ─┤
      └ ← , ──┘
      [ 監査対象となる操作を指定する ]
(*1)
→ [ BY { SESSION | ACCESS } ] [ WHENNEVER [ NOT ] SUCCESSFUL ] →
[ BY SESSION : セッション毎の同種の監査に対して1レコード作成する ]
[ BY ACCESS  : 監査される度に1レコード作成する                   ]
[ WHENEVER SUCCESSFUL : SQL 文が成功(失敗)した場合のみ監査を行う  ]