パブリックアクセスのブロック

S3 ブロックパブリックアクセス機能による Amazon S3 バケットへのアクセス制限

S3 ブロックパブリックアクセス (BPA) 機能を使うと、すべての Amazon S3 バケットへのパブリックアクセスをアカウントレベルバケットレベルでブロックできます。人為的ミスを避けるためアカウントレベルの BPA 有効化が新規アカウントのデフォルト設定です。また組織がオープンな S3 バケットを必要としない場合は、すべてのアカウントでアカウントレベルのブロックパブリックアクセスを有効にしてください。アカウントがオープンな S3 バケットを必要とする場合は、パブリックにする必要のないすべての S3 バケットがブロックされていることを確認してください。

S3 バケットからデータをパブリックに共有できるのは、BPA を解除した場合のみです (例: 静的ウェブサイトを S3 バケットで直接作成する場合など)。BPA はバケットポリシーよりも優先されます。

BPA の詳細は AWSブログ で確認できます。

BPA の解除を禁止したい場合は、サービスコントロールポリシー (SCP) を使用して解除を防ぐことができます。

多数のアカウントがある場合、AWS Security Hub の S3.1 コントロール でアカウントレベルの BPA が無効のアカウントを確認し、S3.8 コントロール でバケットレベルの BPA が無効の S3 バケットを確認できます。

Amazon Machine Image (AMI) と Amazon EBS スナップショットのパブリックアクセスをブロック

本当に有効なユースケースがある場合を除き、AMI のパブリックアクセスをブロック と、EBS スナップショットのパブリックアクセスをブロック をすることをお勧めします。

Block Public Access on AMIs and EBS Snapshots EC2 コンソールのダッシュボードから「データ保護とセキュリティ」で AMI と EBS のパブリックアクセスをブロックできます。

確認方法

主なリスクと軽減

  • [情報窃取] - ユーザーが Amazon S3 バケットを誤って設定し、パブリックアクセスを開放するリスクを軽減できます

評価のガイダンス

  • 組織内のすべてのアカウントにおいて、 Amazon S3 ブロックパブリックアクセスをアカウントレベルで有効にしていますか?
  • EC2 AMI と Amazon EBS の BPA を有効にしていますか?
  • BPA の解除を防ぐための SCP を有効にしていますか?

S3 バケットをパブリックにする必要がある場合:

  • どのようなユースケースですか? パブリックな静的ウェブサイトですか? AWS WAF ルールを有効にした Amazon CloudFront ディストリビューションでそのデータを保護しない理由は何ですか?
  • 絶対にパブリックにする必要があると特定されていない、パブリックな S3 バケットはありますか?
  • パブリックな S3 バケットがある場合: そのアカウント内の他のすべての S3 バケットでバケットレベルの BPA を有効にしていますか?

料金

  • ブロックパブリックアクセスを有効にするための追加料金はかかりません