為什麼這篇spring security教學鄉民發文收入到精華區:因為在spring security教學這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者qrtt1 (有些事,有時候。。。)看板Soft_Job標題[心得] 寫點 code 來學習 S...
喵哈囉!
最近工作的需要,「又」複習了一下 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
※ 編輯: qrtt1 (118.167.157.79 臺灣), 10/07/2021 22:13:20
※ 編輯: qrtt1 (118.167.157.79 臺灣), 10/07/2021 22:19:05