1. Http basic Authorization前端
基於瀏覽器的一種鑑權方式。
1. 未受權請求,攔截,返回 401 Unauthorised
2. 支持的瀏覽器彈出用戶名密碼框,輸入用戶名密碼,連同上次請求數據,一塊兒發送到服務端
使用受權頭,Authorization: Basic [base64]編碼的用戶名密碼
3. 服務端驗證經過,返回資源
4. 客戶端會一種攜帶受權頭,不安全,適用於內網
ajax
2. session-cookie後端
用戶未登陸,無sessionId,客戶端登陸後,在cookie中種下sessionId,發送到服務端,服務端驗證經過,釋放資源。
sessionId過時,從新登陸,http請求,後端會redirect到登陸頁,ajax請求或前端route,須要前端全局攔截
瀏覽器
3. Token安全
用戶未登陸,無token,登陸後,返回token,客戶端能夠存儲在cookie,storage,或內存中,每次請求攜帶token,
其靈活的特色是,沒必要須依賴cookie,能夠在任何終端使用,多用於app鑑權。
Token過時,從新登陸,請求攔截通session-cookie
cookie
4. OAuthsession
OAuth2.0流程: app
1. 第三方應用在資源方註冊,獲取身份,無身份後面請求無效
2. 第三方應用徵得用戶受權,贊成獲取資源
3. 第三方應用向資源方請求受權碼,資源方返回受權碼
4. 第三方應用以受權碼,向資源方申請訪問令牌,資源方返回令牌
5. 第三方應用以令牌,訪問受限資源
編碼