次の方法で共有


Microsoft ID プラットフォームの更新トークン

更新トークンを使用して、現在のアクセス トークンの有効期限が切れたときに、新しいアクセス トークンと更新トークンのペアを取得します。 クライアントは保護されたリソースにアクセスするためのアクセス トークンを取得するときに、更新トークンも受け取ります。

更新トークンは、他のリソースの追加のアクセス トークンを取得するのにも使用されます。 更新トークンは、ユーザーとクライアントの組み合わせにバインドされていますが、リソースまたはテナントには関連付けられていません。 クライアントは更新トークンを使用して、リソースとテナントの任意の組み合わせで、権限があればアクセス トークンを取得することができます。 更新トークンは暗号化され、Microsoft ID プラットフォームでのみ読み取ることができます。

トークンの有効期間

更新トークンの有効期間は、アクセス トークンよりも長くなります。 更新トークンの既定の有効期間は、シングル ページ アプリの場合は 24 時間、他のすべてのシナリオでは 90 日間です。 更新トークンは、使用するたびに新しいトークンに置き換えられます。 Microsoft ID プラットフォームでは、古い更新トークンが、新しいアクセス トークンを取得するために使用されるときに失効になりません。 古い更新トークンは、新しい更新トークンを取得した後に安全に削除します。 更新トークンは、アクセス トークンやアプリケーション資格情報と同様に安全に保存されている必要があります。

Note

spa として登録されたリダイレクト URI に送信される更新トークンは、24 時間後に期限切れになります。 初期更新トークンを使用して取得された追加の更新トークンは、その有効期限を引き継ぎます。そのため、24 時間ごとに新しい更新トークンを取得するために、対話型認証を使用して認可コード フローを再実行するようにアプリを準備する必要があります。 ユーザーは自分の資格情報を入力する必要はなく、通常は関連するユーザー エクスペリエンスも表示されず、アプリケーションを再度読み込むだけです。 ブラウザーは、ログイン セッションを表示するために、最上位フレームでサインイン ページにアクセスする必要があります。 これは、サード パーティの Cookie をブロックするブラウザーのプライバシー機能のためです。

トークンの有効期限

更新トークンは、タイムアウトと失効により、いつでも失効する可能性があります。 アプリは、ユーザーに対話型のサインイン プロンプトを表示し再度サインインさせることで、サインイン サービスによる失効を適切に処理する必要があります。

トークンのタイムアウト

更新トークンの有効期間を構成することはできません。 有効期間を短縮したり延長したりすることはできません。 そのため、確実に更新トークンをセキュリティで保護することが重要です。更新トークンは、有害なアクターによって公共の場所から、あるいはデバイスが侵害されている場合、デバイス自体から抽出される可能性があるためです。 実行できるいくつかの操作を次に示します。

すべての更新トークンが、トークンの有効期間ポリシーで設定された規則に従うわけではありません。 具体的には、シングル ページ アプリで使用される更新トークンは、あたかも 24 時間の MaxAgeSessionSingleFactor ポリシーが適用されているかのように常に 24 時間のアクティビティに固定されます。

トークンの失効

資格情報の変更、ユーザーの操作、または管理者の操作が原因で、サーバーが更新トークンを取り消す場合があります。 更新トークンは、機密クライアント (右端の列) に発行されるトークンと、パブリック クライアント (他のすべての列) に発行されるトークンの 2 つのクラスに分類されます。

Change パスワードに基づくクッキー パスワードに基づくトークン パスワードに基づかないクッキー パスワードに基づかないトークン 機密のクライアントのトークン
パスワードが期限切れ 存続 存続 存続 存続 存続
ユーザーによるパスワードの変更 取り消し 取り消し 存続 存続 存続
ユーザーがSSPRである 取り消し 取り消し 存続 存続 存続
管理者によるパスワードのリセット 取り消し 取り消し 存続 存続 存続
ユーザーが更新トークンを取り消す 取り消し 取り消し 取り消し 取り消し 取り消し
管理者がユーザーのすべての更新トークンを無効にする 取り消し 取り消し 取り消し 取り消し 取り消し
シングル サインアウト 取り消し 存続 取り消し 存続 存続

Note

リソース テナント内の B2B ユーザーの更新トークンは取り消されません。 このトークンはホーム テナントで取り消す必要があります。