在不刷新令牌的情况下刷新声明

Refreshing claims without refreshing token

我们正在使用 IdentityServer3 来验证我们的用户。我们 运行 它在主应用程序 API 的单独 Web 应用程序上。索赔有层次结构 - 例如,场地、工厂和设备。用户可能对工厂中的一件设备提出索赔,但对整个工厂或站点没有索赔。

索赔的分配是通过后台作业处理的。

当用户创建站点、工厂或设备时,就会为他们创建声明,这也可能已分发给其他用户。

当请求进入引擎时 API 我们需要确保我们正在查看当前用户的最新声明集。

有没有办法保证每次都把最新的索赔发给API?

如果您需要的数据经常更改,那么建议不要将它们作为声明放入令牌或 cookie 中。相反,只需将用户的唯一 ID(子声明)放入令牌或 cookie 中,然后根据需要从数据库中查找其余部分。如果 perf 有问题,那就做缓存。