【问题标题】:What is the best way to map websockets connection to users in the database?将 websockets 连接映射到数据库中的用户的最佳方法是什么?
【发布时间】:2014-02-08 17:26:04
【问题描述】:

我正在寻找与数据库中的用户映射 websockets 连接,目前有这样的东西:

function connectToNotifServer(){

var conn = new WebSocket('ws://localhost:8080');

conn.onopen = function(e) {
    alert("Connection established!");
    conn.send(JSON.stringify({user_id: sessionStorage.getItem("user_id")}));
};

conn.onmessage = function(e) {
    alert(e.data);
};

conn.onclose = function(e) {
    alert("Connection closed!");
};
return conn;

}

然后我有一个 PHP websockets 服务器,它保留了与 user_id 的连接的映射。

但是,我认为存在安全漏洞,因为用户可以简单地在 user_id 中注入他想要的任何值并模拟另一个用户。是否有更好的方法来保留此映射,但无需发送 user_id 或以其他方式发送?

谢谢

【问题讨论】:

    标签: javascript websocket phpwebsocket


    【解决方案1】:

    您发送的任何“内置”到您的 javascript 的内容至少可以被复制和复制。验证用户对服务器端 websocket 的凭据的唯一方法是让 PCP websocket 服务器要求类似“用户名/密码”之类的内容 - 然后它会检查服务器端并仅针对该 websocket 保留。 即您必须要求用户输入此信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多