使用 AspNetZero 进行单点登录
Single Sign On with AspNetZero
我正在使用核心 2.0 和 jQuery 开发 ASP.NET 零。 ASP.NET ZERO 有 2 个网络项目 Web.Mvc(主要网络应用程序)和 Web.Public。在要登录的 web.Public 项目中,它会重定向到 Web.Mvc,查询字符串中会提到 sso true,登录后,它会重定向回 public 项目。
案例1:当我们点击从Public项目登录时,会重定向到Web项目。一旦我们通过输入用户凭据成功 logged-in,它将重定向到 Public 项目,并且我们不会从 session(AbpSesion.UserId) 获取用户。如果我们刷新主 Web 项目,那么它将登录并且用户名将显示在 header 中。但这不适用于 Public 项目,它仍然显示登录 link 而不是 header 中的登录用户名。
如果我们再次单击登录 link 然后它会转到主 Web 应用程序并再次重定向回 public 的主页,所以看起来我们已经正确登录主 Web 应用程序。
Case2:经过上面的过程,如果我们从Web项目注销然后刷新Public项目,用户名将在header中并且我们得到用户和租户session 值并且效果很好。
==>总结:一旦用户从 Public 成功登录到 Web,Web 项目就会将用户信息发送到 Public 并且 Public 项目也会检索该信息,但是在在一个应用程序服务层之间,我们无法从 AbpSession 值 (AbpSesion.UserId) 获取用户 ID,因此 Single-Sign-On 功能似乎无法正常工作。
注意可以在任何线程或文档中为 ASP.NET ZERO 找到关于此类问题的更多信息。
谢谢
在本地试试这个:
这将有助于在多个应用程序之间共享身份。
我正在使用核心 2.0 和 jQuery 开发 ASP.NET 零。 ASP.NET ZERO 有 2 个网络项目 Web.Mvc(主要网络应用程序)和 Web.Public。在要登录的 web.Public 项目中,它会重定向到 Web.Mvc,查询字符串中会提到 sso true,登录后,它会重定向回 public 项目。
案例1:当我们点击从Public项目登录时,会重定向到Web项目。一旦我们通过输入用户凭据成功 logged-in,它将重定向到 Public 项目,并且我们不会从 session(AbpSesion.UserId) 获取用户。如果我们刷新主 Web 项目,那么它将登录并且用户名将显示在 header 中。但这不适用于 Public 项目,它仍然显示登录 link 而不是 header 中的登录用户名。 如果我们再次单击登录 link 然后它会转到主 Web 应用程序并再次重定向回 public 的主页,所以看起来我们已经正确登录主 Web 应用程序。
Case2:经过上面的过程,如果我们从Web项目注销然后刷新Public项目,用户名将在header中并且我们得到用户和租户session 值并且效果很好。
==>总结:一旦用户从 Public 成功登录到 Web,Web 项目就会将用户信息发送到 Public 并且 Public 项目也会检索该信息,但是在在一个应用程序服务层之间,我们无法从 AbpSession 值 (AbpSesion.UserId) 获取用户 ID,因此 Single-Sign-On 功能似乎无法正常工作。
注意可以在任何线程或文档中为 ASP.NET ZERO 找到关于此类问题的更多信息。
谢谢
在本地试试这个:
这将有助于在多个应用程序之间共享身份。