長いですが題の通りです。
起きた事
AWSの設定を見ていたら、S3のACL(権限周りの設定ね)に見慣れない外部アカウントに対して権限がついている!これはセキュリティにやばいのでは(゚A゚;)ゴクリ
種明かし
CloudFrontでLogの出力先をS3にすると、自動でこうなります。なので安全です。大丈夫です。
CloudFrontのログはawslogsdelivery
という**AWSアカウント(!)**を経由して出力される仕組みになっています。で、このawslogsdelivery
のアカウントIDが c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0
なのです。
ディストリビューションを作成または更新してロギングを有効にすると、CloudFront はこれらのアクセス許可を使用してバケットの ACL を更新し、awslogsdelivery アカウントに FULL_CONTROL のアクセス許可を付与します。awslogsdelivery アカウントはログファイルをバケットに書き込みます。
やっかいなのが、この設定をCloudFrontでLogの設定をした時に自動でやってくれるため、S3の設定としては意識されない事です。よって、知らないうちに変なIDが追加されてる!という状況が発生します。怖いですね。
c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0
というIDを見たら、
🤔「あ、これは awslogsdelivery
のアカウントIDだな」
と思い出してくださいね(無理でしょ)