API网关无权承担提供的角色,但是角色似乎已将其附加(sts承担角色)

时间:2019-11-09 02:47:43

标签: amazon-web-services aws-lambda

我测试了我的API网关,但得到了:

Sat Nov 09 02:12:13 UTC 2019 : Execution failed due to configuration error:  
API Gateway does not have permission to assume the provided role
arn:aws:iam::193693970645:role/service-role/DoubleMeLambda-role-0erzzpmz`

但是,我的API网关使用:

arn:aws:iam::193693970645:role/service-role/DoubleMeLambda-role-0erzzpmz 

那个角色有

enter image description here

我使其变得非常强大(*),可以尝试使其正常运行,但这无济于事

lambda使用相同的角色(我知道在现实世界中并不理想,但似乎应该可以工作):

enter image description here

我编辑了该角色的信任关系并添加:

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

1 个答案:

答案 0 :(得分:1)

您需要在IAM角色和API网关/ lambda之间配置信任关系,以便它可以承担您的IAM角色:

https://docs.aws.amazon.com/directoryservice/latest/admin-guide/edit_trust.html

您授予的权限是让具有该角色的任何人都可以承担另一个角色,而不是允许任何人承担该角色。