Можно ли использовать шлюзы авторизатора и лямбда-прокси в шлюзе API?
Да, возможно, чтобы шлюз API связывал лямбда-авторизатор с лямбда-проксиНо, похоже, вы также хотите подключить прокси-сервер Lambda к отдельной Lambda.(Возможно, вы ищете «фильтры запросов» по типу модель Spring .) API Gateway и Lambda не поддерживают эту структуру, как можно надеяться.
Если вы хотитереализовать разделение задач на уровне обслуживания, возможно, вы захотите изучить лямбда-лямбда-вызов .В модели, которую вы предлагаете, это будет выглядеть примерно так:
Gateway Authorizer λ -> Gateway Proxy λ (perform routing) -> "backend" λ
То, что вы покупаете, - это способность иметь собственную логику маршрутизации и проверки на уровне прокси.Тем не менее, я должен сделать следующее предупреждение:
- Прокси-серверу Lambda нужно будет дождаться, пока бэкэнд-лямбда завершит обработку, чтобы вернуть результат обратно в шлюз, что означает, что вам по существу будет выставлен счетудваивается для каждого запроса (это упрощено, поскольку у вас могут быть разные размеры лямбды с разными тарифами, но вы меня поняли)
- Вы переносите конфигурацию из консоли AWS в более управляемое решение.Это может не быть проблемой в вашем случае, но об этом следует помнить по мере роста вашего приложения, если масштабируемость вашего решения по маршрутизации становится узким местом
Одна из функций AWS Lambda, которой вы можете бытьинтересует это лямбда-слои .Это будет скорее разделение на уровне кода, чем разделение на уровне обслуживания, которое может быть или не быть достаточным в вашем случае.
На практике моя команда использовала API Gateway Authorizer только для решения AuthN (так какэто звучит как ты делаешь).Затем мы заставили каждую лямбду обрабатывать определенную входную проверку (параметры запроса, тела запроса и т. Д.) И обрабатывать AuthZ, запрашивая пользовательский сервис.
Надеюсь, это поможет.Удачи:).