グループ ポリシーは、そのポリシーが関連付けられたグループに対するアクセス権限を指定します。プリンシパルは暗黙的に決まるため、このポリシーにはPrincipal要素はありません。グループ ポリシーは、Tenant ManagerまたはAPIを使用して設定します。
この例では、指定したバケット内の固有のフォルダ(キー プレフィックス)の参照とアクセスだけがグループのメンバーに許可されます。
{ "Statement": [ { "Action": "s3:*", "Effect": "Allow", "Resource": "arn:aws:s3:::*" } ] }
この例では、バケット ポリシーで明示的に拒否されている場合を除き、グループのすべてのメンバーにS3リソースへの読み取り専用アクセスが許可されます。たとえば、オブジェクトをリストして、オブジェクト データ、メタデータ、およびタグを読み取ることができます。
{ "Statement": [ { "Sid": "AllowGroupReadOnlyAccess", "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets", "s3:ListBucket", "s3:ListBucketVersions", "s3:GetObject", "s3:GetObjectTagging", "s3:GetObjectVersion", "s3:GetObjectVersionTagging" ], "Resource": "arn:aws:s3:::*" } ] }
この例では、指定したバケット内の固有のフォルダ(キー プレフィックス)の参照とアクセスだけがグループのメンバーに許可されます。それらのフォルダのプライバシー設定を決めるときは、他のグループ ポリシーやバケット ポリシーのアクセス権限を考慮する必要があることに注意してください。
{ "Statement": [ { "Sid": "AllowListBucketOfASpecificUserPrefix", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::department-bucket", "Condition": { "StringLike": { "s3:prefix": "${aws:username}/*" } } }, { "Sid": "AllowUserSpecificActionsOnlyInTheSpecificUserPrefix", "Effect": "Allow", "Action": "s3:*Object", "Resource": "arn:aws:s3:::department-bucket/${aws:username}/*" } ] }
この例では、PutOverwriteObjectとDeleteObjectのEffectをDenyに設定して、オブジェクトのデータ、ユーザ定義のメタデータ、S3オブジェクトのタグが削除または変更されないように保護しています。
{ "Statement": [ { "Effect": "Deny", "Principal": "*", "Action": [ "s3:PutOverwriteObject", "s3:DeleteObject", "s3:DeleteObjectVersion" ], "Resource": "arn:aws:s3:::wormbucket/*" }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::95390887230002558202:federated-group/SomeGroup" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::wormbucket" }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::95390887230002558202:federated-group/SomeGroup" }, "Action": "s3:*", "Resource": "arn:aws:s3:::wormbucket/*" } ] }