Есть ли способ немедленно отозвать выданный токен доступа Cognito Client Credentials? - PullRequest
0 голосов
/ 10 октября 2018

AWS Cognito имеет методы API GlobalSignout и AdminUserGlobalSignout , которые можно использовать для отзыва токенов доступа и обновления, выданных пользователю в пуле пользователей (но не токен ID).Однако токен доступа, выданный с использованием потока учетных данных клиента, не имеет ассоциированного пользователя.GlobalSignout завершается с ошибкой, и AdminUserGlobalSignout требует имя пользователя, которого в данном контексте нет.

Токен недолговечен, но в ситуации, когда токены доступа были скомпрометированы, он может быть отозванпохоже на то, что описано в RFC 7009 . Было бы здорово.

Я не нашел ничего, что указывало бы на возможность явного отзыва токена до истечения срока его действия.Есть ли возможность сделать это?

1 Ответ

0 голосов
/ 27 августа 2019

Может быть, однажды Cognito получит эту и другие важные функции, но это не сегодня.Лучший совет - проверить токены в своем коде авторизации.

Когда вы будете готовы отозвать токены пользователя, сделайте вызов CognitoIdentityServiceProvider.globalSignOut ().

Затем, где бы вы ни работалиДля проверки токена добавьте дополнительную проверку с помощью вызова CognitoIdentityServiceProvider.getUser ().Если вызов успешен, токены не были отозваны.В случае сбоя они не авторизуются.

Кстати, поле 'sub' в токене доступа - это уникальный идентификатор, который можно сопоставить с идентификатором токена.Хотя имя пользователя Cognito может измениться, это значение должно оставаться постоянным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...