Доступ к пользовательским атрибутам Cognito в лямбда-функции после подтверждения - PullRequest
0 голосов
/ 26 ноября 2018

У меня есть лямбда-функция после подтверждения, которая записывает информацию об атрибутах пользователя в таблицу DynamoDB.Мне удалось получить доступ к стандартным полям пользовательских атрибутов в параметре "event", выполнив такие действия, как

event.request.userAttributes.sub

, но попытка запустить

event.request.userAttributes.role //where role is the name of my custom attribute

, похоже, не работает,Кто-нибудь знает, каков правильный синтаксис для этого?И мне нужно установить какие-либо специальные разрешения на чтение для пользовательских атрибутов?Я создал этот пользовательский атрибут спустя долгое время после того, как изначально создал этот пул пользователей, если это что-то меняет.

1 Ответ

0 голосов
/ 26 ноября 2018

Все пользовательские атрибуты имеют префикс custom: ( Документация - Пользовательские атрибуты ).

Поэтому (я предполагаю, что вы используете JavaScript здесь - если не стесняетесьчтобы указать, и я могу изменить этот пример), вам нужно будет использовать:

event.request.userAttributes['custom:role']

Вам не нужно устанавливать никаких специальных разрешений на чтение - все атрибуты пользователя возвращаютсяв PostConfirmation лямбде.

...