我正在研究“用户的IAM角色”,但是我陷于该角色的“信任策略”中。
我想要什么?我希望用户扮演允许访问S3的角色: AmazonS3FullAccess
上下文:
我创建了一个用户user1
并为其分配了以下策略:
{
"Version": "2012-10-17",
"Statement": {
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::my-aws-account:role/user1Role"
}
}
然后,我想使用aws iam create-role
创建角色user1Role,但是我陷入了--assume-role-policy-document(也就是信任关系策略文档,该策略授予实体假设承担角色)
对于EC2信任策略,我会使用
{
"Version": "2012-10-17",
"Statement": {
"Effect": "Allow",
"Principal": {"Service": "ec2.amazonaws.com"},
"Action": "sts:AssumeRole"
}
}
但是对于IAM用户,我不知道如何执行此操作(或应该怎么做)?
答案 0 :(得分:3)
您可以指定一个IAM用户(或用户数组)作为主体,如以下示例所示:
"Principal": { "AWS": "arn:aws:iam::AWS-account-ID:user/user-name" }
在策略中使用AWS账户标识符作为主体时,您将授权委派给该账户。在该帐户内,可以将策略声明中的权限授予所有身份。这包括该帐户中的IAM用户和角色:
"Principal": { "AWS": "arn:aws:iam::AWS-Account-ID:root" }
有关AWS IAM信任策略中Principal元素的更多详细信息,请参阅documentation。