SignalR 上的身份验证
Authentication on SignalR
我们有三个项目
- Angular JS => 用于前端
- Asp.net Soap Web 服务 (.asmx) => 支持 angular JS 项目的服务器代码。
- ASP.NET MVC 项目 => 我们在该项目上实现 SignalR 以进行套接字通信。
现在我想在第三个项目上实施身份验证。我们已经在第二个项目上实现了基于令牌的身份验证,所以我在想在第三个项目上只传递令牌然后通过调用 Web 服务(第二个项目)方法在第三个项目上验证它是否安全?另一种方法是我们在登录时为每个项目生成两个不同的令牌?什么是最好的方法?
使用第二个解决方案令牌来验证用户调用 SignalR 集线器是安全的,而且对您来说可能更容易。如果您要使用与项目 n#2 相同的 signalR 定位用户,则无需创建单独的身份验证。如果您将项目 n#3 中的用户与“是”区分开来,则需要为此创建另一个令牌。
您可以在此 microsoft documentation 中阅读有关 SignalR 身份验证和授权的更多信息。
我们有三个项目
- Angular JS => 用于前端
- Asp.net Soap Web 服务 (.asmx) => 支持 angular JS 项目的服务器代码。
- ASP.NET MVC 项目 => 我们在该项目上实现 SignalR 以进行套接字通信。
现在我想在第三个项目上实施身份验证。我们已经在第二个项目上实现了基于令牌的身份验证,所以我在想在第三个项目上只传递令牌然后通过调用 Web 服务(第二个项目)方法在第三个项目上验证它是否安全?另一种方法是我们在登录时为每个项目生成两个不同的令牌?什么是最好的方法?
使用第二个解决方案令牌来验证用户调用 SignalR 集线器是安全的,而且对您来说可能更容易。如果您要使用与项目 n#2 相同的 signalR 定位用户,则无需创建单独的身份验证。如果您将项目 n#3 中的用户与“是”区分开来,则需要为此创建另一个令牌。
您可以在此 microsoft documentation 中阅读有关 SignalR 身份验证和授权的更多信息。