IAM 最小権限
カスタムIAM ポリシーを作成するよりも、定義済みのロールをサービスに使用することを推奨しますが、カスタムポリシーを作成する場合は、次の表に記載されているロールを使用してください。今後のリリースで、Amazon S3 ドライバーが必要とする特定のポリシーが変更される可能性があります。
Amazon S3 は次の権限を最小限必要とします。
IAM ロール | 説明 | |
テーブル:Buckets | ||
SELECT | ListAllMyBuckets | |
INSERT | CreateBucket | |
DELETE | GetBucketLocation およびDeleteBucket | |
テーブル:Objects | ||
SELECT | GetBucketLocation およびListBucket | |
DELETE | GetBucketLocation およびDeleteObject | |
ビュー (すべてのビューは、以下の権限に加えて GetBucketLocation を必要とします) | ||
BucketsACL | ListBucket | |
BucketsAnalytics | GetAnalyticsConfiguration | |
BucketsCORS | GetBucketCORS | |
BucketsInventory | GetInventoryConfiguration | |
BucketsLifeCycle | GetLifecycleConfiguration | |
BucketsReplication | GetReplicationConfiguration | |
ObjectsACL | GetObjectAcl | |
PublicAccessBlock | GetBucketPublicAccessBlock | |
ストアドプロシージャ (すべてのプロシージャは、以下の権限に加えて GetBucketLocation を必要とします) | ||
CopyObject | ソースバケットにGetObject、および同期先バケットにPutObject | |
DownloadObjectTorrent | GetObjectTorrent | |
DownloadObjects | GetObject | |
UploadObjects | PutObject |
JSON 例
JSON バージョンで、ドライバーの全機能を使用するための最小限の権限ポリシーを以下に示します。{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "s3:GetBucketPublicAccessBlock", "s3:GetLifecycleConfiguration", "s3:GetInventoryConfiguration", "s3:CreateBucket", "s3:ListBucket", "s3:GetReplicationConfiguration", "s3:PutObject", "s3:GetObjectAcl", "s3:GetObject", "s3:GetObjectTorrent", "s3:ListAllMyBuckets", "s3:GetBucketCORS", "s3:GetAnalyticsConfiguration", "s3:DeleteObject", "s3:GetBucketLocation", "s3:DeleteBucket" ], "Resource": "*" } ]" }上の例では、"Resource" を * に設定してすべてのバケットへのアクセスを許可していますが、特定のバケットだけにアクセスを制限することもできます。