
糜鵬程
隨着互聯網的普及,合作共贏成了一個越來越受重視的話題。一些成熟的互聯網企業,需 要與衆多的第三方企業進行合作,以便爲自己的用戶提供豐富的個性化應用。在這個過程中, 企業需要將自身的一些能力(API)開放給第三方合作企業,具體的實現形式一般是搭建一個 專門的開放平臺系統。 無論企業通過何種方式來開放自身的能力,授權都是一個繞不開的話題。本書將通過 8 章 來詳細對授權的相關內容進行闡述,主要內容包括 OAuth 2 概述、開放平臺整體架構、實戰中 的授權模式、OpenID 從理論到實戰、授權碼授權模式回調地址實戰、簽名、授權信息、基於 Spring Security 的 OAuth 2 實戰。
總體還是很推薦,前面講oauth比較清晰易懂,後面代碼就有點水篇幅了。 結合裏面的內容學習➕代碼實操,一步步自己寫,從簡單一步步擴張。會更深入理解。 其實oauth使用最多的就是授權碼授權模式,就是code換token的模式,最安全最靈活最常見。其他sso和open id都是衍生品。
回想 15 年做公衆號開發,那時候剛入門,不懂什麼鑑權,授權。還在因爲 chrome 能 F12 斷點調試而興奮。現在重新看 OAuth2,有種重新重走來時路的感覺。
我是以前端開發者的身份閱讀,對OAuth2中,涉及到的對象、url中的參數、返回值中的參數,我這個小白也能理解。 對授權系統的運行模式有了更多瞭解:如何管理token(在使用無序字符串作爲token時,授權系統會存儲以token爲key,以授權信息爲value的數據)、優化鑑權速度(比如建立緩存層,將token和授權信息對象{xx},以字符串形式拼接) 對涉及到的參數的作用有了更多的瞭解:scope、open_id、state(我聽說國內有公司忽略state,導致漏洞,跨站請求腳本攻擊) 在閱讀前,最好動手操作keycloak的實踐經歷。本地起個web服務,在本地起一個keycloak的服務(我的理解這就是一個授權系統[有配置用戶、client、域的中臺]+認證系統[登錄頁])。 我用的React,使用了keycloak的sdk,我在React項目中只實現了很簡單的功能:登入登出。
無腦羅列了一些內容和概念,感覺像是評職稱的目的湊了本書出來,一點系統性邏輯性都沒有