0

我有一个 SignalR 应用程序。

////Server
public class ChatHub : Hub{
     public override Task OnConnected()
            {
                string name = Context.QueryString["applicationName"].ToString();// Context.User.Identity.Name;

                this.Groups.Add(Context.ConnectionId, name);

                return base.OnConnected();
            }
}

 //// Client
$.connection.hub.url = "http://localhost:40000/signalr";

            $.connection.hub.qs = 'applicationName=app1';
            // Declare a proxy to reference the hub.
            var chat = $.connection.chatHub;

            // Create a function that the hub can call to broadcast messages.
            chat.client.addMessage = function (name, message) {
...
}

这会将连接与应用程序相关联。问题是客户端可以更改参数并侦听 app2 的消息。

我能做些什么(客户端/服务器/两者)来确保某人被分配app1然后继续工作app1,即即使他们想听他们也不能听app2消息?

4

1 回答 1

0

如果您不想保护您的集线器,请阅读http://www.asp.net/signalr/overview/security/hub-authorization

于 2016-09-22T18:34:25.480 回答