Cognito председательствует на лямбде, чтобы сначала создать пользователя внутри, а затем в пуле пользователей

#authentication #aws-lambda #aws-api-gateway #amazon-cognito #amazon-api-gateway

Вопрос:

У нас есть существующая система, в которой мы создаем идентификатор пользователя (бд) внутри и используем его в таблицах бд в качестве дополнительной целостности. Мы хотим перейти на Cognito и Api-шлюз для аутентификации и авторизации. Тем не менее, мы хотели бы сохранить существующую идентификацию (идентификатор пользователя в БД) внутри, как только мы пройдем аутентификацию на шлюзе Api с помощью Cognito. Для этого мы думаем использовать Лямбда-триггер предварительной регистрации, чтобы сначала создать пользователя в нашей системе с помощью этого, а затем Cognito создаст пользователя в пуле пользователей. Таким образом, мы можем связать информацию о пользовательском атрибуте (идентификаторе пользователя) с помощью лямбда-кода предварительной генерации токенов, который будет передан шлюзу Api с идентификатором.

Является ли это правильным подходом для создания пользователя сначала в нашей системе (с помощью лямбды предварительной регистрации), а затем в Cognito?

Комментарии:

1. Это будет коротко, но: Конечно, почему бы и нет? Если вам нужна эта информация уже в Cognito, то вполне разумно сначала создать своего пользователя в вашей собственной системе и только тогда, когда это было успешно, — в Cognito.

2. Спасибо @AleksanderWons. Но является ли это правильным подходом? Я думаю, это связано с тем, что API регистрации поддерживает все необходимые параметры (например, метаданные клиента) для передачи данных на сервер для регистрации.

3. Я бы сказал — используйте то, что вам кажется лучше. Если вы можете легко передать дополнительный идентификатор через метаданные — идите по этому пути. Но если проще вызвать API создания пользователей в вашей системе, чем уже предоставлять его в метаданных — идите по этому пути. Я считаю, что здесь нет единого для всех размера.