Безсерверный фреймворк Cognito Userpool Pre Token Generator

У меня есть функция PreTokenGenerator, которая добавляет дополнительную претензию к токену id.

В моем serverless.yml у меня есть следующее определение.

functions:
  issueAuthToken:
    handler: src/handlers/cognitoPreToken.handler
    events:
      - cognitoUserPool:
        pool: ${self:provider.stage}-user-pool
        trigger: PreTokenGeneration

Он запускается и развертывается, но не подключает триггер пула пользователей в пуле пользователей (см. Ниже)

Как я могу настроить этот триггер? Документация, кажется, довольно не хватает, когда дело доходит до триггеров Cognito

1 ответ

Предварительная генерация токенов в настоящее время недоступна в UserPool LambdaConfig и, следовательно, не поддерживается CloudFormation (которую использует безсерверный фреймворк). На данный момент его можно настроить только через консоль или AWS CLI.

Согласно документации Serverless, вы должны сообщить атрибуту existing: trueи это очень важно, если вы не хотите создавать новый пул пользователей Cognito с использованием существующих пулов.

Также согласно этому форуму эта функция теперь рассматривается AWS CloudFormation AWS Forum

Это недавняя функция, реализованная Serverless, поэтому убедитесь, что у вас установлена ​​последняя версия.

Вот мой код конфигурации без сервера:

preTokenGenerator:
    name: ${self:service}-${self:provider.stage}-preTokenGenerator
    description: Lambda service to list blog articles
    role: LambdaRole
    handler: functions/general/blog.list
    events:
      - cognitoUserPool:
          pool: my-pool-name
          trigger: PreTokenGeneration
          existing: true

Я буквально продублировал существующую функцию и изменил ее триггер.

когнито-лямбда-функция

Другие вопросы по тегам