Amazon Athena
ユーザーガイド

クロスアカウントアクセス

一般的なシナリオでは、バケット所有者とは異なるアカウントのユーザーにアクセス権を付与し、クエリを実行できるようにします。この場合、アクセス権を付与するには、バケットポリシーを使用します。

次の例のバケットポリシーは、バケット所有者によって作成され、バケット s3://my-athena-data-bucket に適用されています。このポリシーでは、別のアカウント (123456789123) のすべてのユーザーにアクセス権を付与します。

{ "Version": "2012-10-17", "Id": "MyPolicyID", "Statement": [ { "Sid": "MyStatementSid", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789123:root" }, "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::my-athena-data-bucket", "arn:aws:s3:::my-athena-data-bucket/*" ] } ] }

アカウントの特定のユーザーにアクセス権を付与するには、Principal キーを root から特定のユーザーを指定するキーに置き換えます。たとえば、ユーザープロファイル Dave にアクセス権を付与するには、arn:aws:iam::123456789123:user/Dave に置き換えます。