搜尋

首頁  >  問答  >  主體

php 記得密碼登陸如何安全

一般的做法是cookie裡面存帳號密碼 但是這樣不安全 有沒安全的做法呢

大家讲道理大家讲道理2711 天前870

全部回覆(4)我來回復

  • 伊谢尔伦

    伊谢尔伦2017-06-23 09:13:09

    1. 首先,登入成功了之後,隨機產生一個MD5的hash值token(32位元或64位元);

    2. 然後,把這個token存入目前使用者的表,然後給這個使用者增加一個token欄位和last_login_time欄位;

    3. 把這個token返回讓瀏覽器的cookie存儲,設定一個最長時常,例如30天;

    這三個流程的主要作用就是,last_login_time可以檢查過期時間,過期時間到了之後,就更新這個token,另外,只要用戶透過這個token登入成功就進行更新token,這樣就能盡可能的保證安全。

    每次使用者造訪網站的時候,檢查cookie裡是否有token,如果有token就去資料庫查詢數據,如果查到就直接登入成功了,也就省去了使用者名稱和密碼驗證登入的階段。

    整套思想是這樣,你也可以讓前端把token存入localstorage

    回覆
    0
  • 仅有的幸福

    仅有的幸福2017-06-23 09:13:09

    用jwt token的方式,瀏覽器的存token。

    具體可以看​​看下面兩篇文章

    jwt-vs-oauth-authentication , jwt

    回覆
    0
  • 欧阳克

    欧阳克2017-06-23 09:13:09

    不要用cookie存帳戶密碼,存一個記住登陸的flag,最後是與上次登陸的時間, 以及生成的key, 拼成一個加密串。然後存到cookie中。
    然後每次登陸的時候查看是否有這個cookie.有的話進行解密。然後可以解決這個串進行校檢。如果正常直接給予登陸即可。

    回覆
    0
  • 我想大声告诉你

    我想大声告诉你2017-06-23 09:13:09

    cookie是將密碼放到本地,session是將密碼放在伺服器。相對來說session比較安全。但是cookie處理的好的話也是很安全的。

    回覆
    0
  • 取消回覆