问题描述
我们正在尝试使用下面的Powershell cmdlet将访问令牌的到期时间配置为8小时,但并没有在应用程序上强制实施。在组织上应用时有效。级别(即-IsOrganizationDefault $ true)。
New-AzureADPolicy -DeFinition @('{"TokenLifetimePolicy":{"Version":1,"AccesstokenLifetime":"08:00:00"}}') -displayName $policyName -IsOrganizationDefault $false -Type "TokenLifetimePolicy"
$app = Get-AzureADApplication -Filter "displayName eq '$applicationName'"
Add-AzureADApplicationPolicy -Id $app.ObjectId -RefObjectId $policy.Id
*注意:2020年5月30日之后,新租户将无法使用可配置令牌生存期策略来配置会话和刷新令牌。但是,您可以在弃用后仍然配置访问令牌的生存期。
需要帮助将Azure AD中的oAuth / OIDC应用程序的访问令牌过期时间配置为8小时(默认为1小时)。
解决方法
根据我的测试,它目前仅适用于-IsOrganizationDefault $true
,无论使用Add-AzureADServicePrincipalPolicy
还是Add-AzureADApplicationPolicy
,如果-IsOrganizationDefault $false
都不起作用。
当前,配置令牌生命周期策略功能仍在预览中。我认为此功能可能尚未完全实现,这引起了问题。 Microsoft应该在将来实施它。
,问题已解决。创建了一个8小时的AccessTokenLifetime策略。将TokenLifetimePolicy应用到Application ServicePrincipal。在Azure AD中为应用程序设置应用程序ID URI,并将其作为授权请求中的范围(而不是MS Graph默认范围)传递给它,以生成8小时访问令牌。