web-dev-qa-db-ja.com

AWS Cognito IdTokenを取り消すことはできますか?

ユーザー認証後に取得した_AWS Cognito IdToken_をusernamepasswordで取り消すことはできますか?

私のユースケースでは、_API Gateway_エンドポイントへのアクセスは、_Cognito User Pool Authorizer_の引数としてIdTokenを受け取る_request.headers.Authorizer_によって制限されています。現在のユーザーのIdTokenをブロックする方法を探しています。

AWSJavaScriptSDKには、accessTokenを取り消す関数globalSignOut({AccessToken})があります。 http://docs.aws.Amazon.com/AWSJavaScriptSDK/latest/AWS/CognitoIdentityServiceProvider .html#globalSignOut-property

IdTokenを同じまたは同様の方法で取り消すことはできますか?

興味のある方:_aws-sdk-js_に問題を作成しました: https://github.com/aws/aws- sdk-js/issues/1687

10
kmnowak

@ AllanFly12と記載されている topic

IdTokenはJSON Web Key Tokenとして表されるため、秘密鍵または秘密鍵/公開鍵のペアで署名されます。これはIdTokenを取り消しても、配布された公開鍵を取り消す方法はありませんです。 IdTokenの有効期間は短く、短時間で有効期限が切れます。

それは私の疑問を解決しました。

2
Krzysztof Nowak

あなたは正しいです。 globalSignOut呼び出しは、idトークンを除くすべてのトークンを取り消します。 idトークンは、ユーザープール外のサービスで一般的に使用されるベアラートークンです。私はCognitoチームに所属しています。IDトークンを使用するサービスに、それらのIDトークンが有効で無効なトークンを受け入れないかどうかを確認するための統合ロードマップがカレンダーにあります。

3
Ionut Trestian

GlobalSignOutおよびAdminUserGlobalSignOut AP​​Iは、ユーザーのすべてのトークンを取り消します。

  • ユーザーの更新トークンを使用して、ユーザーの新しいトークンを取得することはできません。
  • ユーザーのアクセストークンは、ユーザープールサービスに対して使用できません。
  • ユーザーは、新しいトークンを取得するために再認証する必要があります。

ユーザーのすべてのトークンの取り消し を参照してください。

1
Khalid T.

そうではない。アプリケーションのセキュリティを真剣に考えている場合、最低限の有効期間は60分ですが、それが記載されているドキュメントがあっても受け入れられません。

AWS Cognitoの欠陥について説明した記事を次に示します。 AWS Cognitoを認証システムとして使用する前に知っておくべき3つのこと

0
Cleriston