メニュー
Amazon Simple Storage Service
開発者ガイド (API バージョン 2006-03-01)

アクセスポリシー言語の概要

このセクションのトピックでは、Amazon S3 と同様にバケットポリシーやユーザーポリシーで使用される基本エレメントについて説明します。ポリシー言語の詳細については、IAM ユーザーガイドのトピック「 IAM ポリシーの概要」と「AWS IAM ポリシーの参照」を参照してください。

注記

バケットポリシーのサイズは 20 KB に制限されています。

アクセスポリシーの一般的なエレメント

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

  • リソース – バケットとオブジェクトは、アクセス許可を許可または拒否できる Amazon S3 のリソースです。ポリシーでは、Amazon リソースネーム (ARN) を使用して、リソースを識別します。

  • アクション – Amazon S3 では、リソースごとに一連のオペレーションをサポートします。許可 (または拒否) するリソースのオペレーションは、アクションキーワードを使用して指定します (詳細は「ポリシーでのアクセス許可の指定」を参照)。

    たとえば、s3:ListBucket アクセス許可は、Amazon S3 の GET Bucket (List Objects) オペレーションに対するユーザーアクセスを許可します。

  • エフェクト – ユーザーが特定のアクションをリクエストする際のエフェクトです。許可または拒否のいずれかになります。

    リソースへのアクセスを明示的に許可していない場合、アクセスは暗黙的に拒否されます。また、明示的にリソースへのアクセスを拒否すると、別のポリシーによってアクセスが許可されている場合でも、ユーザーはそのリソースにアクセスできなくなります。

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

以下のバケットポリシーの例は、前述の一般的なポリシーのエレメントを示しています。このポリシーは、Account-ID アカウントのユーザー Dave に、examplebucket バケットに対する Amazon S3 のアクセス許可として s3:GetObjects3:GetBucketLocation、および s3:ListBucket を付与します。

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

アクセスポリシーのエレメントの詳細については、次のトピックを参照してください。

以下のトピックでは、さらに他のポリシーの例を紹介します。