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

PolarDB:pgAudit

最終更新日:Nov 09, 2025

PolarDB for PostgreSQL (Oracle 互換) は、監査ログを生成するための pgAudit 拡張機能をサポートしています。これらのログは、多くの場合、政府、金融、または ISO 認証に必要です。監査ログを使用して、データベースのエラーの分析、ユーザーの動作の追跡、データ操作のモニターを行うことができます。

適用範囲

次のバージョンの PolarDB for PostgreSQL (Oracle 互換) がサポートされています:

  • Oracle 互換 2.0 (マイナーエンジンバージョン 2.0.14.5.1.0 以降)

  • Oracle 互換 1.0 (マイナーエンジンバージョン 2.0.11.9.25.0 以降)

説明

コンソールで、または SHOW polardb_version; 文を実行して、マイナーエンジンバージョンを表示できます。 クラスターがマイナーエンジンバージョンの要件を満たしていない場合は、マイナーエンジンバージョンをスペックアップできます。

注意事項

  • SQL エクスプローラー機能を使用して監査ログを表示できます。

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

使用ガイド

拡張機能のインストール

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 データベースにユーザーとテーブルを作成し、そのテーブルに対するすべての権限をそのユーザーに付与します。

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 の詳細については、「公式 pgAudit ドキュメント」をご参照ください。