【问题标题】:Can You Determine the Azure Refresh Token Expiration Date你能确定 Azure 刷新令牌的到期日期吗
【发布时间】:2018-04-12 01:43:21
【问题描述】:

很长一段时间以来,您通常可以将 Azure 刷新令牌的到期时间视为自上次使用后 14 天,最长可达最初获得后的 90 天。一段时间以来,产品组开始宣传更多关于将其更改为更长的价值以获得更好的用户体验的工作。有关详细信息,请参阅此处的博客:https://cloudblogs.microsoft.com/enterprisemobility/2017/08/31/changes-to-the-token-lifetime-defaults-in-azure-ad/ 和此处的预览文档:https://docs.microsoft.com/en-us/azure/active-directory/active-directory-configurable-token-lifetimes

作为依赖这些令牌的服务提供商,了解令牌在交给我们后的实际有效期对我们来说很重要。我目前在我们使用 ADAL 返回的 AuthenticationResult 中没有看到任何内容,该 ADAL 提供了有关刷新令牌最大年龄的任何信息。有什么方法可以通过编程方式确定吗?

【问题讨论】:

    标签: azure azure-active-directory adal


    【解决方案1】:

    Azure AD 发出访问令牌和刷新令牌后,您可以在声明中找到 JWT 令牌的生命周期。但是从 ADAL 3.X 版本开始,ADAL 不会公开刷新令牌,只要您调用 AcquireToken 并且请求的令牌需要更新,它就会自动使用它。

    默认情况下,刷新令牌会在 14 天后过期。您可以使用 Azure AD Powershell 命令创建和设置令牌生命周期策略,如文档中所示。

    【讨论】:

    • 谢谢南。声明中的到期日期是访问令牌,而不是刷新令牌。我知道您可以设置更改刷新令牌默认值的策略(它们在我上面发布的链接中);当您不知道正在使用什么策略时,我要解决的问题是这些值,因为令牌可能来自甚至不在您的租户中的用户。
    • 您不需要关心刷新令牌的生命周期,只需使用 AcquireTokenSilentAsync 函数,它会自动使用刷新令牌来更新访问令牌。当刷新令牌过期时,再次将用户重定向到AAD登录页面,在捕获异常区域进行重新认证。
    • 实际上我们确实需要关心刷新令牌的生命周期,这就是我问这个问题的原因。我们在交互式浏览器会话的上下文之外执行许多服务,因此我们需要知道令牌何时接近到期,以便我们可以要求用户返回并刷新它。
    猜你喜欢
    • 2021-05-10
    • 2021-12-21
    • 1970-01-01
    • 1970-01-01
    • 2012-02-15
    • 1970-01-01
    • 2020-11-16
    • 2021-08-25
    • 2020-06-03
    相关资源
    最近更新 更多