如何使用 AWS CLI 向角色添加信任策略?

问题描述 投票:0回答:1

我正在尝试更新角色的信任策略以包含用户。 我已经使用 AWS 管理控制台成功实现了这一目标。

enter image description here

但是,当尝试使用 AWS CLI 执行相同操作时,我遇到了以下错误消息: (我尝试在命令行和 JSON 文件中复制 AWS 控制台中使用的相同 JSON。)

aws iam update-assume-role-policy --role-name my_role_name --policy-document '{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"AWS":["arn:aws:iam::xxxxxxxxxxxx:user/my_user_name"]},"Sid":""}'

An error occurred (MalformedPolicyDocument) when calling the UpdateAssumeRolePolicy operation: This policy contains invalid Json

aws iam update-assume-role-policy --role-name my_role_name --policy-document file://path/to/policy.json

An error occurred (MalformedPolicyDocument) when calling the UpdateAssumeRolePolicy operation: Syntax error at position (1,12)

这是使用 AWS CLI 添加它的正确方法吗?

amazon-web-services amazon-iam aws-cli aws-iam-policy
1个回答
0
投票

我的测试表明它需要完整的策略,包括

Version

这有效:

aws iam update-assume-role-policy --role-name my_role_name --policy-document '{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::123456789012:user/foo"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}'

因此,它将“取代”现有政策,而不是对其进行补充。

© www.soinside.com 2019 - 2024. All rights reserved.