「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」
Amazon S3: フェデレーティッドユーザーが自分の S3 ホームディレクトリにプログラムによりコンソールでアクセスすることを許可する
この例では、次のような IAM ポリシーを作成する方法を示します。 は、フェデレーティッドユーザーに S3 の自分のホームディレクトリバケットオブジェクトへのアクセスを許可します。ホームディレクトリは、home
フォルダや個々のフェデレーティッドユーザーのフォルダを含むバケットです。このポリシーでは、このアクションをコンソールで実行するために必要なアクセス許可も付与されます。このポリシーを使用するには、ポリシー例の斜体プレースホルダーテキスト
を自分の情報に置き換えます。次に、「ポリシーの作成」または「ポリシーの編集」の手順に従います。
このポリシーの ${aws:userid}
変数は、role-id:specified-name
に解決されます。フェデレーティッドユーザー ID の role-id
の部分は、作成時にこのフェデレーティッドユーザーに割り当てられた一意の識別子です。詳細については、「一意の識別子」を参照してください。specified-name
は、フェデレーティッドユーザーがそのロールを引き受けたときに AssumeRoleWithWebIdentity
リクエストに渡される RoleSessionName パラメータです。
ロール ID を表示するには、AWS CLI コマンド aws iam get-role --role-name
を使用します。たとえば、フレンドリ名を specified-name
John
と指定すると、CLI はロール ID として AROAXXT2NJT7D3SIQN7Z6
を返します。この場合、フェデレーティッドユーザー ID は AROAXXT2NJT7D3SIQN7Z6:John
です。このポリシーは、フェデレーティッドユーザー John がプレフィックス AROAXXT2NJT7D3SIQN7Z6:John
を使用して Amazon S3 バケットにアクセスすることを許可します。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets", "s3:GetBucketLocation" ], "Resource": "*" }, { "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::
bucket-name
", "Condition": { "StringLike": { "s3:prefix": [ "", "home/", "home/${aws:userid}/*" ] } } }, { "Effect": "Allow", "Action": "s3:*", "Resource": [ "arn:aws:s3:::bucket-name
/home/${aws:userid}", "arn:aws:s3:::bucket-name
/home/${aws:userid}/*" ] } ] }