独自に開発したアプリケーションのトークン有効期間の既定値を変更する方法

この記事では、Azure AD PowerShell を使用して、アクセス トークンの有効期間ポリシーを設定する方法を示します。 Azure AD Premium では、非機密クライアントに対して発行されたトークンの有効期間をアプリ開発者とテナント管理者が構成できます。 トークンの有効期間ポリシーは、テナント全体またはアクセスされるリソースに対して設定されます。

重要

2020 年 5 月以降、テナントで更新とセッション トークンの有効期間を構成できなくなります。 2021 年 1 月 30 日以降は、Azure Active Directory でポリシー内の既存の更新とセッション トークンの構成が考慮されなくなります。 非推奨となった後も、アクセス トークンの有効期間を構成することはできます。 詳細については、Azure AD の構成可能なトークン有効期間に関する記事を参照してください。 Azure AD の条件付きアクセスに認証セッションの管理機能を実装しました。 この新機能を使用し、サインインの頻度を設定して更新トークンの有効期間を構成できます。

アクセス トークンの有効期間ポリシーを設定するには、Azure AD PowerShell モジュールをダウンロードします。 Connect-AzureAD -Confirm コマンドを実行します。

ここでは、ユーザーが、Web アプリで頻繁に認証を必要とするポリシーの例を示します。 このポリシーにより、Web アプリのサービス プリンシパルへのアクセスの有効期間が設定されます。 ポリシーを作成し、これをサービス プリンシパルに割り当てます。 サービス プリンシパルの ObjectId も取得する必要があります。

$policy = New-AzureADPolicy -Definition @('{"TokenLifetimePolicy":{"Version":1,"AccessTokenLifetime":"02:00:00"}}') -DisplayName "WebPolicyScenario" -IsOrganizationDefault $false -Type "TokenLifetimePolicy"

$sp = Get-AzureADServicePrincipal -Filter "DisplayName eq '<service principal display name>'"

Add-AzureADServicePrincipalPolicy -Id $sp.ObjectId -RefObjectId $policy.Id

次のステップ