Auth0 - 禁用用户配置文件缓存

Posted

技术标签:

【中文标题】Auth0 - 禁用用户配置文件缓存【英文标题】:Auth0 - Disable user profile cache 【发布时间】:2019-04-01 00:33:11 【问题描述】:

如何在 Auth0 中禁用用户配置文件缓存?

我已经能够更新用户配置文件 user_metadata。但问题是,Auth0 缓存了用户配置文件,因此只有在用户注销并再次登录后才能看到此更新。这是一个问题,因为我不想总是强制用户在每次打开我的应用程序时登录。我希望应用程序会记住会话,但在应用程序打开时仍会查询用户信息数据。缓存使这成为不可能。

这显然是由于“用户配置文件:深度详细信息”中记录的 auth0 缓存。

但是,同一份文档指出 “您可以通过 Auth0 仪表板或管理 API 删除用户的缓存配置文件。”我希望在 user_metadata 时删除用户信息缓存(最好是针对特定用户)已更新,但我一直无法在 Management API 中找到有关如何删除用户信息缓存的任何信息。

【问题讨论】:

【参考方案1】:

这个 Github issue 中讨论了同样的问题: https://github.com/auth0/auth0-spa-js/issues/274

tl;dr 是: 通过用户 https://github.com/patricknee 重新加载整个 SPA 来解决此问题

auth0 工程师给出以下说明: 现在,如果你想刷新 ID 令牌,你必须先调用 getTokenSilently( ignoreCache: true ) 来刷新缓存。如您所见,getIdTokenClaims() 只返回它已经知道的有关令牌的信息,而不刷新它。

“禁用用户配置文件缓存”会强制用户在每次请求时重新登录,所以我认为这是不可能的。

【讨论】:

以上是关于Auth0 - 禁用用户配置文件缓存的主要内容,如果未能解决你的问题,请参考以下文章

Git 配置用户设置“添加条目按钮”被禁用

缓存用户配置文件

天蓝色 Web 应用程序中 HttpContext 中的用户配置文件为空

Mybatis缓存

如何使用 JS API 将配置选项传递给 Auth0 托管页面?

Auth0.com,它是如何运作的?