第一次配置和使用SpringSecurity,總是要碰很多次墻!
先說說個人理解的它里面比較有意義的架構(gòu)。
里面有好多設(shè)計模式的影子:策略模式,代理模式,工廠模式,鏈條模式=====,看到這些模式(除了工廠或單例)心里總是會有些興奮,總算是看到了模式的真正練兵場!跟兄弟們好好分享一下!(才看了一天!有不對之處,還望各位斧正!)
策略模式(Strategy Pattern):
主要說一下session相關(guān)的這個策略模式,以SessionAuthenticationStrategy接口的策略劃分,根據(jù)我們的session安全策略,指定不同的策略,現(xiàn)在看是這種布局:
畫圖比較麻煩,各位還是湊合著看吧!說明一下:頂層接口被下面“具體實現(xiàn)”兩個類實現(xiàn),而“二級實現(xiàn)”實現(xiàn)SessionFixationProtectionStrategy。具體采用哪種策略要看我們的配置了!
代理模式(Proxy):
很明顯的代理類,DelegatingFilterProxy和FilterChainProxy,這兩個類看著心里都癢癢的,呵呵,平常總是看代理模式呀什么的,即時看著例子也不踏實,現(xiàn)在看到這兩個東西,心里突然有種平靜的激動!
這兩個代理類以FilterChainProxy為例說明一下吧,F(xiàn)ilterChainProxy代理了權(quán)限驗證Filters的工作,通過它來訪問整個過濾器串里面的過濾器。
Chain模式:這個也應(yīng)該以FilterChainProxy這個類入口來分析,呵呵,有興趣的各位就通過這個來看看吧!
先說說個人理解的它里面比較有意義的架構(gòu)。
里面有好多設(shè)計模式的影子:策略模式,代理模式,工廠模式,鏈條模式=====,看到這些模式(除了工廠或單例)心里總是會有些興奮,總算是看到了模式的真正練兵場!跟兄弟們好好分享一下!(才看了一天!有不對之處,還望各位斧正!)
策略模式(Strategy Pattern):
主要說一下session相關(guān)的這個策略模式,以SessionAuthenticationStrategy接口的策略劃分,根據(jù)我們的session安全策略,指定不同的策略,現(xiàn)在看是這種布局:
頂層接口 | SessionAuthenticationStrategy | ||
具體實現(xiàn) | SessionFixationProtectionStrategy (直接默認(rèn)實現(xiàn)) |
NullAuthenticatedSessionStrategy (空實現(xiàn)) |
|
二級實現(xiàn) | ConcurrentSessionControlStrategy |
畫圖比較麻煩,各位還是湊合著看吧!說明一下:頂層接口被下面“具體實現(xiàn)”兩個類實現(xiàn),而“二級實現(xiàn)”實現(xiàn)SessionFixationProtectionStrategy。具體采用哪種策略要看我們的配置了!
代理模式(Proxy):
很明顯的代理類,DelegatingFilterProxy和FilterChainProxy,這兩個類看著心里都癢癢的,呵呵,平常總是看代理模式呀什么的,即時看著例子也不踏實,現(xiàn)在看到這兩個東西,心里突然有種平靜的激動!
這兩個代理類以FilterChainProxy為例說明一下吧,F(xiàn)ilterChainProxy代理了權(quán)限驗證Filters的工作,通過它來訪問整個過濾器串里面的過濾器。
Chain模式:這個也應(yīng)該以FilterChainProxy這個類入口來分析,呵呵,有興趣的各位就通過這個來看看吧!