Spring Security結(jié)合實(shí)戰(zhàn),深入源碼


【Spring Security簡介】
Spring Security是一個(gè)能夠?yàn)榛赟pring的企業(yè)應(yīng)用系統(tǒng)提供聲明式的安全訪問控制解決方案的安全框架。它提供了一組可以在Spring應(yīng)用上下文中配置的Bean,充分利用了Spring IoC,DI(控制反轉(zhuǎn)Inversion of Control ,DI:Dependency Injection 依賴注入)和AOP(面向切面編程)功能,為應(yīng)用系統(tǒng)提供聲明式的安全訪問控制功能,減少了為企業(yè)系統(tǒng)安全控制編寫大量重復(fù)代碼的工作。
?
【Spring Security功能】
Spring Security對(duì)Web安全性的支持大量地依賴于Servlet過濾器。這些過濾器攔截進(jìn)入請(qǐng)求,并且在應(yīng)用程序處理該請(qǐng)求之前進(jìn)行某些安全處理。 Spring Security提供有若干個(gè)過濾器,它們能夠攔截Servlet請(qǐng)求,并將這些請(qǐng)求轉(zhuǎn)給認(rèn)證和訪問決策管理器處理,從而增強(qiáng)安全性。根據(jù)自己的需要,可以使用適當(dāng)?shù)倪^濾器來保護(hù)自己的應(yīng)用程序。
如果使用過Servlet過濾器且令其正常工作,就必須在Web應(yīng)用程序的web.xml文件中使用<filter> 和<filter-mapping>元素配置它們。雖然這樣做能起作用,但是它并不適用于使用依賴注入進(jìn)行的配置。
FilterToBeanProxy是一個(gè)特殊的Servlet過濾器,它本身做的工作并不多,而是將自己的工作委托給Spring應(yīng)用程序上下文 中的一個(gè)Bean來完成。被委托的Bean幾乎和其他的Servlet過濾器一樣,實(shí)現(xiàn)javax.servlet.Filter接 口,但它是在Spring配置文件而不是web.xml文件中配置的。
實(shí)際上,F(xiàn)ilterToBeanProxy代理給的那個(gè)Bean可以是javax.servlet.Filter的任意實(shí)現(xiàn)。這可以是 Spring Security的任何一個(gè)過濾器,或者它可以是自己創(chuàng)建的一個(gè)過濾器。但是正如本書已經(jīng)提到的那樣,Spring Security要求至少配置四個(gè)而且可能一打或者更多的過濾器。
?
【系統(tǒng)學(xué)習(xí)并掌握Spring Security】
尚硅谷Spring Security教程
https://www.bilibili.com/video/BV15a411A7kP
課程詳情:
Spring Security是Spring家族中的重要成員,它基于Spring框架,提供了一套Web應(yīng)用安全性的完整解決方案。
本套視頻教程適合具備一定軟件開發(fā)經(jīng)驗(yàn)的人員,學(xué)前需掌握J(rèn)avaWeb和SpringBoot。
教程分為五大部分:Spring Security框架概述、Spring Security入門和基本原理、Spring Security基于Web的權(quán)限方案、Spring Security基于微服務(wù)的權(quán)限方案、Spring Security源碼剖析,詳細(xì)講解了Spring Security框架,內(nèi)容由淺入深,理論實(shí)踐相結(jié)合,更深入源碼級(jí)學(xué)習(xí)。
通過本套教程的學(xué)習(xí),你將對(duì)于Spring Security框架在各種場景下的使用,以及內(nèi)部的實(shí)現(xiàn)原理,有更加深入的認(rèn)識(shí)。
