【问题标题】:After user changed password, how long does ADAL's cached access token expired for iOS用户更改密码后,iOS 的 ADAL 缓存访问令牌过期多长时间
【发布时间】:2016-09-02 07:52:43
【问题描述】:

我遇到了一个奇怪的问题。

我登录 ADAL 没有问题

authContext.acquireTokenWithResource(resourceUrl, clientId: clientId, redirectUri: redirectUri, promptBehavior: AD_PROMPT_ALWAYS, userId: nil, extraQueryParameters: "nux=1&login_hint=desmondkoh@")

authContext.acquireTokenSilentWithResource(resourceUrl, clientId: clientId, redirectUri: redirectUri)

但是

如果用户更改了密码,我仍然可以通过acquireTokenSilentWithResource登录

所以我的问题是 用户更改密码后,iOS 缓存中的访问令牌会过期多久?

干杯

设计

【问题讨论】:

  • 一个 AAD 令牌需要每小时刷新一次;所以我会说在更改密码后等待一个小时,看看会发生什么

标签: ios azure adal


【解决方案1】:

密码更改最长可能需要一个小时才能强制用户在特定应用程序中重新进行身份验证。

密码更改不会使任何访问令牌失效。所有访问令牌都有一个特定的到期时间,对于 AAD 令牌通常为一小时,并且在达到该到期时间之前它们将保持有效。访问令牌过期后,下一个 acquireToken 请求将导致 ADAL 尝试在 AAD 将刷新令牌交换为新的访问令牌。如果用户更改了密码,则此时可能会发生故障。 AAD 服务会注意到与刷新令牌关联的用户更改了密码,并拒绝静默获取新访问令牌的请求。

【讨论】:

  • 感谢 cmets!实际上,AAD 令牌将在那之后过期。
猜你喜欢
  • 1970-01-01
  • 2018-04-01
  • 2021-09-15
  • 1970-01-01
  • 2012-07-09
  • 2021-01-14
  • 1970-01-01
  • 2020-06-07
  • 2019-10-15
相关资源
最近更新 更多