RDS for PostgreSQL の CloudWatch Logsの設定について

このブログシリーズ 「クラウドセキュリティ 実践集」 では、一般的なセキュリティ課題を取り上げ、「なぜ危険なのか?」 というリスクの解説から、 「どうやって直すのか?」 という具体的な修復手順(コンソール、AWS CLI、Terraformなど)まで、分かりやすく解説します。
この記事では、RDS for PostgreSQL DB は CloudWatch Logs にログを発行する必要があることについて、リスクと対策を解説します。Amazon RDS for PostgreSQLのログをCloudWatch Logsに発行することで、データベースのセキュリティ監査、パフォーマンス監視、トラブルシューティングを効果的に実施できます。

問題の概要
Amazon RDS for PostgreSQLは、フルマネージドなリレーショナルデータベースサービスです。CloudWatch Logsへのログ発行機能を有効にすることで、データベースの動作状況、エラー、パフォーマンス、セキュリティに関する詳細な情報を一元的に収集・分析できます。
PostgreSQLで利用可能なログタイプ:
- iam-db-auth-error ログ: RDS PostgreSQLでIAM (AWS Identity and Access Management) データベース認証の使用時に発生する認証失敗のエラーログ
- postgresql.log: 一般的なデータベースログ(エラー、警告、通知、接続情報、SQLクエリ実行、パフォーマンス情報など)
- upgrade.log: メジャーバージョンアップグレード時のログ(アップグレードプロセスの詳細、エラー、警告など)
修復方法
前提条件
CloudWatch Logsへのログ発行を有効化する前に、以下を確認してください:
- RDSインスタンスに関連付けられたサービスロールがCloudWatch Logsへの書き込み権限を持っていること
- ログの保持期間とコストについて検討済みであること
AWSマネジメントコンソールでの修復手順
AWSのコンソールを使用して、RDS for PostgreSQLのCloudWatch Logsへのログ発行を有効化します。
- AWS管理コンソールにログインし、RDSコンソールに移動します
- 左側のナビゲーションペインから「データベース」を選択します
- CloudWatch Logsへのログ発行を有効にしたいPostgreSQLインスタンスを選択します

- 「変更」ボタンをクリックします
- 「ログのエクスポート」セクションまでスクロールします
- 「CloudWatch Logsに発行するログ」で以下を選択します:
- iam-db-auth-error ログ: 認証失敗のエラーログを発行
- PostgreSQL ログ: 一般的なデータベースログを発行
- アップグレードログ: メジャーバージョンアップグレード時のログを発行(必要に応じて)

- 「次へ」をクリックし、変更内容を確認します
- 「変更のスケジューリング」で適用タイミングを選択:
- すぐに適用: 即座に変更を適用(推奨)
- 次のメンテナンスウィンドウ中に適用: メンテナンスウィンドウで適用
- 「DBインスタンスの変更」をクリックして設定を保存します
- CloudWatchコンソールで、ロググループ
/aws/rds/instance/{db-instance-id}/postgresql
が作成されていることを確認します
Terraformでの修復手順
enabled_cloudwatch_logs_exports
の箇所で利用するログを選択すれば適用されます。
# RDS for PostgreSQL インスタンス
resource "aws_db_instance" "postgresql" {
>>>> Skip
# CloudWatch Logsへのログ発行(重要)
**enabled_cloudwatch_logs_exports = ["postgresql", "upgrade"]**
}
まとめ
RDS for PostgreSQLのCloudWatch Logsへのログ発行を有効にすることで、データベースのセキュリティ監査、パフォーマンス分析、トラブルシューティングが大幅に改善されます。
主なポイント:
- ログ未発行はサービス障害の長期化やセキュリティインシデントの発覚遅延を招く
- SOX法、PCI-DSS、HIPAA、GDPRなどのコンプライアンス要件を満たせず、多額の制裁金リスク
- PostgreSQLログとアップグレードログの両方を有効化することが重要
- 環境に応じた適切なログ保持期間の設定が必要
- パラメータグループで詳細なログ設定をカスタマイズ
特に本番環境では、パフォーマンスへの影響を最小化しつつ、必要な情報を確実に収集するバランスが重要です。
この問題の検出は弊社が提供するSecurifyのCSPM機能で簡単に検出及び管理する事が可能です。 運用が非常に楽に出来る製品になっていますので、ぜひ興味がある方はお問い合わせお待ちしております。 最後までお読みいただきありがとうございました。この記事が皆さんの役に立てば幸いです。