当Socket.IO处理新连接时,它会创建一个Socket
对象,并且该对象的一个属性为id
。这是一个不可思议的" (根据文档)用于标识连接的字符串。
在构建应用程序时,将此ID广播到其他客户端是否安全,安全和良好做法?我倾向于散列身份证并广播摘要可能是一个更好的主意。
答案 0 :(得分:1)
id不是敏感数据,除非您自己的代码以某种方式使其敏感。没有socket.io客户端操作采用套接字ID,因此如果客户端具有套接字ID,除非您的代码实现对其进行操作的消息,否则他们无法使用它。
这是不可能的,因此您可以将其用作id与其他客户共享,同时不允许该客户端知道他们可能被给予的ID(如匿名ID)。
因此,使用它作为标识符来引用其他用户的套接字正是它的目的,并且不会导致安全性或隐私问题,除非您自己的客户端操作导致此类问题。