對會話標識未更新的處理

2021-07-23 01:31:46 字數 1132 閱讀 8233

解決乙個會話標識未更新的安全問題,網上的辦法不盡能完全解決,最後這樣搞了,記錄一下。

網上看到的解法,首頁加了段:

//廢棄登陸前的會話

if(request.getsession(false) != null)

cookie cookies = request.getcookies();

if(cookies != null) 

但是不是所有的都搞定了,於是搞了個過濾器,這個過濾器的原理是:讓原來的會話過期,拿到新生成的會話,獲取其sessionid,付給會話標識cookie,有時候可能要用原會話裡的屬性,於是又把原會話裡的屬性複製到新會話裡。

public class sessionidchangefilter implements filter

public void destroy()

/*** @see filter#dofilter(servletrequest, servletresponse, filterchain)

*/public void dofilter(servletrequest request, servletresponse response, filterchain chain) throws ioexception, servletexception

//廢棄老的會話

//map裡值copy到新session裡

for(string key : attributemap.keyset())

//新session的標識發給標識cookie

解決shiro會話標識未更新問題

要解決會話標識未更新的安全問題,就需要在做登入驗證時生成新的session,所以需要先將原來的session失效。一般的解決方法如下 但是,如果使用了shiro框架,這樣做會報錯 session already invalidated。原因是shiro對httpsession進行了一層包裝,你直接讓...

會話標示未更新問題

接下來是對使用者進行認證的 使用者認證 結束 後來我找了好久才發現,之所以將會話invalidate沒有用,是因為invalidate方法不是真正的將session銷毀,只是將session中的內容清空,所以當我invalidate以後再新建session,新建的session其實不是新的,是將之前...

未打清分標識處理方式

今天又有一筆支付資料未進入彙總,找到問題資料之後,發現未打清分標識,打上清分標識,準備重跑單商戶清結算 但未注意機構測 通過這筆資料找到平台流水號 通過平台流水號到支付表中找到一筆資料 發現是28號的交易 對賬狀態為對賬失敗 進入平台多差錯 找到28號得對賬檔案 該機構是t 1推送對賬檔案 所以29...