Amazon S3 のバケットポリシー - Amazon Simple Storage Service

Amazon S3 のバケットポリシー

バケットポリシーは、Amazon S3 バケットとその中のオブジェクトへのアクセス許可を付与できるリソースベースのポリシーです。バケット所有者のみが、ポリシーをバケットに関連付けることができます。バケットに添付された許可は、バケット所有者が所有するバケットのすべてのオブジェクトに適用されます。これらの許可は、他の AWS アカウント が所有するオブジェクトには適用されません。

S3 オブジェクト所有権は、Amazon S3 バケットレベルの設定で、バケットにアップロードされたオブジェクトの所有権の制御に使用できます。オブジェクト所有権を使用して、アクセスコントロールリスト (ACL) を無効または有効にすることもできます。デフォルトでは、オブジェクト所有権は [バケット所有者の強制] により設定され、すべての ACL は無効になっています。バケット所有者は、バケット内のすべてのオブジェクトを所有し、ポリシーのみを使用してオブジェクトへのアクセスを管理します。

バケットポリシーは、JSON ベースの AWS Identity and Access Management (IAM) ポリシー言語を使用します。バケットポリシーを使用して、バケット内のオブジェクトに対する許可を追加または拒否できます。バケットポリシーは、ポリシーの要素に基づいて、リクエストを許可または拒否します。これらの要素には、リクエスタ、S3 アクション、リソース、およびリクエストの側面または条件 (リクエストの作成に使用された IP アドレスなど) が含まれます。

例えば、次のことを実行するバケットポリシーを作成できます。

  • S3 バケットにオブジェクトをアップロードするためのクロスアカウントアクセス許可を付与するクロスアカウントアクセス許可を付与する

  • バケット所有者であるユーザーが、アップロードされたオブジェクトを完全に管理できるようにする

詳細については、「Amazon S3 バケットポリシーの例」を参照してください。

このセクションのトピックでは、具体例と、S3 コンソールにバケットポリシーを追加する方法について説明します。アイデンティティベースのポリシーについては、「Amazon S3 のアイデンティティベースのポリシー」を参照してください。バケットポリシー言語の詳細については、「Amazon S3 のポリシーとアクセス許可」を参照してください。