Вы видели это ?
Похоже, что разрешение включено и в шаблон по умолчанию.Я пошел, чтобы повторить это и увидел, что на консоли политики ресурсов есть кнопка «Черный список диапазона IP-адресов».Если щелкнуть по нему, он создаст политику, подобную этой:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": "execute-api:/{{stageNameOrWildcard}}/{{httpVerbOrWildcard}}/{{resourcePathOrWildcard}}",
"Condition" : {
"IpAddress": {
"aws:SourceIp": [ "{{sourceIpOrCIDRBlock}}", "{{sourceIpOrCIDRBlock}}" ]
}
}
},
{
"Effect": "Allow",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": "execute-api:/{{stageNameOrWildcard}}/{{httpVerbOrWildcard}}/{{resourcePathOrWildcard}}"
}
]
}
Вы можете изменить ее из черного списка в белый список, изменив условие «IpAddress» на то же условие «NotIpAddress», которое вы используете в своемнерабочий шаблон.
Это сработало для меня просто отлично, поэтому, если это не так, я включил бы Доступ к ведению журнала в вашем API GW API и убедился, что исходный IP AWS, который вы видите, приходит, когда вы делаетезапрос (убедитесь, что вы также регистрируете идентификатор запроса).
Чтобы убедиться, что вы просматриваете правильный журнал доступа, при выполнении запроса вы должны перехватить заголовок ответа "x-amzn-requesttid",Заголовок ответа, используя пример curl:
x-amzn-requesttid: 85e403e8-210a-49e4-909e-b3fb66d6467e
FTR, я ввел * в заполнители, что кнопкасоздает в политике по умолчанию, и консоль AWS преобразует их в соответствующие значения, поэтому после преобразования консоли она выглядит примерно так.Преобразования, о которых я говорю, - это заполнители, которые у меня есть ниже (REGION, ACCID, APIID):
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": "arn:aws:execute-api:REGION:ACCID:APIID/*/*/*",
"Condition": {
"NotIpAddress": {
"aws:SourceIp": "34.213.29.81/32"
}
}
},
{
"Effect": "Allow",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": "arn:aws:execute-api:REGION:ACCID:APIID/*/*/*"
}
]
}