説明
Cloud Storageの使用ログはバケットへのリクエストを記録し、ストレージログは保存容量の情報を提供します。必要なアクセス記録がないと、不審なリクエストやインシデントの経緯を調べにくくなります。
バケットのlogging設定はこれらのログを別のバケットに保存するもので、Cloud Audit Logsとは別です。Googleは、ほとんどのAPI操作の監査にCloud Audit Logsを推奨しています。使用ログは公開オブジェクトへのアクセス分析などに役立ちますが、配信の迅速性や完全性は保証されません。
想定される影響
- 必要なリクエストの記録がないと、不正アクセスの発見が遅れたり、調査資料が不足したりするおそれがあります。
- 配信の失敗に気付かないと、ログが正常に収集されていると誤認する可能性があります。
対処方法
監査目的に合わせてCloud Audit Logsを設定し、使用ログが必要な場合はlogging.logBucketに保存先バケットを指定してください。配信権限と保持期間を設定し、実際にログオブジェクトが届くことを確認してください。
例
accessLogsというログ用バケットを別途用意する抜粋です。元のバケットと同じ場所・組織に配置し、組織がない場合は同じプロジェクトを使ってください。cloud-storage-analytics@google.comグループに、そのバケットのroles/storage.objectCreator権限が必要です。
変更前
yaml
resources:
example:
type: gcp:storage:Bucket
properties:
location: US-CENTRAL1
変更後
yaml
resources:
example:
type: gcp:storage:Bucket
properties:
location: US-CENTRAL1
logging:
logBucket: ${accessLogs.name}
logObjectPrefix: some_obj_prefix
logBucketは保存先を、logObjectPrefixはログオブジェクトのプレフィックスを指定します。Cloud Audit Logsの設定や、すべてのリクエストの即時記録を保証する例ではありません。