2014-02-08 58 views
1

我期待映射的WebSockets與數據庫中的用戶連接,並具有目前是這樣的:將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或以其他方式發送?

感謝

回答

1

任何你發這是「建立在」以您的JavaScript可能,至少,被複制和複製。驗證服務器端websocket的用戶憑據的唯一方法是PCP websocket服務器需要「用戶名/密碼」之類的東西 - 然後它會檢查服務器端並僅保留該WebSocket。 即您將不得不要求用戶輸入此信息。

相關問題