web-dev-qa-db-ja.com

AWS CognitoユーザープールのアクセストークンとIDトークンの有効期限を変更する方法

AWS CognitoユーザープールのアクセストークンとIDトークンの有効期限を変更するかどうか、および変更する方法を説明するドキュメントが見つかりません。

documentation は、デフォルトで放出後1時間で期限切れになることを指定します。

有効期限を変更する方法はありますか?

22
Luca

現在、これをユーザープールに設定することはできません。彼らは皆のために1時間に設定されています。

22
Jeff Bailey

Cognitoは OAuth 2.0仕様 を使用します。期限切れのトークンを更新するには、Refresh Token値を使用して新しいIdトークンを取得する必要があります

  1. 開始時に認証を受けるには、ユーザーIDとパスワードがユーザーから収集され、Cognitoに送信されます。
  2. 2つのトークンを取得します。 1つはAPIに「アクセス」するために使用し、もう1つはアクセスの有効期限が切れたときに「更新」するために使用します。
  3. ユーザーにユーザーIDとパスワードの再入力を求める必要はありません。 「更新」トークンを使用するだけです。
  4. 「更新」トークンは新しいアクセストークンを取得するため、パスワードのクリアテキストを保存する必要はありません(セキュリティリスクが発生します)。

本当に簡単です。 トークンを更新するためのCognitoドキュメント の詳細情報

1
JG.

Cognitoコンソールからトークンの有効期限を設定できます_General Settings_/_App Clients_/_{your app}_/_Show Details_/Refresh token expiration (days)

https://docs.aws.Amazon.com/cognito/latest/developerguide/Amazon-cognito-user-pools-using-tokens-with-identity-providers.html

デフォルトでは、アプリユーザーがユーザープールにサインインしてから30日後に更新トークンの有効期限が切れます。ユーザープール用のアプリを作成するとき、アプリの更新トークンの有効期限(日数)を1〜3650の任意の値に設定できます。

現在、Webクライアントには1日未満のオプションはありません(非常に奇妙です)。

Mobile SDKを使用する場合

https://docs.aws.Amazon.com/cognito/latest/developerguide/Amazon-cognito-user-pools-using-tokens-with-identity-providers.html

Android=のMobile SDKは、IDおよびアクセストークンの最小有効期間を0〜30分の間の値に変更するオプションを提供します。Android API Referenceについては、AWS Mobile SDKのCognitoIdentityProviderClientConfigのsetRefreshThreshold()メソッドを参照してください。

1
Neil