說明這 30 天系列會帶讀者從 最簡單的帳密登入,一路學到 OAuth / OIDC / SAML / RBAC / ABAC。同時介紹為什麼選 Spring Security 作為教學框架,並設定最終目標:做出一個具備完整認證 + 授權的範例專案。
內文 在前一天,我們已經手刻了一個簡單的 JWT 工具類別,從 Header / Payload / Signature 的組裝到 HMAC-SHA256 簽名...
今天是一個非常重要的日子,就是讓JWT正是組裝到我們的Spring Security框架中。雖然套件都已經做好,要使用也非常簡單,但整個原理我們已經融會貫通,相...
為什麼需要 Refresh Token? Access Token 建議設定很短(例如 2–10 分鐘),降低外洩風險。 使用者不可能一直重新登入,所以我們...
為什麼需要黑名單? JWT 的特性是「簽發後就是自給自足」——只要驗證簽章與過期時間,伺服器就信任它。 問題來了:如果我想強制某個使用者立即登出,要怎麼辦? 常...
截至目前為止,關於JWT的教學我們已經完成了: Day 12:用 JWT 做 Access Token 與 Spring Security 整合 Day...
今天,我們要來介紹OAuth2.0,在開場的時候,我們一定要先讓大家了解為什麼要用OAuth,以及相關的內容與知識。 為什麼需要 OAuth?(解決「代辦事、別...
接下來,我們要再深入了解OAuth,我相信大家都會有以下的問題:為什麼需要 OAuth?它解決什麼問題?誰參與其中?今天我們先搭建全局觀念的「地圖」,接下來幾天...
OAuth是現在比較主流的授權方法,是從過去的技術逐漸演化出來的,因為是逐漸演變,裡面蘊含的技術與知識同樣也會變得非常多,非常複雜,所以我們可以一步一步的來理解...
OAuth 只負責「授權」:讓應用程式存取你的資料。但如果我們想用「Google 登入」、「Facebook 登入」,需要的是「身分」而不是「資源存取」。這就是...
今天我們要來實際演練如何設計OIDC登入,實際的程式碼可以參考以下的github Github repository : spring-security-30d...