Вопросы

AWS Cognito — PreTokenGeneration без параметра clientMetadata при обновлении токена

Настройка:

На стороне клиента мы используем библиотеку Auth от Amplify. При входе в систему мы устанавливаем некоторые clientMetadata просто:

async function login(username, password, metadataValue) {
    try {
        Auth.configure({clientMetadata: { metadataKey: metadataValue }})
        await Auth.signIn(username, password)
    } catch(e){
        console.log(e)
    }
}

Это работает, как ожидалось, и мы получаем clientMetadata в нашем PreTokenGeneration Lambda в event.request.clientMetadata. Мы используем эти данные для динамической генерации утверждений нашего токена, и все в порядке (мы установили метаданные в Auth.configure(), поэтому Amplify отправит их с последующими запросами на обновление токена).

Проблема:

Через 1 час (истечение срока действия токена) срабатывает обновление токена. Теперь в запросе, который Amplify делает для обновления наших токенов, мы видим, что clientMetadata действительно отправляется как часть запроса на обновление токена (на самом деле, похоже, что это было , недавно решенное командой Amplify).

Таким образом, поскольку метаданные отправляются, как ожидалось, это не похоже на проблему с Amplify.

Читать:
Использование разных учетных данных aws в конвейере Bitbucket

Однако clientMetadata не отображается как часть запроса в нашем PreTokenGeneration Lambda, который запускается обновлением, и поэтому наш токен не содержит ожидаемых утверждений.

Любая помощь с этим будет чрезвычайно признательна.

Примечание.

Это сообщение о стеке связано, однако, похоже, это было результатом ошибки Amplify, которая с тех пор устранена.

Похожие записи

Полный путь в OS X

admin

Lex & Yacc: gcc при компиляции y.tab.c выдает много ожидаемых ошибок токена

admin

Закрытие нового окна консоли, запущенного из пакетного сценария, предлагает завершить сценарий

admin

Показывать только те товары, которые есть в наличии, на странице одного товара WooCommerce

admin

Возникли проблемы с перемещением объекта на экране в Python с помощью pygame

admin

Перенаправление портов отладки для удаленного использования записной книжки Jupyter

admin