提供对API网关的AWS账户ID访问

时间:2019-05-22 01:44:57

标签: amazon-web-services aws-api-gateway amazon-iam

我想授予某些AWS账户ID访问我账户中的api网关的权限。最好的方法是什么?

我认为,有一种添加资源策略的方法可以赋予该AWS账户访问权限。这是个好方法吗?我说的是生产服务?

还,AWS账户的所有资源都可以访问API网关吗?

1 个答案:

答案 0 :(得分:1)

对于每个API网关端点,我们可以将“授权”选项从None更改为AWS_IAM

API Gateway Authorization option field

然后,我们可以从API网关的“资源策略”部分配置对API的访问。在“资源策略”页面上,单击“ AWS帐户白名单”按钮以获取策略模板,摘录如下:

{
    "Effect": "Allow",
    "Principal": {
        "AWS": [
            "arn:aws:iam::{{otherAWSAccountID}}:root",
            "arn:aws:iam::{{otherAWSAccountID}}:user/{{otherAWSUserName}}",
            "arn:aws:iam::{{otherAWSAccountID}}:role/{{otherAWSRoleName}}"
        ]
    },
    "Action": "execute-api:Invoke",
    "Resource": [
        "execute-api:/{{stageNameOrWildcard*}}/{{httpVerbOrWildcard*}}/{{resourcePathOrWildcard*}}"
    ]
}

作为对IAM授权的替代(或补充),我们可以使用API​​密钥控制使用情况,从而可以对API调用进行限制(限制)并设置配额。

更多信息: