【发布时间】:2018-04-12 14:06:16
【问题描述】:
我对在这种情况下会发生什么感到有些困惑。假设您有带有 Asp.net Identity Core (IC) 的 Identity Server 4 (IS4)。用户登录后,您将获得个人资料信息(姓名、电子邮件等)。
现在客户端可能会存储该信息。现在如果用户更改他们的信息(例如更改他们的姓名)会发生什么。
客户如何知道这一变化?
【问题讨论】:
标签: asp.net-identity identityserver4
我对在这种情况下会发生什么感到有些困惑。假设您有带有 Asp.net Identity Core (IC) 的 Identity Server 4 (IS4)。用户登录后,您将获得个人资料信息(姓名、电子邮件等)。
现在客户端可能会存储该信息。现在如果用户更改他们的信息(例如更改他们的姓名)会发生什么。
客户如何知道这一变化?
【问题讨论】:
标签: asp.net-identity identityserver4
我认为 IdentityServer 中没有触发器来通知您的应用程序。这并不意味着你不能构建一些东西来做到这一点。一个简单的解决方案是注册您的应用程序,以便在用户配置文件发生更改时通知它。
否则,您可以检查何时收到令牌。您可以使用具有过期时间的内存中用户列表(将其设置为一天左右)。如果用户不在列表中,请检查 userinfo 端点。您不能使用令牌中的信息,因为那不是最近的。不在用户列表中并不意味着该令牌是最近发行的。
【讨论】:
我认为userinfo endpoint 可以帮助你实现你想要的。只要你有一个有效的访问令牌,它就可以给你用户声明
【讨论】: