Как получить доступ к частному шлюзу API через локальную сеть / VPN? - PullRequest
0 голосов
/ 22 мая 2019

Я создал шлюз API для запуска лямбда-функции.Это предназначено для использования в качестве внутренней службы, поэтому мой шлюз API является частным.Чтобы сделать шлюз API доступным в частном порядке, я сделал следующее:

  1. Создал конечную точку VPC в паре подсетей нашего VPC
  2. Добавил конечную точку в группу безопасности, которая толькоразрешает трафик с локального сервера
  3. В шлюз API добавлена ​​политика ресурсов, которая разрешает запросы только от конечной точки VPC

. Эти шаги эффективно блокируют публичные запросы и разрешают запросы с локального сервера.через DNS-имена, созданные конечной точкой VPC.

Проблема этого подхода заключается в том, что для вызова API необходимо указать либо Host, либо x-apigw-api-id в запросе.Цель состоит в том, чтобы пользователи могли заходить в свои браузеры, вводить параметры URL-адреса и строки запроса и получать ответ от службы.

Типы Amazon API Gateway, варианты использования и производительность говорит о подходе, позволяющем избежать указания идентификатора API или хоста, но он не дает подробностей.В соответствующей части говорится, что решение будет следующим:

Поместите балансировщик нагрузки приложения с SSL-сертификатом (например, api.mydomain.com) перед IP-адресами ваших сетевых интерфейсов PrivateLink.Также разверните пользовательское доменное имя для api.mydomain.com и сопоставление базового пути для вашего шлюза API.Затем добавьте запись Route 53, которая указывает api.mydomain.com как псевдоним вашего ALB.Это решение довольно сложное, но мы проверили его, и оно работает.Описание полного решения выходит за рамки этого поста, но мы могли бы позже написать об этом отдельный пост в блоге.

Кто-нибудь знает, как это сделать или другой подход?

...