監査ポリシーの管理
以下のストアドプロシージャでは、監査ログ記録を使用する Amazon RDS for Db2 データベースの監査ポリシーを管理します。詳細については、「Db2 監査ログ記録」を参照してください。これらのプロシージャを実行する場合、マスターユーザーはまず rdsadmin
データベースに接続する必要があります。
rdsadmin.configure_db_audit
db_name
で指定された RDS for Db2 データベースの監査ポリシーを設定します。設定するポリシーが存在しない場合は、このストアドプロシージャを呼び出すとポリシーが作成されます。このポリシーが存在する場合、このストアドプロシージャを呼び出すと、指定したパラメータ値でポリシーが変更されます。
構文
db2 "call rdsadmin.configure_db_audit( '
db_name
', 'category
', 'category_setting
', '?')"
パラメータ
以下のパラメータは必須です。
db_name
-
db_name で指定された監査ポリシーを設定する RDS for Db2 データベースの DB 名。データ型は
varchar
です。 category
-
この監査ポリシーを設定するカテゴリの名前。データ型は
varchar
です。このパラメータには、次の値が有効です。ALL
–ALL
では、Amazon RDS にCONTEXT
、EXECUTE
、またはERROR
カテゴリは含まれません。AUDIT
CHECKING
CONTEXT
ERROR
EXECUTE
- このカテゴリは、データありまたはデータなしで設定できます。データありでは、ホスト変数とパラメータマーカーに指定された入力データ値もログに記録されます。デフォルトでは、データなしになっています。詳細については、category_setting
パラメータの説明と「例」を参照してください。OBJMAINT
SECMAINT
SYSADMIN
VALIDATE
これらのコンポーネントの詳細については、IBM Db2 のドキュメント
を参照してください。 category_setting
-
指定された監査カテゴリの設定。データ型は
varchar
です。次の表は、各カテゴリの有効なカテゴリ設定値を示しています。
カテゴリ 有効なカテゴリ設定 ALL
AUDIT
CHECKING
CONTEXT
OBJMAINT
SECMAINT
SYSADMIN
VALIDATE
BOTH|FAILURE|SUCCESS|NONE
ERROR
AUDIT|NORMAL
。デフォルト値はNORMAL
です。EXECUTE
BOTH,WITH|BOTH,WITHOUT|FAILURE,WITH|FAILURE,WITHOUT|SUCCESS,WITH|SUCCESS,WITHOUT|NONE
使用に関する注意事項
rdsadmin.configure_db_audit
を呼び出す前に、監査ポリシーの設定対象となるデータベースを持つ RDS for Db2 DB インスタンスが、DB2_AUDIT
オプションのあるオプショングループに関連付けられていることを確認してください。詳細については、「Db2 監査ログのセットアップ」を参照してください。
監査ポリシーを設定したら、「監査設定を確認する」の手順に従ってデータベースの監査設定のステータスを確認できます。
category
パラメータに ALL
を指定しても CONTEXT
、EXECUTE
、ERROR
カテゴリは含まれません。これらのカテゴリを監査ポリシーに追加するには、追加するカテゴリごとに個別に rdsadmin.configure_db_audit
を呼び出します。詳細については、「例」を参照してください。
例
以下の例では、TESTDB
という名前のデータベースの監査ポリシーを作成または変更します。例 1~5 では、ERROR
カテゴリが以前に設定されていない場合、このカテゴリは NORMAL
(デフォルト) に設定されます。その設定を AUDIT
に変更するには、「Example 6: Specifying the ERROR category」に従います。
例 1: ALL
カテゴリを指定する
db2 "call rdsadmin.configure_db_audit('TESTDB', 'ALL', 'BOTH', ?)"
この例では、呼び出しで監査ポリシーの AUDIT
、CHECKING
、OBJMAINT
、SECMAINT
、SYSADMIN
、VALIDATE
カテゴリを設定します。BOTH
を指定すると、成功したイベントと失敗したイベントの両方に対してこの各カテゴリについての監査が行われます。
例 2: データを使用して EXECUTE
カテゴリを指定する
db2 "call rdsadmin.configure_db_audit('TESTDB', 'EXECUTE', 'SUCCESS,WITH', ?)"
この例では、呼び出しで監査ポリシーの EXECUTE
カテゴリを設定します。SUCCESS,WITH
を指定すると、このカテゴリのログには成功したイベントのみが含まれ、ホスト変数とパラメータマーカーに対して指定された入力データ値が含まれます。
例 3: データなしで EXECUTE
カテゴリを指定する
db2 "call rdsadmin.configure_db_audit('TESTDB', 'EXECUTE', 'FAILURE,WITHOUT', ?)"
この例では、呼び出しで監査ポリシーの EXECUTE
カテゴリを設定します。FAILURE,WITHOUT
を指定すると、このカテゴリのログには失敗したイベントのみが含まれ、ホスト変数とパラメータマーカーに対して指定された入力データ値は含まれません。
例 4: ステータスイベントなしで EXECUTE
カテゴリを指定する
db2 "call rdsadmin.configure_db_audit('TESTDB', 'EXECUTE', 'NONE', ?)"
この例では、呼び出しで監査ポリシーの EXECUTE
カテゴリを設定します。NONE
を指定すると、このカテゴリのイベントは監査されません。
例 5: OBJMAINT
カテゴリを指定する
db2 "call rdsadmin.configure_db_audit('TESTDB', 'OBJMAINT', 'NONE', ?)"
この例では、呼び出しで監査ポリシーの OBJMAINT
カテゴリを設定します。NONE
を指定すると、このカテゴリのイベントは監査されません。
例 6: ERROR
カテゴリを指定する
db2 "call rdsadmin.configure_db_audit('TESTDB', 'ERROR', 'AUDIT', ?)"
この例では、呼び出しで監査ポリシーの ERROR
カテゴリを設定します。AUDIT
を指定すると、監査ログ記録自体で発生するエラーを含むすべてのエラーがログにキャプチャされます。デフォルトのエラータイプは NORMAL
です。NORMAL
では、監査によって生成されたエラーは無視され、実行中のオペレーションに関連付けられたエラーの SQLCODE
のみがキャプチャされます。
rdsadmin.disable_db_audit
db_name
で指定された RDS for Db2 データベースの監査ログ記録を停止し、そのデータベースに対して設定された監査ポリシーを削除します。
注記
このストアドプロシージャは、rdsadmin.configure_db_audit の呼び出しによって設定された監査ポリシーのみを削除します。
構文
db2 "call rdsadmin.disable_db_audit('
db_name
')"
パラメータ
以下のパラメータは必須です。
db_name
-
監査ログ記録を無効にする RDS for Db2 データベースの DB 名。データ型は
varchar
です。
使用に関する注意事項
rdsadmin.disable_db_audit
を呼び出しても、RDS for Db2 DB インスタンスの監査ログ記録は無効になりません。DB インスタンスレベルで監査ログ記録を無効にするには、DB インスタンスからオプショングループを削除します。詳細については、「Db2 監査ログ記録の無効化」を参照してください。
例
次の例では、TESTDB
という名前のデータベースの監査ログ記録を無効にします。
db2 "call rdsadmin.disable_db_audit('TESTDB')"