84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
一般的做法是cookie裡面存帳號密碼 但是這樣不安全 有沒安全的做法呢
光阴似箭催人老,日月如移越少年。
首先,登入成功了之後,隨機產生一個MD5的hash值token(32位元或64位元);
然後,把這個token存入目前使用者的表,然後給這個使用者增加一個token欄位和last_login_time欄位;
把這個token返回讓瀏覽器的cookie存儲,設定一個最長時常,例如30天;
這三個流程的主要作用就是,last_login_time可以檢查過期時間,過期時間到了之後,就更新這個token,另外,只要用戶透過這個token登入成功就進行更新token,這樣就能盡可能的保證安全。
每次使用者造訪網站的時候,檢查cookie裡是否有token,如果有token就去資料庫查詢數據,如果查到就直接登入成功了,也就省去了使用者名稱和密碼驗證登入的階段。
整套思想是這樣,你也可以讓前端把token存入localstorage
用jwt token的方式,瀏覽器的存token。
具體可以看看下面兩篇文章
jwt-vs-oauth-authentication , jwt
不要用cookie存帳戶密碼,存一個記住登陸的flag,最後是與上次登陸的時間, 以及生成的key, 拼成一個加密串。然後存到cookie中。 然後每次登陸的時候查看是否有這個cookie.有的話進行解密。然後可以解決這個串進行校檢。如果正常直接給予登陸即可。
cookie是將密碼放到本地,session是將密碼放在伺服器。相對來說session比較安全。但是cookie處理的好的話也是很安全的。
首先,登入成功了之後,隨機產生一個MD5的hash值token(32位元或64位元);
然後,把這個token存入目前使用者的表,然後給這個使用者增加一個token欄位和last_login_time欄位;
把這個token返回讓瀏覽器的cookie存儲,設定一個最長時常,例如30天;
這三個流程的主要作用就是,last_login_time可以檢查過期時間,過期時間到了之後,就更新這個token,另外,只要用戶透過這個token登入成功就進行更新token,這樣就能盡可能的保證安全。
每次使用者造訪網站的時候,檢查cookie裡是否有token,如果有token就去資料庫查詢數據,如果查到就直接登入成功了,也就省去了使用者名稱和密碼驗證登入的階段。
整套思想是這樣,你也可以讓前端把token存入localstorage
用jwt token的方式,瀏覽器的存token。
具體可以看看下面兩篇文章
jwt-vs-oauth-authentication , jwt
不要用cookie存帳戶密碼,存一個記住登陸的flag,最後是與上次登陸的時間, 以及生成的key, 拼成一個加密串。然後存到cookie中。
然後每次登陸的時候查看是否有這個cookie.有的話進行解密。然後可以解決這個串進行校檢。如果正常直接給予登陸即可。
cookie是將密碼放到本地,session是將密碼放在伺服器。相對來說session比較安全。但是cookie處理的好的話也是很安全的。