監査ポリシーの管理 - Amazon Relational Database Service

監査ポリシーの管理

以下のストアドプロシージャでは、監査ログ記録を使用する 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 です。このパラメータには、次の値が有効です。

  • ALLALL では、Amazon RDS に CONTEXTEXECUTE、または 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 を指定しても CONTEXTEXECUTEERROR カテゴリは含まれません。これらのカテゴリを監査ポリシーに追加するには、追加するカテゴリごとに個別に 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', ?)"

この例では、呼び出しで監査ポリシーの AUDITCHECKINGOBJMAINTSECMAINTSYSADMINVALIDATE カテゴリを設定します。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')"