大佬教程收集整理的这篇文章主要介绍了刷新令牌是否与 OIDC IdentityServer Azure AD SSO 实施相关?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个 IDentityServer4 的实现,它与 Azure AD 连接以进行身份验证 (OIDC)。在回调方法中,使用 IDentityServertools,我正在生成 access_token 并将用户重定向到 SPA。然后 SPA 将 access_token 存储到 localstorage 中并将其用于身份验证。@H_874_3@
通常,当我的 SPA 应用访问 IDentityServer4 的令牌端点时,它会提供 access_token 和 refresh_token,然后使用 refresh_token 重新验证返回的用户。@H_874_3@
在这种使用 Azure AD 的 SSO 的情况下,我是否需要手动生成 refresh_token?如果是,我可以在默认实现的基础上进行构建,这不是问题 (However,the docs suggest against of changing the IrefreshTokenservice implementation or building something from scratch)@H_874_3@
我真正的问题是,这里需要 refresh_token 吗?因为 refresh_tokens 存储在数据库中并且永远不会被删除,一段时间后,这些 refresh_tokens 表会膨胀(现在它已经有 80k 行)。用户应该点击 SAP successfactor 内的一个小磁贴——这将打开 Azure 的登录/同意屏幕,或者将直接将用户带到主页面,zhe 将在那里回答问题并完成。所以这几乎不是 2-3 分钟的业务。因此,我可以继续为每次点击从我的 IDentityServer4 生成 access_tokens,因为如果用户从 SAP 的 successfactor(或与 Azure 链接的任何其他应用程序)注销,我不希望用户在浏览器中保持身份验证。@H_874_3@
请指教,我是否应该生成refresh_token?这是一个好的架构吗?@H_874_3@
访问令牌用于证明允许请求访问资源(例如来自ms的api或您的自定义api),刷新令牌用于刷新访问令牌以确保访问令牌未过期。默认情况下,访问令牌将在一个小时内过期,而刷新令牌有 90 天。@H_874_3@
此时我们不难发现,refresh token是为一些特殊场景设计的,因为refresh token的过期时间比access token的过期时间长很多,但是我们也可以通过其他方式生成一个新的access token,比如使用 msal 或重新登录。@H_874_3@
正如您在问题中所说,您可以一键生成访问令牌,并且您不希望用户长时间保持身份验证。所以我认为你没有必要使用刷新令牌。@H_874_3@
以上是大佬教程为你收集整理的刷新令牌是否与 OIDC IdentityServer Azure AD SSO 实施相关?全部内容,希望文章能够帮你解决刷新令牌是否与 OIDC IdentityServer Azure AD SSO 实施相关?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。