Amazon S3 のポリシーとアクセス許可 - Amazon Simple Storage Service

Amazon S3 のポリシーとアクセス許可

ここでは、Amazon S3 のバケットポリシーとユーザーポリシーの概要を示し、ポリシーの基本的なエレメントについて説明します。リストされた各エレメントは、そのエレメントの詳細と使用方法の例にリンクしています。

Amazon S3 のアクション、リソース、および条件の詳細なリストについては、Amazon S3 のアクション、リソース、条件キー を参照してください

基本的に、ポリシーには以下のエレメントが含まれます。

  • Resource (リソース) – バケット、オブジェクト、アクセスポイント、ジョブは、アクセスを許可または拒否できる Amazon S3 のリソースです。ポリシーでは、Amazon リソースネーム (ARN) を使用して、リソースを識別します。詳細については、Amazon S3 のリソース を参照してください。

  • Action (アクション) – Amazon S3 では、各リソースに対して一連のオペレーションがサポートされています。許可 (または拒否) するリソースのオペレーションは、アクションキーワードを使用して識別します。

    例えば、s3:ListBucket のアクセス許可は、Amazon S3 のバケットの GET (ListObjects) オペレーションの使用を許可します。Amazon S3 アクションの使用に関する詳細については、「Amazon S3 のアクション」を参照してください。Amazon S3 のアクションの一覧については、Actions を参照してください。

  • Effect (効力) – ユーザーが特定のアクションをリクエストした場合の効力です。許可または拒否のいずれかになります。

    リソースへのアクセスを明示的に許可していない場合、アクセスは暗黙的に拒否されます。リソースへのアクセスを明示的に拒否することもできます。別のポリシーでリソースへのアクセスが許可されているユーザーに対して、そのリソースへのアクセスを禁止できます。詳細については、IAM JSON ポリシーのエレメント: Effect を参照してください。

  • プリンシパル – ステートメントのアクションやリソースへのアクセスが許可されているアカウントまたはユーザーを指します。バケットポリシーの場合、プリンシパルは、このアクセス許可の被付与者であるユーザー、アカウント、サービス、または他のエンティティです。詳細については、プリンシパル を参照してください。

  • Condition (条件) – ポリシーが有効になる条件。Amazon S3 のアクセスポリシーの条件は、AWS 全体のキーと Amazon S3 固有のキーを使用して指定することができます。詳細については、Amazon S3 条件キーの例 を参照してください。

次のバケットポリシーの例は、効果、プリンシパル、アクション、およびリソースエレメントを示しています。このポリシーは、Account−ID アカウントのユーザーの Dave に、s3:GetObject バケットに対する Amazon S3 の s3:GetBucketLocations3:ListBucketawsexamplebucket1 のアクセス許可を付与します。

{ "Version": "2012-10-17", "Id": "ExamplePolicy01", "Statement": [ { "Sid": "ExampleStatement01", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:user/Dave" }, "Action": [ "s3:GetObject", "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::awsexamplebucket1/*", "arn:aws:s3:::awsexamplebucket1" ] } ] }

詳細については、以下のトピックをご参照ください。ポリシーの言語の詳細については、IAM ユーザーガイドIAM でのポリシーとアクセス許可および IAM JSON ポリシーのリファレンスを参照してください。