[心得] 寫點 code 來學習 Spring Security

看板java作者 (有些事,有時候。。。)時間3年前 (2021/10/07 22:09), 3年前編輯推噓4(400)
留言4則, 4人參與, 3年前最新討論串1/2 (看更多)
※ [本文轉錄自 Soft_Job 看板 #1XNlvved ] 作者: qrtt1 (有些事,有時候。。。) 看板: Soft_Job 標題: [心得] 寫點 code 來學習 Spring Security 時間: Thu Oct 7 22:04:37 2021 喵哈囉! 最近工作的需要,「又」複習了一下 OAuth2 相關的內容。 因為複習了它,順手也查了一下目前 Spring Security 在整合上有沒有比較好懂的文章。 在網上能查詢到許多的範例,但似乎少了一點脈落。 多數的範例是直接給你能套的程式,讓你回去改一改,大概能動唄!? 但對於理解整組 Spring Security 怎麼動起來的幫助不大。 或是另一種極端的現象,把 Spring Security 架構文件內提的重要類別 個別拿出來都講一輪,講完還是不道怎麼生出其他範例裡的東西。 這中間存在著 gap !!! 為了補上這個 gap,試著動手寫點小例子把玩一下, 程式接通了,概念也就通了。把這樣的過程整理成 3 篇心得。 (會在 10/16 有個 2 組 talk 會分享基於版規, 不好直接說活動內容,請上社團報名 https://www.facebook.com/groups/twjug) =============================================================== 文章連結與摘要如下: 把玩 Spring Security [1] 先讓一部分動起來 https://qrtt1.medium.com/hands-on-spring-security-1-77228057a8b9 摘要: 起手式的部分很 easy 的!我們就由一個空的 spring boot 專案先開局。 透過一組簡單的 Restful API 來設計它的認證管理。 用上了初見的 WebSecurityConfigurerAdapter 來設定哪些路徑需要認證 哪些路徑是四面八方歡迎光臨的。 在這篇,我們沒有摸到 Sring Security 的核心, 但玩了他的表皮部分 (filter chain) 其他影響我們理解的複雜部分都先略過,直接 hardcode 讓 Spring Security 覺得它拿到可以用的認證資料 (Authentication) 把玩 Spring Security [2] 探索 Access Control 功能 https://qrtt1.medium.com/hands-on-spring-security-2-f89cb06edd04 摘要: 在上一篇,我們唬弄了 Spring Security,騙他說我們有認證囉! 接著,不要找死去玩什麼 AuthenticationProvider,那個範例很多 你知我知獨眼龍也知!但沒有一個初學者能理解它。 我們先喘口氣,玩一下明明應該要最常用,但還沒撐到那邊就陣亡的 Access Control 功能 :D 把玩 Spring Security [3] 拼上最後一哩路 AuthenticationProvider https://qrtt1.medium.com/hands-on-spring-security-3-a57b32d933d1 摘要: 在第一篇,透過 Authentication Filter 讓我們參與了 Spring Security 驗證的流程。在第二篇,透過修改認證資料來試玩權限控管。 他們都相對簡單,也能建立對 Spring Security 學習的信心! 第三篇,可以來面對 Provider 的部分了! 其實一切都很簡單,世上的認證方式百百種,你只是在向一個 Plugin Manager 註冊新的 Plugin 而已! 這篇的重點就是把自製的 AuthenticationProvider (plugin) 向 AutenticationManager (plugin manager) 註冊它! ============================================================== 差不多簡介完了這 3 篇的內容了, 有空看完幫忙拍個手,喜歡 Tawian Java User Group 請由 FB 加入 今年依然有 JCConf 年會,就是醬 ------------------------------------------------------------ 忘了說,github 有原始碼範例,可以參考每一個 commit 做了什麼 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.167.157.79 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1633615481.A.A27.html ※ 編輯: qrtt1 (118.167.157.79 臺灣), 10/07/2021 22:06:49 ※ 發信站: 批踢踢實業坊(ptt.cc) ※ 轉錄者: qrtt1 (118.167.157.79 臺灣), 10/07/2021 22:09:18

10/08 18:20, 3年前 , 1F
當初用 spring security 真的就是各方資料拼湊起來
10/08 18:20, 1F

10/09 03:08, 3年前 , 2F
太神啦
10/09 03:08, 2F

10/19 01:35, 3年前 , 3F
推 實用
10/19 01:35, 3F

10/19 19:17, 3年前 , 4F
推,目前正在讀這個部分
10/19 19:17, 4F
文章代碼(AID): #1XNl-FD9 (java)
文章代碼(AID): #1XNl-FD9 (java)