URL-адрес шлюза API AWS возвращает {"message": "Запрещено"} - PullRequest
0 голосов
/ 28 февраля 2019

У меня похожая проблема с этим вопросом: получение сообщения: запрещенный ответ от шлюза API AWS

Я ознакомился с руководством и настроил API calc на AWS API Gateway.Все работало, как описано в руководстве, развернул API на стадии тестирования и не смог получить к нему доступ.Я также попытался импортировать Пример API в AWS API Gateway, магазине питомцев.Опять же, тестирование внутри Консоли AWS работает, когда я выполняю развертывание на этапе, URL-адрес, предоставленный AWS, не работает.

Но по комментариям и ответам мне не удалось его разрешить.

Я проверил обычные решения:

  1. Это не связано с CORS, я не могу получить доступ к этому URL через Chrome или Почтальон
  2. Это не связано с пользовательским доменом, я использую по умолчаниюURL-адрес, предоставленный AWS на пользовательском интерфейсе этапа
  3. Я получаю доступ к правильному URL-адресу, т.е. имя_стадии / ресурс
  4. У меня есть Authorization = NONE и требуется ключ API = false

Я также пробовал разные политики ресурсов (и каждый раз, когда менял, менял заново)

{
"Version": "2012-10-17",
"Statement": [
    {
        "Effect": "Allow",
        "Principal": "*",
        "Action": "execute-api:Invoke",
        "Resource": "arn:aws:execute-api:eu-west-1:xxx:km1rmsmo1j/test/calc/POST/*"
    }
]

или

{
"Version": "2012-10-17",
"Statement": [
    {
        "Effect": "Deny",
        "Principal": "*",
        "Action": "execute-api:Invoke",
        "Resource": "arn:aws:execute-api:eu-west-1:xxxxx:km1rmsmo1j/test/*/*"
    }
]

}

По-прежнему не удается позвонить: https://km1rmsmo1j.execute -api.eu-west-1.amazonaws.com / test / calc

Я думаю, что во всех руководствах по AWS пропущен последний и самый важный вопрос, как сделать его общедоступным,Потому что, по моим наблюдениям, похоже, что по умолчанию это не так - по крайней мере, что-то нужно изменить, чтобы сделать его доступным из общедоступного Интернета.

Спасибо за помощь.

1 Ответ

0 голосов
/ 12 марта 2019

Я выяснил проблему, получая доступ к конечной точке из VPN-соединения, открытого для AWS.Поэтому доступ к API пришел из AWS EC2, я не знаю почему, но когда я вышел из VPN, это сработало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...