首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在ASP.net核心项目中需要实施用户管理系统的IdentityServer4

在ASP.net核心项目中需要实施用户管理系统的IdentityServer4
EN

Stack Overflow用户
提问于 2021-01-24 04:19:51
回答 2查看 70关注 0票数 0

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

从网站A单击登录-->登录(应该在identityServer4中登录?) -->成功后-->重定向到发送页面(网站A)-登录的用户数据必须发回..它是如何发生的?现在我点击从网站a --> b -->应该发生什么?我如何获取系统知道的用户数据?

另一个问题是,为什么身份服务器需要一个用户存储?是否会保存此数据库中的登录数据?它不只是基于cookie吗?

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

文档并不是很有帮助,因为它们没有显示流程。

你知道不是基于mvc的identityServer的快速入门吗(仅仅是剃刀页面)。它可以比他们的mvc快速入门更简单

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

EN

回答 2

Stack Overflow用户

发布于 2021-01-25 11:50:28

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

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

关于用户查询,如果是关于身份验证的,需要放在身份服务器上。否则,请将其放到api上。

票数 1
EN

Stack Overflow用户

发布于 2021-01-26 21:39:36

谢谢你的回答。这对我们帮助很大。那么我想问你,我怎么才能在客户端获得当前的用户信息呢?你说我可以从cookies中获取用户信息,你的意思是在服务器上,对吗?我要把它交给客户。我只需要用代码查询我客户机中的user-id:

var userId = _httpContextAccessor.HttpContext.User.FindFirst(ClaimTypes.NameIdentifier).Value;

然而,在服务器上定义的声明也无法在客户端获得它们,您知道如何在那里查询它们吗?感谢您的支持

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65863982

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档