在AWS控制台上构建API网关资源策略。我在VPC里面有API网关。
错误无效的策略文档。请检查策略语法并确保原则是有效的。
以下是资源政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": [
"arn:aws:execute-api:*:*:*/*"
]
},
{
"Effect": "Deny",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": [
"arn:aws:execute-api:*:*:*/*"
],
"Condition" : {
"StringNotEquals": {
"aws:SourceVpc": "vpc-0c11234510819ewqe"
},
"StringNotEquals": {
"aws:SourceVpce": "vpc-er345453yrt4543t"
}
}
}
]
}发布于 2022-01-14 01:47:34
在条件语句中,如果要指示多个VPC,则需要将其声明为列表:
"Condition" : {
"StringNotEquals": {
"aws:SourceVpc": [
"vpc-0c11234510819ewqe",
"vpc-er345453yrt4543t"
]
}
}另外,在Resource字段中,删除arn:aws:
最后,资源策略看起来如下:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": [
"execute-api:*:*:*/*"
]
},
{
"Effect": "Deny",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": [
"execute-api:*:*:*/*"
],
"Condition" : {
"StringNotEquals": {
"aws:SourceVpc": ["vpc-0c11234510819ewqe","vpc-er345453yrt4543t"]
}
}
}
]
}参考资料:
https://stackoverflow.com/questions/70704264
复制相似问题