我有一个具有不同阶段的API网关( prod 和 dev ),一个用于 生产环境 ,后一个用于开发 .
为了限制访问和部署到 prod 阶段,我为开发用户设置了以下IAM策略,
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"execute-api:*",
"apigateway:*"
],
"Resource": [
"arn:aws:apigateway:eu-central-1::/restapis/6mvx7om366/stages/dev",
"arn:aws:apigateway:eu-central-1::/restapis/6mvx7om366/stages",
"arn:aws:apigateway:eu-central-1::/restapis",
"arn:aws:apigateway:eu-central-1::/restapis/6mvx7om366",
"arn:aws:apigateway:eu-central-1::/restapis/6mvx7om366/deployments",
.....
....
]
}
其中 6mvx7om366
是API ID .
这显示了控制台中用户的 prod 阶段,但限制编辑它的任何配置 . (对此感到满意)
但是,dev用户可以进行 prod 阶段的部署 . 我确实希望有一个类似的,
"arn:aws:apigateway:eu-central-1::/restapis/6mvx7om366/deployments/stages/dev"
但看起来没有 . 有没有解决方法?