すべてのプロダクト
Search
ドキュメントセンター

PolarDB:pgAudit

最終更新日:Sep 26, 2024

PolarDB for Oracle は、政府、財務、またはISOの認証に準拠するために必要な監査ログを生成できるpgAudit拡張機能をサポートしています。 監査ログは、クラスターの障害や操作を分析してデータクエリに関する情報を取得するのに役立ちます。

使用上の注意

  • 生成された監査ログを表示するには、SQL Explorer機能を有効にする必要があります。

  • pgAudit拡張機能は、既存の監査ログのみをフィルタリングします。

  • pgAudit拡張に関連するパラメーターを設定するには、特権アカウントが必要です。

pgAudit拡張機能を使用した監査操作

Install the extension

CREATE EXTENSION pgaudit;

読み取り操作の監査

次のステートメントを実行して、pgaudit_testdbという名前のデータベースに対するすべての読み取り操作を監査します。

ALTER DATABASE pgaudit_testdb SET pgaudit.log = 'READ';

上記のステートメントが実行されると、pgaudit_testdbデータベースに対するSELECT操作などのすべての読み取り操作が監査されます。 データベースに対するINSERTUPDATE操作などの書き込み操作は監査されません。

読み取りおよび書き込み操作の監査

次のステートメントを実行して、pgaudit_testdbデータベースのすべての読み取りと操作を監査します。

ALTER DATABASE pgaudit_testdb SET pgaudit.log = 'READ,WRITE';

上記のステートメントが実行されると、pgaudit_testdbデータベースに対するSELECTINSERTUPDATE操作などのすべての読み取りおよび書き込み操作が監査されます。

ログ監査の無効化

ALTER DATABASE pgaudit_testdb SET pgaudit.log = 'NONE';

指定されたオブジェクトに対する監査操作

次のステートメントを実行して、pgaudit_testdbデータベースのユーザーが実行した操作を監査し、test_auditという名前のテーブルを作成し、そのテーブルに対するすべての権限をユーザーに付与します。

CREATE USER audit_role;
ALTER DATABASE pgaudit_testdb SET pgaudit.role = 'audit_role';

CREATE TABLE test_audit (id INT);
GRANT ALL ON test_audit TO audit_role;

上記のステートメントが実行されると、pgaudit_testdbデータベースのtest_auditテーブルに対するすべての操作のみが監査されます。

拡張機能のアンインストール

DROP EXTENSION pgaudit;

参考資料

詳細については、「pgAuditドキュメント」をご参照ください。