Ниже политики ресурсов на AWS API-Gateway, генерирующей этот ответ при вызове как снаружи, так и внутри VPC
{"Message":"User: anonymous is not authorized to perform: execute-api:Invoke on resource: arn:aws:execute-api:ap-south-1:********2818:d5cbeh0e78/default/GET/autoimageresize-staging with an explicit deny"}
Политика ресурсов: белый список VPC
{
"Version": "2012-10-17",<
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": "arn:aws:execute-api:ap-south-1:********2818:d5cbeh0e78/*/*/*"
},
{
"Effect": "Deny",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": "arn:aws:execute-api:ap-south-1:********2818:d5cbeh0e78/*/*/*",
"Condition": {
"StringNotEquals": {
"aws:SourceVpc": "vpc-********"
}
}
}
]
}
тогда как белый список ресурса с соответствующим IP-адресом работает достаточно хорошо с политикой ресурса ниже
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": "arn:aws:execute-api:ap-south-1:********2818:d5cbeh0e78/*/*/*"
},
{
"Effect": "Deny",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": "arn:aws:execute-api:ap-south-1:********2818:d5cbeh0e78/*/*/*",
"Condition": {
"NotIpAddress": {
"aws:SourceIp": "xx.xxx.xxx.xx"
}
}
}
]
}
Может кто-нибудь подсказать, где я могу ошибаться, а также как я могу проверить, что такое aws: SourceVpc-значениеполучать, если не то, что я ожидаю. И еще, в некоторых местах я получаю ключ как SourceVpc, а другие как sourceVpc в документах aws.
Заранее спасибо