У меня есть пул разработчиков и продуктов, лямбда-функция dev / prod, которая отправляет данные в таблицу dev / prod DynamoDb.

Есть ли простой способ узнать, когда использовать учетные данные продукта (идентификатор пула и т. Д.), А когда использовать учетные данные разработчика?

И то же самое, что нужно сделать с запуском соответствующего API-интерфейса API-интерфейса dev / prod, который проверяет соответствующие пулы для аутентификации и отправляет сообщения в соответствующие таблицы DynamoDb? На данный момент я просто вручную меняю токены, а в API-шлюзе вручную переключаю, какой когнитивный пул аутентифицируется шлюзом API и какие таблицы они отправляют, что не очень практично.

0
VDog 13 Ноя 2017 в 20:48

1 ответ

Лучший ответ

Если вы открываете свою лямбду с помощью API Gateway, просто разверните ее в два этапа - этап prod, который вызывает лямбда prod, который обращается к prod Dynamodb, и этап разработки, который вызывает лямбда dev. В вашем приложении вам просто нужно изменить сценическое имя, и вы можете сделать это, установив его в Info.plist.

Что касается того, как получить токены для prod или dev автоматически, это зависит от того, как вы получаете эти токены. Например, вы можете создать ресурс / login в API Gateway, который принимает имя пользователя + пароль в качестве параметров и возвращает токены. Опять же, разверните его на двух этапах, которые используют разные пулы Cognito в бэкэнд-вызовах. Теперь вы можете использовать ту же переменную / свойство в своем приложении, чтобы получить сценическое имя и для получения токенов.

Итак, просто изменив значение одного свойства, вы можете переключаться между prod и dev в своем приложении.

1
agent420 14 Ноя 2017 в 19:59