独立身份服务器 4 用户名查找
Standalone identity server 4 Username lookup
从独立身份服务器 4 获取用户详细信息的推荐方法是什么?
我有一个 api 和身份验证服务器作为单独的实体。 api 中的很多资源都附加了授权用户 ID,而在 UI 中我想显示真实的用户名。虽然有一个明显的解决方案,向身份服务器添加 api 方法,这些方法将 return 这些基于提供的 id,但我想知道是否有关于此的最佳实践。
我对在 api 中公开用户信息有一些奇怪的感觉,即使它是基于 id 的查找。理论上任何人都可以获得这些 ID。我只对 given_name、family_name 和用户名声明感兴趣,所以也许这些 public 就足够了,我想多了。
其他选项是设置服务器到服务器的通信,这会增加负载,所以我对此不太感兴趣。你是怎么处理这个的?
我们有一个身份验证服务器 (IdSrvr4) 和一个授权服务器。
如果您说了用户的令牌,请使用 built-in Identity Server UserInfo Endpoint。
对于任何定制,我们都在授权服务器中实施。因此,如果您想要其他用户的 given_name 和 family_name,我们有一个自定义端点。该自定义端点使用自定义授权过滤器并直接调用数据库(我们使用 EF 和 MS Identity)。
因评论而更新。
我们选择了 2 个服务器,1 个用于身份验证,1 个用于授权。此设计部分参考了这篇标题为 "Identity vs Permissions" 并由 IdentityServer4 的作者撰写的文章。
从独立身份服务器 4 获取用户详细信息的推荐方法是什么?
我有一个 api 和身份验证服务器作为单独的实体。 api 中的很多资源都附加了授权用户 ID,而在 UI 中我想显示真实的用户名。虽然有一个明显的解决方案,向身份服务器添加 api 方法,这些方法将 return 这些基于提供的 id,但我想知道是否有关于此的最佳实践。
我对在 api 中公开用户信息有一些奇怪的感觉,即使它是基于 id 的查找。理论上任何人都可以获得这些 ID。我只对 given_name、family_name 和用户名声明感兴趣,所以也许这些 public 就足够了,我想多了。
其他选项是设置服务器到服务器的通信,这会增加负载,所以我对此不太感兴趣。你是怎么处理这个的?
我们有一个身份验证服务器 (IdSrvr4) 和一个授权服务器。
如果您说了用户的令牌,请使用 built-in Identity Server UserInfo Endpoint。
对于任何定制,我们都在授权服务器中实施。因此,如果您想要其他用户的 given_name 和 family_name,我们有一个自定义端点。该自定义端点使用自定义授权过滤器并直接调用数据库(我们使用 EF 和 MS Identity)。
因评论而更新。 我们选择了 2 个服务器,1 个用于身份验证,1 个用于授权。此设计部分参考了这篇标题为 "Identity vs Permissions" 并由 IdentityServer4 的作者撰写的文章。