2017-02-20 3 views
1

Я пытаюсь вызвать функцию лямбда от NodeJS. После исследования я знаю 2 способа сделать это:AmazonWebService - Должен ли я использовать AWS API Gateway или AWS SDK

  1. Назначить функцию Лямбда в AWS API Gateway и вызвать этот API.
  2. Вызов функции Lambda через AWS SDK

Каковы плюсы и минусы API шлюза и AWS SDK? А когда использовать каждый путь выше?

ответ

2

Это зависит. API Gateway в основном используется для предоставления временного доступа к функциям Lambda в небезопасных средах (например, в браузерах, настольных приложениях, НЕ серверах).

Если ваша среда безопасна, как в ней работает экземпляр EC2 с ролью IAM или другой сервер с защищенными хранимыми учетными данными, тогда вы можете свободно использовать SDK и правильно вызвать функцию лямбда.

Если вам необходимо предоставить свою Лямбду-функцию всему интернету или авторизованным пользователям в Интернете или любому пользователю, который может захватить ключ доступа и тайну во время транзита, тогда вам нужно будет придерживаться API Шлюз впереди.

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

+0

Спасибо за ваш ответ, могу ли я задать еще одну вещь: какой способ проще в использовании? (возможно, о кодировании). – YodaVN

+1

Довольно же те же tbh. Дело не в том, что проще, а в том, что правильно. API Gateway перед Lambda только потому, что вам удобнее писать HTTP-запросы, это не правильное решение. – Deif

+0

Спасибо, я все понимаю. – YodaVN

Смежные вопросы