Asp.net core ASP.net核心项目中需要实现具有用户管理系统的IdentityServer4

Asp.net core ASP.net核心项目中需要实现具有用户管理系统的IdentityServer4,asp.net-core,identityserver4,Asp.net Core,Identityserver4,我第一次使用identityServer4,我需要一些帮助来实现我的asp.net核心项目。我有许多基于asp.net内核的应用程序,它们的用户系统必须由公共服务器管理,因为它们的组织不同http://ip:prot1 和http://ip:port2. 到目前为止,我可以实现idetntyServer4来进行客户端身份验证。现在我不知道将用户数据返回到我的应用程序的正确流程是什么 从网站单击登录->登录应在identityServer4中进行?->然后,当成功->重定向到发送页面网站A--记录

我第一次使用identityServer4,我需要一些帮助来实现我的asp.net核心项目。我有许多基于asp.net内核的应用程序,它们的用户系统必须由公共服务器管理,因为它们的组织不同http://ip:prot1 和http://ip:port2. 到目前为止,我可以实现idetntyServer4来进行客户端身份验证。现在我不知道将用户数据返回到我的应用程序的正确流程是什么

从网站单击登录->登录应在identityServer4中进行?->然后,当成功->重定向到发送页面网站A--记录的用户数据必须发送回。。这是怎么发生的? 现在我点击网站a->b->应该发生什么?我如何获得我的系统知道的用户数据

另一个问题是,为什么identityserver需要用户存储?是否将保存此数据库中的登录数据?它不仅仅是基于cookies的

最后一个问题:我应该把数据库中用户查询的api放在哪里?在identityServer4中

文档没有显示流程流程,因此没有明显的帮助

您知道identityServer的快速启动吗?不是基于mvc的,只是razor页面。这可能比他们的mvc快速入门更简单


希望我能在这里找到一些帮助:

QuickStart是保护api的一个示例。当网站点击登录时,它应该发生在identityServer4中。登录成功后,会将令牌发送到网站A,然后网站A可以使用令牌访问api

关于记录的用户数据和用户存储,您需要在identityserver上配置数据库,并使用identity处理记录的用户。当用户成功登录时,它可以将用户信息保存在cookie中,您可以从cookie中检索用户信息

关于用户查询,如果是关于身份验证,则需要将它们放在identityserver上。否则,它应该放在api上


谢谢你的回答。这很有帮助。我想问你,我怎样才能在客户端获得当前的用户信息?你说我可以从cookies中获取用户信息,你是说在服务器上,对吗?我要把它交给客户。我可以用以下代码在我的客户端中查询用户id:

var userId=\u httpContextAccessor.HttpContext.User.FindFirstClaimTypes.NameIdentifier.Value

然而,服务器中定义的声明我也无法在客户端中获取它们,您知道我如何在那里查询它们吗? 提前谢谢你