説明
API Gateway の要求やエラーのログが収集されないと、異常な呼び出しの検知や事故調査が難しくなる可能性があります。CloudWatch ロググループを作るだけでは API Gateway のログは有効にならず、ステージ設定とログの書き込み権限も必要です。
アクセスログと実行ログは別の設定です。必要な要求識別子とエラー情報を収集しつつ、トークン、パスワード、機密性の高い要求本文を不要に記録しないよう管理してください。
想定される影響
- 認証失敗や異常な要求の発見が遅れる可能性があります。
- 要求の流れを再構成しにくくなり、事故対応に時間がかかるおそれがあります。
対処方法
ロググループの log_group_name、保持期間、アクセス権限を構成してください。API ステージで必要なアクセスログ・実行ログを有効にし、アクセスログの宛先 ARN と形式、必要なサービスの書き込み権限を設定してください。試験要求が実際に記録されることを確認し、機密情報の過剰な記録を避けてください。
例
ロググループ設定のみを示す抜粋です。kms_key_id を使用する実際のキー ARN に置き換え、CloudWatch Logs に必要なキー権限を用意してください。API ステージ設定は別途必要です。
変更前
yaml
- name: Setup CloudWatch log group
community.aws.cloudwatchlogs_log_group:
state: present
kms_key_id: arn:aws:kms:region:account-id:key/key-id
ロググループの作成に必要な名前がありません。このタスクで有効なロググループが作成されるとはいえません。
変更後
yaml
- name: Setup CloudWatch log group
community.aws.cloudwatchlogs_log_group:
state: present
log_group_name: test-log-group
kms_key_id: arn:aws:kms:region:account-id:key/key-id
ロググループ名を指定しています。作成するだけで API Gateway がここへログを送るわけではありません。