【发布时间】:2019-01-30 09:08:39
【问题描述】:
我正在将 Web 应用程序/API azure 应用程序用于 Web 应用程序,并使用带有 client_id 和 client_secret 的授权授予流来获取访问/刷新令牌(使用 rest API),一切正常,除了刷新令牌有90 天后过期。 如 azure 文档中所述,期望拥有一个永不过期(除非明确撤销)的 refresh_token。
这是 Microsoft AzureAD 文档所说的: (https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-configurable-token-lifetimes#refresh-tokens)
带有机密客户端刷新令牌的令牌生命周期 机密 客户端是可以安全存储客户端密码的应用程序 (秘密)。他们可以证明请求来自受保护的 客户端应用程序,而不是来自恶意行为者。例如,一个网络 应用程序是机密客户端,因为它可以将客户端机密存储在 网络服务器。它没有暴露。因为这些流量更多 安全,颁发给这些流的刷新令牌的默认生命周期 直到撤销,不能使用策略更改,也不会被 因自愿密码重置而被撤销。
这是基于 RFC6749 的机密客户端定义: (https://www.rfc-editor.org/rfc/rfc6749#section-2.1)
能够为其保密的客户 凭据(例如,在安全服务器上实现的客户端 限制访问客户端凭据),或能够安全 使用其他方式进行客户端身份验证。
我现在在刷新令牌请求时遇到的错误:
AADSTS700082: The refresh token has expired due to inactivity. The token was issued on 2018-10-19T17:26:59.8511467Z and was inactive for 90.00:00:00.
【问题讨论】:
标签: azure oauth-2.0 azure-active-directory refresh-token