将一个客户端的signalR connectionId暴露给另一个客户端是否安全?

时间:2018-03-16 17:11:41

标签: javascript c# signalr

我正在工作的场景是

Client X连接到Hub A

Client X会执行一些操作,导致它将信息推送到Hub A

Hub A剖析该信息并将其广播到Hub A

中的所有其他人

,然后

Client YHub A

相关联

此时,我正在警告Hub AClient X)中的当前客户端新客户端已加入集线器。在那个广播中,我包括了客户Y的connectionId

broadcastToExistingClientsOfNewUser(client_y_connectionId);

然后Hub A中已存在的每个客户端都可以根据需要选择对该信息做出反应。

我担心的是,我不确定将Client Y的connectionId暴露给Client X的含义。除了能够发送垃圾邮件Client Y之外,在共享connectionId时是否有任何问题?

1 个答案:

答案 0 :(得分:0)

我无法找到问题的确切答案,但我找到了支持的解决方案。 Single-user groups

基本上,我可以通过使用一个具有密钥值的组来封装尝试与单个connectionId进行通信的一对一性质和唯一性,该密钥值对我来说可以安全地暴露给其他连接。这使我不必自己手动跟踪connectionIds,只需让SignalR处理连接管理。