999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

利用SPRING SECURITY 3.0構建SPRING+STRUTS+HIBERNATE應用安全性的一種方法

2012-11-04 02:44:42詹勁松劉吳文梁融凌
長沙大學學報 2012年2期
關鍵詞:安全性方法

詹勁松,劉吳文,梁融凌

(福建師范大學福清分校數學與計算機系,福建福清 350300)

利用SPRING SECURITY 3.0構建SPRING+STRUTS+HIBERNATE應用安全性的一種方法

詹勁松,劉吳文,梁融凌

(福建師范大學福清分校數學與計算機系,福建福清 350300)

介紹了Spring Security3.0的認證和權限控制以及Spring+Struts+Hibernate框架,并介紹了利用Spring Security3.0構建Spring+Struts+Hibernate應用安全性的一種方法.對直接使用Spring JDBC的方法進行了比較.

Spring Security 3.0;認證;權限控制;Spring+Struts+Hiberante

安全性是J2EE企業應用的一個重要方面,是一個要從開發項目初期就應該考慮的重要因素.認證和權限控制是應用層安全性的兩個主要領域.事實上,Spring security是基于Spring的企業應用安全性的標準.

1 Spring Security 3.0

Spring Security為基于spring的企業級應用提供全面的安全性服務.認證和權限控制也是Spring Security要處理的兩個主要領域[1].

在認證層面上,Spring Security支持廣泛的認證模型.這些認證模型或者由第三方提供,或者由相關的標準團體開發,Spring Security也提供了自己的一組認證設施.Spring security 3.0的認證由 AuthenticationManager完成,AuthenticationManager調用 AuthenticationProvider進行認證.AuthenticatctionProvider可依賴注入UserDetailsService.

不管認證如何進行,Spring Security提供了一組深入的權限控制服務.它主要面向三個領域:web請求的權限控制,方法調用的權限控制和單個對象實例訪問的權限控制[1].Spring Security 3.0權限控制由AbstractSecurityIntercpetor承擔,AbstractSecurityInterceptor調用 AccessDecisionManager完成權限控制的最終決定.在通常情況下,AcessDecisionManager輪詢一系列的AcessDecisionVoter以做出授權決定.AbstractSecutityInterceptor調用 AcessDecisionManager在對象調用之前進行權限控制,而AfterInvocationManager可以進行調用后處理,每個AfterInvocationManager的實現可以修改返回的對象,或者拋出一個AcessDeniedException讓訪問無效.

Spring Security的web設施完全基于標準的Servlet過濾器,處理 HttpServletRequest和 HttpServletResponse.Spring Security內部保持一個過濾器鏈,每個過濾器都有獨特的作用,根據服務的需要,在配置中增加、移除過濾器.正是這些過濾器調用相應的對象,實現了Spring Security的認證和權限控制[2].在使用Spring Security的web應用中,關鍵的過濾器有FilterSecurityInterceptor、ExceptionTranslationFilter、SecurityContextPersistenceFilter和 UsernamePasswordAuthenticationFilter等.前三個過濾器總是出現在Spring Security Web應用配置中,不能用其他過濾器替代.

2 Spring+Struts+Hiberante框架

目前Spring+Struts+Hiberante框架在企業中廣泛應用.我們采用分層的架構,分為Action層、Service層和Dao層.用Spring3.0對這些層對象進行管理,采用面向接口的編程方式.向Action中依賴注入Service對象,向Service中依賴注入Dao對象.用 Hibernate3.2實現數據持久化.MVC采用Struts2.1.8.

3 Spring Security 3.0 構建 Spring+Struts+Hibernate應用的安全性

對于一般的J2EE應用,如果數據持久化采用數據庫,Spring Security使用Spring JDBC來獲得認證信息.Spring Security提供一個JdbcDaoImpl類來實現UserDetailsService接口.如果采用這種方法,那么必須在數據庫中創建users和authorities這兩個Spring Security專用的表.使用這種方法的優點是它簡單直接.

對于Spring+Struts+Hibernate的應用,可以采用以上方法.但是因為本來就使用 ORM框架,所以自定義類實現UserDetailsService接口,充分利用Hibernate框架提供的服務,然后將自定義類對象依賴注入AuthenticationProvider,最終供AuthenticationManager調用.這樣做的另一個好處是不需要建立Spring Security專用的表,數據是一個整體,更容易保持數據的一致性.

相關代碼如下:

上述代碼中Manager類和Role類之間是多對多映射,關鍵在于不能使用懶加載.

在上述代碼中我們利用Hiberante提供的服務查詢一個用戶名,獲得該用戶的所有授權,將授權裝入GrantedAuthority對象,最后組裝成一個User返回.這樣,通過自定義類實現了UserDetailsService接口.

我們用Spring Security 3.0對頁面訪問進行權限控制,同時對Service層的delelte和deleteById方法調用實行權限控制.相關代碼如下:

結果:只有通過認證才能訪問頁面,并且只有用具有ROLE_ADMIN權限的經理才可以刪除客戶信息.

4 討論

使用Hibernate懶加載并設置spring的OpenSessionIn-ViewFilter,會造成數據庫一直保持連接,最后被JVM強行關閉.故不能使用Hibernate的懶加載.

5 結束語

利用Spring Security 3.0建立 Spring+Struts+Hibernate應用的安全性,自定義類實現UserDetailsService接口,利用Spring Security 3.0的認證機制,并對web請求和方法調用實行權限控制.我們實現了Spring+Struts+Hibernate框架和Spring Security 3.0連接的一種方法.

[1] Alex B,Taylor L.Spring security reference documentation,3.0.7 RELEASE[EB/OL].http://static.springsource.org/spring - security/site/docs/3.0.x/reference/springsecurity.html,2011.

[2]Walls C,Breidenbach R.Spring in Action中文版(第二版)[M].畢慶紅,譯.北京:人民郵電出版社,2008.

TP311

A

1008-4681(2012)02-0050-02

2012-01-21

福建省教育廳B類科技項目(批準號:JB11263).

詹勁松(1967-),男,福建三明人,福建師范大學福清分校數學與計算機系講師,碩士.研究方向:信息安全、操作系統.

(責任編校:晴川)

猜你喜歡
安全性方法
兩款輸液泵的輸血安全性評估
既有建筑工程質量安全性的思考
某既有隔震建筑檢測與安全性鑒定
米氮平治療老年失眠伴抑郁癥的療效及安全性
學習方法
ApplePay橫空出世 安全性遭受質疑 拿什么保護你,我的蘋果支付?
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
主站蜘蛛池模板: 天天色综合4| 四虎永久在线| 欧美a网站| 国产精品大尺度尺度视频| 久久久久亚洲精品无码网站| 亚洲第一综合天堂另类专| 午夜免费视频网站| 久综合日韩| 日本伊人色综合网| 国产精品手机在线播放| 久久99精品久久久久纯品| 99精品一区二区免费视频| 亚洲精品自在线拍| 日本精品αv中文字幕| 天堂成人av| 不卡午夜视频| 少妇极品熟妇人妻专区视频| 在线va视频| 国产在线专区| 亚洲日韩AV无码一区二区三区人| 一区二区三区精品视频在线观看| 国产打屁股免费区网站| 欧美成人怡春院在线激情| 久久人与动人物A级毛片| 国产一区二区三区免费观看| 亚洲一级毛片| 国产欧美自拍视频| 亚洲天堂伊人| 无码免费的亚洲视频| 亚洲精品国产自在现线最新| 国产主播一区二区三区| 天堂成人在线| 重口调教一区二区视频| 国产久操视频| 一级毛片基地| 婷婷激情亚洲| 少妇高潮惨叫久久久久久| 午夜啪啪福利| 亚洲中文无码av永久伊人| 高清免费毛片| 日韩天堂在线观看| 三级毛片在线播放| 谁有在线观看日韩亚洲最新视频| 好久久免费视频高清| 99久久精彩视频| 视频二区中文无码| 在线播放精品一区二区啪视频| 国产精品入口麻豆| 国产老女人精品免费视频| 亚洲日韩高清在线亚洲专区| 色综合久久88色综合天天提莫| 国产精品嫩草影院av| 爽爽影院十八禁在线观看| 欧美国产精品不卡在线观看| 天天综合色网| 天天操精品| A级毛片高清免费视频就| 欧美国产另类| 真实国产精品vr专区| 欧美国产日韩在线| 99热最新在线| 日韩区欧美国产区在线观看| 乱人伦中文视频在线观看免费| 女人18毛片一级毛片在线 | 日韩欧美在线观看| 少妇精品网站| 亚洲综合专区| 91综合色区亚洲熟妇p| 思思热在线视频精品| 一本大道东京热无码av| 亚洲欧美一区二区三区蜜芽| 亚洲精品视频网| 天堂岛国av无码免费无禁网站| 国产91线观看| 九九热精品在线视频| 亚洲无线一二三四区男男| 国产全黄a一级毛片| 网友自拍视频精品区| 国产精品露脸视频| 成年人视频一区二区| 午夜限制老子影院888| 久久国产乱子伦视频无卡顿|