2016-07-22 3 views
1

Spring websocket統合に付属するセッションIDジェネレータを上書きする方法はありますか?これは常に8文字(例:session = imjxvgob)であり、より長いUUIDベースのセッションIDを生成したいと思います。これに関連しSpring WebsocketでsessionId generatorを上書きする方法は?

知らCVE: http://pivotal.io/security/cve-2015-0201

JdkIdGeneratorクラスは、スプリング・フレームワーク4.2 Issue: SPR-12658に追加されましたが、私は私の設定にこれを配線する方法がわかりません。

私はSimpleBrokerを使用しています。

EDIT セッションIDをクライアント側で生成されるようになっていますsocksjs-1.0.3.js:655

var sessionId = options.sessionId || 8; 
if (typeof sessionId === 'function') { 
     this._generateSessionId = sessionId; 
} else if (typeof sessionId === 'number') { 
this._generateSessionId = function() { 
     return random.string(sessionId); 
}; 

ないと思えます。

答えて

1

私は、生成されたUUIDを生成し、それをsockjsライブラリに「オプション」として与えました。

var serverGeneratedSessionId = '${serverGeneratedUUID}'; // new org.springframework.util.JdkIdGenerator().generateId() 
var socket = new SockJS('/path', null, {sessionId: function(){ 
     return serverGeneratedSessionId; 
    }}); 
関連する問題