Обратите внимание на следующий AWS вызов Cognito CLI:
aws cognito-identity get-open-id-token-for-developer-identity --identity-pool-id "us-east-1:1c816dde-8cc7-4f33-9469-743e91c00cf4" --logins login.junk=1
Возвращенный декодированный токен выглядит примерно так:
Header:
{
"kid": "us-east-11",
"typ": "JWS",
"alg": "RS512"
}
Payload:
{
"sub": "us-east-1:6d49167a-e7e0-472a-90af-6b6eaaf4a541",
"aud": "us-east-1:1c816dde-8cc7-4f33-9469-743e91c00cf4",
"amr": [
"authenticated",
"login.junk",
"login.junk:us-east-1:1c816dde-8cc7-4f33-9469-743e91c00cf4:1"
],
"iss": "https://cognito-identity.amazonaws.com",
"exp": 1578797241,
"iat": 1578796341
}
Signature: Proper RSASHA512 signature
Я предполагаю, что мы можем обеспечить токен подписывается AWS (https://cognito-identity.amazonaws.com) через jwks: https://cognito-identity.amazonaws.com/.well-known/jwks_uri и некоторой стандартной проверкой generi c jwt, как видно: https://auth0.com/docs/tokens/guides/validate-jwts
Вопросы:
1) Является ли aws идентификатор идентификатора пула идентификаторов cognito глобально уникальным во всех пулах идентификаторов глобально? Лучшее, что я мог найти в документации Cognito, это то, что id-идентификатора пула идентификаторов имеет вид
"Идентификатор пула идентификаторов в формате REGION: GUID."
Что также Напрашивается вопрос: может ли кто-нибудь еще получить такой же идентификатор пула идентификаторов? IE. через тикет в службу поддержки aws или какой-то API, о котором я не знаю. В принципе, может ли кто-то получить доступ к одному и тому же идентификатору пула идентификаторов?
2) Заявка аудитории (aud) в полезной нагрузке равна идентификатору идентификатора пула в приведенном выше примере. Возможно ли кому-либо, кроме лица с AWS учетными данными разработчика для указанного идентификатора пула идентификаторов c (в том же идентификаторе учетной записи), получить эту аудиторию в полезной нагрузке из действительного подписанного токена из aws?