我有一个使用 OWIN 的自托管 SignalR 实例。我想实施授权。我的用户已经使用表单身份验证登录到 ASP.NET MVC 应用程序。
由于两个应用程序可在同一 URL 上使用,因此 cookie 将在两者之间共享。如何在自托管 SignalR 应用程序中接受表单身份验证 cookie?
澄清:我所说的是浏览器使用用于登录单独(但相关且安装在同一主机上)IIS 应用程序的相同凭据来访问自托管 SignalR 集线器。
所以,问题是:如何连接到 SignalR 服务器管道来捕获.ASPXAUTH
cookie 并在调用集线器之前使用它来设置当前主体?
如果有帮助的话,我可以加入一些南希。
如果您的用户已通过身份验证并登录,您可以在 SignalR 中心内检查以下内容:
Context.User.Identity.IsAuthenticated
确保该属性设置为 true。您可以将此检查放在集线器的构造函数中以阻止/删除它们的连接。如果为 false,您可以将它们重定向到另一个页面。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)