是否有任何内置管理器用于处理来自 ConfigurationDbContext(Clients, Resources...) 的表的 CRUD 操作?
Posted
技术标签:
【中文标题】是否有任何内置管理器用于处理来自 ConfigurationDbContext(Clients, Resources...) 的表的 CRUD 操作?【英文标题】:Is there any built-in manager for handling CRUD operations of tables from ConfigurationDbContext(Clients, Resources...)? 【发布时间】:2020-08-03 02:18:37 【问题描述】:我对这些东西很陌生,所以我在理解和弄清楚使用哪种方法方面存在一些问题。
目前,我在我的项目中使用 .NET Core 3.1 和 IdentityServer4。我正在配置我的授权服务器,并且我有一些用于创建用户、客户端等的控制器。
在处理用户的控制器中,我将 UserManager 用于所有 CRUD 操作。这比使用 dbContext 更好吗? 我也创建了用于处理客户端的控制器。为此,我使用了 ConfigurationDbContext,因为我还没有找到某种内置管理器来处理这个问题。
你有更好的解决方案吗?我正在考虑为此创建经理。有没有这样的例子? 我想创建以类似方式运行的控制器,以具有类似的行为、响应结果、验证等。
感谢您的帮助。
【问题讨论】:
您的意思是您希望像客户端这样的实体像 UserManager 那样行事? 是的,我很想为客户或身份资源等提供像用户管理器这样的东西。 对于客户端,您应该使用 Scaffolding 来生成您的 CRUD 操作,但对于身份资源,您不需要它,因为它只是一个列表,您可以在应用程序 JSON 中设置它,因为用户不需要处理它,因为这只是应用程序客户端的配置。 非常感谢您的回答! 这有帮助吗?你能把它标记为你问题的答案吗? 【参考方案1】:据我所知,UserManager 带有 ASP.Net 核心身份,这是 Microsoft 提供内置功能来管理用户、密码、配置文件数据、角色等的方式。 https://docs.microsoft.com/en-us/aspnet/core/security/authentication/identity?view=aspnetcore-3.1&tabs=visual-studio
您可以在 IClientStore 和 IResourceStore 等 IdentityServer4 命名空间下找到 Store,因此这些接口对 Identity 中的用户具有类似的 userManager 理念。 这是源代码https://github.com/IdentityServer/IdentityServer4/tree/master/src/Storage/src/Stores
总之有一个AdminUi,你可以看看你是否发现有帮助https://www.identityserver.com/documentation
【讨论】:
感谢您的回答。那么最好的方法是为此创建自己的经理? 要管理您的用户,您应该使用 Identity,因为它会附带您需要的大多数用例。到目前为止,管理您的客户端或身份资源是手动完成的,因为这些配置不会像用户那样更改,但是身份服务器有一个管理 ui identityserver.com/documentation 我没有使用它,但看看你是否发现了一些有用的东西. 我用更多细节编辑我的答案,我以为你在谈论你的应用程序客户端,但现在我意识到那是你的身份服务器客户端。 这可能会有所帮助,我以前没见过,谢谢!我去看看。 嘿还在 IdentityServer4 命名空间中找到了 Stores,您可以根据需要找到客户端和身份资源的管理器,请在源代码中查看 github.com/IdentityServer/IdentityServer4/tree/master/src/…以上是关于是否有任何内置管理器用于处理来自 ConfigurationDbContext(Clients, Resources...) 的表的 CRUD 操作?的主要内容,如果未能解决你的问题,请参考以下文章
是否有任何适当的匹配器来解析和比较来自 MockMvc 的 Json 响应中的 LocalDateTime 字段