Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core Asp.net核心JWT SSO实现_Asp.net Core_Asp.net Identity_Single Sign On - Fatal编程技术网

Asp.net core Asp.net核心JWT SSO实现

Asp.net core Asp.net核心JWT SSO实现,asp.net-core,asp.net-identity,single-sign-on,Asp.net Core,Asp.net Identity,Single Sign On,大家好, 我有一个关于标题中的特征的概念性问题。我一直在四处搜索,但找不到任何有用的信息,因为我要么完全错过了这个概念,要么互联网上的例子太多 问题相当简单: 我们有三个web应用程序。所有这些都是基于aspnet核心的,使用IdentityFramework和JWT进行身份验证和授权。每个都有自己的数据库。最近,出现了一个请求,要求删除JWT令牌发布代码,并将其放在一个单独的应用程序中,以便能够实现SSO。一切都很好 但是:每个应用程序都有一个特定于应用程序的扩展用户对象,以及特定于应用程序并

大家好,

我有一个关于标题中的特征的概念性问题。我一直在四处搜索,但找不到任何有用的信息,因为我要么完全错过了这个概念,要么互联网上的例子太多

问题相当简单:

我们有三个web应用程序。所有这些都是基于aspnet核心的,使用IdentityFramework和JWT进行身份验证和授权。每个都有自己的数据库。最近,出现了一个请求,要求删除JWT令牌发布代码,并将其放在一个单独的应用程序中,以便能够实现SSO。一切都很好

但是:每个应用程序都有一个特定于应用程序的扩展用户对象,以及特定于应用程序并存储在每个数据库中的声明。我们希望在新的登录服务器上保留基本信息(电子邮件、密码、电话号码……标准的IdentityUser型号),而扩展信息则需要来自每个应用程序。这样(我怀疑)我们也可以让谷歌登录我们的应用程序

有人能给我解释一下将JWT用于多个应用程序的SSO的核心概念吗,或者至少让我读一本关于这个主题的书/一篇广泛的文章?我需要一个起点


提前谢谢。

您找到解决方案或任何可用的方法了吗?不太可能。我们最终开发了一个定制的解决方案,在理论上效果很好,但在这个过程中破坏了一些OAuth指令。但它涵盖了我们的情况。如果你想知道更多,可以开个论坛/聊天室或其他什么,我很乐意详细说明。嗨,杰森,晚上好!我也有类似的情况,你能帮我一点忙吗?谢谢@Dronacharya简单地说,SSO服务器在成功登录后生成身份jwt令牌,可以是google、facebook或其他(证明您是登录用户并颁发唯一的用户id)。然后,每个应用程序提供它们自己的声明,并在“登录”请求时重新打包jwt。后者当然是在中间件中完成的,不会打扰用户。