【发布时间】:2017-09-04 08:13:43
【问题描述】:
我知道 SignalR 不适用于 ASP.NET Core 1.1 和 2.0 的预览版。同时我需要解决这个限制。
我正在构建的应用程序是一个 ASP.NET Core 1.1 MVC 应用程序。此应用程序中一个小而重要的功能是案例管理。需要使用该特定用户的新传入案例来更新视图。
我的 SignalR 2 集线器在单独的 ASP.NET 4.* 应用程序中运行。
我希望这是一种方式,我可以轻松地使用 SignalR JavaScript 客户端而不是 .NET 客户端,而 Bob 是你的叔叔。 然而,问题是我使用 Azure AD B2C (oauth2) 的 AuthN/AuthZ
在 MVC 应用程序中,我使用标准 cookie 授权,但我用于后端 API 的模式是我使用我的 MVC 代码将访问令牌包装在不记名令牌中并将其发送到我使用的后端 API jwt 不记名授权。因此,我的客户端 JavaScript 永远不会看到访问令牌,只是 MVC 应用程序在 View 和 Controller 之间使用的 cookie。
现在的问题是,如果我想使用 JavaScript 连接到集线器,我没有任何东西可以发送到集线器来证明我的身份,因为 jwt 令牌仅存在于 MVC 主机中,并且 cookie 仅是 HTTP,因此无法访问。
有什么想法或替代方案吗?
谢谢!
【问题讨论】:
-
在您的后端服务中,您为什么要使用身份验证。请改用带有防火墙 IP 的 http 或 https。
标签: asp.net .net asp.net-mvc signalr