amazon-web-services - AWS IAM |无法承担在同一 "session"上创建的角色 (InvalidInputException)

标签 amazon-web-services ansible amazon-iam roles assume-role

这种情况在我身上发生过多次,但我一生都无法弄清楚为什么。示例:

  • Boto3 脚本:如果我创建一个角色然后尝试假设它,我会收到错误。但如果角色已经创建,服务就可以很好地承担它。

  • Ansible 剧本:如果我运行一个剧本,首先创建角色,然后尝试分配它们,我会收到错误。但如果我首先运行不同的剧本,然后运行分配角色的剧本,一切都很好。

我尝试等待以确保角色已创建,但仍然收到错误。错误是:

"An error occurred (InvalidInputException) when calling the CreateCrawler operation: Service is unable to assume role arn:aws:iam::<acc_id>:role/GlueReadS3. Please verify role's TrustPolicy"

奇怪的是,CloudFormation 也可以承担同样的角色。

{
    "Version": "2012-10-17",
    "Statement": [{
        "Effect": "Allow",
        "Principal": {
            "Service": "glue.amazonaws.com"
        },
        "Action": "sts:AssumeRole"
    }]
}

我应该提到,boto3 错误还返回了角色 ARN(因此我假设它已创建),而且我事先创建了一个 get_role 来获取 ARN,但它也不起作用

最佳答案

也许你可以检查 IAM 中的角色,就我而言,我想我创建了一个类似的角色 arn:aws:iam::<acc_id>:role/GlueReadS3 ,但后来我去 IAM 查了一下,实际上是 arn:aws:iam::<acc_id>:role/service-role/GlueReadS3 .

关于amazon-web-services - AWS IAM |无法承担在同一 "session"上创建的角色 (InvalidInputException),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59454019/

相关文章:

amazon-web-services - AWS 负载均衡器大小限制

ansible 包与 yum 模块

amazon-web-services - 来自 SAML 身份提供商或 AD 连接器的用户的 AWS 访问 key (用于 CLI 身份验证等)?

amazon-web-services - AWS Amplify AppSync IAM 401

python - Requirements.txt 对弹性 beanstalk 上的 conda/pip 无效

amazon-web-services - AWS CLI v2 的哪些命令 `replace aws ecr get-login`

php - 从 Codeigniter 上传到 S3 存储桶

docker - gitlab docker 几秒钟后停止,因为他无法再访问 postgres

在主机之间生成和共享变量的 Ansible playbook

amazon-web-services - S3 具有角色的跨账户访问