0

Я смотрю на этих чертежах: https://github.com/awslabs/aws-apigateway-lambda-authorizer-blueprints/blob/master/blueprints/nodejs/index.jsAWS APIGateway Lambda Пользовательского Authrozier principalId

Что такое principalId для и как она создается?

Я вижу код вроде этого:

// this could be accomplished in a number of ways: 
// 1. Call out to OAuth provider 
// 2. Decode a JWT token inline 
// 3. Lookup in a self-managed DB 
var principalId = 'user|a1b2c3d4' 

Вопросы у меня есть:

  1. Это уникальный для каждого пользователя? У меня есть dynamodb, где таблица пользователей имеет уникальный идентификатор пользователя.
  2. Как его использовать в лямбда в качестве переменной окружения в лямбда-консоли AWS?
  3. Какова основная цель этого в autnorizer?

Спасибо за чтение и ответ.

ответ

0
  1. Да, смотрите: https://forums.aws.amazon.com/thread.jspa?messageID=703105
  2. Основываясь на ответах на другие вопросы 2 вы, вероятно, не хотите, чтобы это переменная окружения, если я не искажая, что вы просите.
  3. См выше сообщение форума

    principalId предназначен для представления долгосрочного идентификатора для любого объект в настоящее время разрешен делать вызов API.

+0

Спасибо Я буду читать в этом сегодня и посмотреть, как это работает – cdub

+0

У меня есть вопрос по этому поводу. Могу ли я использовать этот токен, который возвращается из getOpenIdTokenForDeveloperIdentity в качестве принципала? Он всегда возвращается как один и тот же токен для одного и того же пользователя после входа в систему. – cdub

+1

Другое примечание: var mainId = event.authorizationToken; ? Просто любопытно. – cdub