我是 Socket io 世界的新手,想知道它们是否存在安全问题:
我也在使用 Coffeescript。
服务器。
io.sockets.emit('UserInfo', {player1: AllData1, player2: AllData2})
AllData1 基本上是玩家 1 的敏感信息,AllData2 是玩家 2 的敏感信息。
客户端。
myName = 'snugglePuff'
socket.on('UserInfo', (data) ->
if data.player1.name = myName
alert(data.player1.secret)
)
所以我的问题是:当服务器向每个连接的套接字广播时,“player2”是否会以某种方式使用浏览器看到 data.player1.secret?
最佳答案
是的,这是一个巨大的安全问题。
每个客户端都可以看到您广播的任何内容。对于用户来说,在其页面版本上编辑脚本并抓取广播以获取诸如此类的额外数据将是微不足道的。
如果您必须发送敏感信息,请确保该信息仅发送给其所有者。或者,不要发送任何敏感内容,并研究将所有敏感内容保留在服务器端的方法(例如,使用安全随机生成的 ID 来识别每个用户的 session )。
关于ios - 使用 io.sockets.emit 进行套接字 io,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46846720/