我使用 AcquireToken 方法创建了访问令牌(默认为1小时到期)并尝试使用以下命令登录
Add-AzureRmAccount -AccessToken "string" -AccountId "string"
通过成功登录,可以按预期生成订阅详细信息。 在此之后,我尝试更新以下政策:
Set-AzureADPolicy -ObjectId <ObjectID FROM GET COMMAND> -DisplayName TenantDefaultPolicyUpdatedScenario -Definition @("{`"TokenLifetimePolicy`":{`"Version`":1,`"MaxAgeSingleFactor`":`"2.00:00:00`"}}")
但仍然令牌在1小时内到期。
我错过了什么吗? 更新令牌的生命周期的确切程序和顺序是什么? 设置策略后如何确保令牌生存时间?
答案 0 :(得分:0)
根据this article,您应该设置 AccessTokenLifetime 属性。请尝试使用以下命令。
Set-AzureADPolicy -Id <ObjectId FROM GET COMMAND> -DisplayName "OrganizationDefaultPolicyUpdatedScenario" -Definition @('{"TokenLifetimePolicy":{"Version":1,"AccessTokenLifetime":"1.00:00:00"}}')
以下是该文档的摘录。
访问令牌生存时间
字符串: AccessTokenLifetime
影响:访问令牌,ID令牌
摘要:此策略控制此资源的访问权限和ID令牌被视为有效的时间。减少访问令牌生命周期属性可以降低恶意行为者长时间使用访问令牌或ID令牌的风险。 (这些令牌不能被撤销。)权衡是性能受到不利影响,因为令牌必须更频繁地更换。
MaxAgeSingleFactor 属性影响刷新令牌。
单因素刷新令牌最大年龄
字符串: MaxAgeSingleFactor
影响:刷新令牌
摘要:此策略控制用户使用刷新令牌在上次成功通过仅使用单个因子进行成功验证后获取新访问/刷新令牌对的时间。用户验证并接收新的刷新令牌后,用户可以在指定的时间段内使用刷新令牌流。 (只要当前刷新令牌未被撤销,并且它不会被闲置的时间超过非活动时间,就是如此。)此时,用户被迫重新进行身份验证以接收新的刷新令牌。
减少最长时间会强制用户更频繁地进行身份验证。由于单因素身份验证被认为不如多因素身份验证安全,因此我们建议您将此属性设置为等于或小于Multi-Factor Refresh Token Max Age属性的值。
答案 1 :(得分:0)
注意:访问令牌没有任何过期是一个主要的安全风险,Azure中不允许这样做。
访问令牌的默认到期时间为 1小时,最低为10分钟,最长为1天。
有关详情,请参阅“Configurable token lifetimes in Azure Active Directory (Public Preview)”.