意図しないS3リージョンでの課金の対処方法

2024.04.08

困っていること

許可されていないリージョンの利用を確認したところ、 S3の「ストックホルム」リージョンで請求が発生していました。コストから原因を探っていくと、汎用バケットではなく、S3 Express One Zoneの「ディレクトリバケット」に関する料金のようでした。

しかし、ディレクトリバケットを作成した記憶もなくアクセス権限もありません。これはどういうことでしょうか。

どう対応すればいいの?

S3 ではリソースが存在しない場合でも、リクエストが発生した場合は、料金が発生する可能性があるようです。そのため、まずはリクエストが発生しているか確認します。

CloudTrailで「イベント履歴」を確認

S3 Express One Zoneに関する履歴の場合、CloudTrailのイベント履歴検索時には「イベントソース」に "s3express.amazonaws.com" と入力します。そうすると、対象のリージョンにするとディレクトリバケットに関する一覧が表示されます。(対象リージョンに変更するのをお忘れなく)

以下のように、access-analyzerが毎日リクエストを実行して、"ListDirectoryBuckets" を実行していることがわかります。

 

アナライザーの削除

リクエストが実行されていることが確認できたら、対象のリージョンにて、アナライザーを削除します。
こうすることで、ListDirectoryBuckets の実行を発生しないようにし、課金されないようにします。

終わりに

この内容は、S3 Express One Zoneという新しいストレージクラスに関する内容だったため、ブログにしてみました。

この記事がどなたかのお役に立てば幸いです。