服務器認證、授權、鑒權、session、token


1、session(賽神)會話機制

  • session 會話機制會借助 cookie + session 一起來做認證

  • cookie 是放在瀏覽器中的,cookie 是存儲在客服端,但是可以由服務端和客戶端生成。

  • sesion 是保存在服務端的數據庫中的,session 是服務端一塊存儲空間,只能由服務端生成。

  • session 是把 session id 也就是session 的 key 值,保存到 cookie 當中

  • 這個 key 值 一般在訪問其他頁面的時候會放到 cookie 當中,向后端發起請求

  • 當用戶輸入賬號和密碼登錄后,服務端會返回用戶的session id 把他放在cookie中這就是session機制認證

2、token(套肯)安全令牌機制

  • token 不依賴服務器資源

  • token 服務端生成的

  • 往往會將 token 放在瀏覽器中,請求頭中

  • 當用戶輸入賬號和密碼后,后端將他的安全令牌作為相應數據返回給我,那就是 token 令牌機制

  • 當用戶輸入賬號和密碼后,會返回一個 token ,絕大多數情況下會 通過前端的工程師放到請求頭當中,然后再去發起請求

  • 用的最多的是 jwt token 機制

  • 瀏覽器接收到響應報文之后,會將 token 放在 local storage (本地存儲空間)/ session storage

3、鑒權

  是指驗證用戶是否擁有訪問系統的權利---鑒定權限

4、為什么會有cookie、session、和token?

  • http是無狀態協議

  • cookie 緩存

    • 大部分存在瀏覽器中,是客戶端的緩存  

    • 主要是 name 和 value 的存儲  

  • session 會話

    • 存儲在服務器當中  

    • 是瀏覽器 和 服務器 之間的驗證  

5、cookie 和 session 區別

  • cookie:客戶端和服務端都能生成 cookie,存放在客戶端。存放一些不敏感的數據,數據類型只能是字符串

  • session:服務端生成 的 session , 存放在服務端,可以存放任意數據,Java 中 session 中可以存放任意對象,session 必須依賴 cookie 實現

6、session 和 token 的區別

  • session

    • session 是服務器生成、存儲、驗證,以 cookie 的方式傳給客戶端,客戶端以同樣方式(cookie)發送給服務端

    • session 有狀態

  • token

    • 是加密字符串

    • 服務器生成、驗證,以 cookie 或者 請求頭的方式傳給客戶端,客戶端以同樣方式(cookie)發送給服務端

    • token無狀態

 

*******請大家尊重原創,如要轉載,請注明出處:轉載自:https://www.cnblogs.com/shouhu/   謝謝!!******* 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM