Я использую AWS Федеративные удостоверения Cognito для сопоставления токенов от произвольных поставщиков удостоверений с токенами сеансов и временными учетными данными. Но очень важно, чтобы мы получили претензии эмитента и субъекта для каждого из этих идентификаторов либо в шлюзе API, либо в наших целевых микро-сервисах.
С этой целью я пытаюсь извлечь претензии эмитента и субъекта из AWS Токен сеанса с использованием шаблонов сопоставления шлюза API. Все API подписаны с помощью AWS Signature Version 4. Но, чтобы было ясно, очень немногие из наших идентификаторов исходят от AWS Cognito User Pools, но от различных надежных провайдеров идентификации, которые мы настроили в AWS Cognito Federated Identities.
Я обращаюсь к следующей странице за инструкциями: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html
Что я видел до сих пор:
- $ context.authorizer .claims.property: полезно только для идентификаторов из пулов пользователей Cognito
- $ context.identity.cognitoIdentityId: получает ключ федеративных идентификаторов Cognito для идентификации
Я что-то пропустил?
- Можно ли извлечь издателя / субъекта из контекста шаблона сопоставления для произвольной идентичности?
- В качестве альтернативы, можно ли запросить федеративные идентификаторы Cognito для эмитента / субъекта, используя CognitoIdentity, полученный через $ context.identity.cognitoIdentityId
Обратная связь очень ценится, спасибо, Рэнди