0

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

Я хотел бы изменить свой собственный авторизованный авторизатор на основе доступа к сцене, точно так же, как переменная этапа. Если мы находимся в стадии теста, используйте TestAuthorizer, если в режиме реального времени используйте LiveAuthorizer.

Из моих исследований и этого page это не представляется возможным, никаких идей?

PS - Я знаю, что это может быть обработано из функции лямбда, выполняющей аутентификацию, мне просто интересно, есть ли другой способ (аналогичный переменным этапа).

ответ

0

Вы можете использовать ступенчатую переменную в одном Авторизаторе, чтобы указать на различные функции лямбда в зависимости от сцены, но вы не можете указать на разные авторизаторы.

Во многих случаях работает другая функция лямбда. Другие настройки на Авторизаторе (например, источник заголовка или TTL) не поддерживают переменные этапа, поэтому они должны быть разделены на всех этапах.

Редактировать: Я должен объяснить, что ключевая причина, по которой это не позволяет, заключается в том, что наша переменная stage as-is не имеет резервной защиты, если во время выполнения переменная не существует. Поскольку выполнение авторизатора имеет решающее значение, нам придется придумать другой механизм, похожий на переменные этапа со встроенным механизмом безопасности.

+0

Не могли бы вы объяснить это следующим образом: «Вы можете использовать переменную сцены в одном Авторизаторе, чтобы указать на разные функции лямбда» – Hexie

+0

Вам нужно установить свой авторизатор на что-то вроде {stageVariables.authorizerName} и установить переменные этапа на вашем этапе , Если вы перейдете к этой конфигурации, вам необходимо вручную настроить Api Gateway для вызова этих функций Lambda. – taskiner

+0

@taskiner, пожалуйста, просмотрите URL-адрес в моем первоначальном вопросе, согласно этой странице (датируется менее месяца назад): http://stackoverflow.com/questions/41684728/is-it-possible-to-pass-a-stage -variables-to-a-custom-authorizer-in-aws-api-gatew, который невозможно сделать? – Hexie

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