安徽新华电脑专修学院_安徽电脑培训_安徽电脑培训学校_合肥电脑培训

當(dāng)前位置:首頁 > 網(wǎng)站舊欄目 > 學(xué)習(xí)園地 > 設(shè)計軟件教程 > acegi參考手冊(v1.0.4)[譯]-第二章 技術(shù)概覽[下]

acegi參考手冊(v1.0.4)[譯]-第二章 技術(shù)概覽[下]
2010-01-13 23:23:08  作者:  來源:

2.4. 安全對象

如果你熟悉AOP,你會知道有很多種advice可用:before, after, throws aroundaround advice非常有用,因為它能夠選擇是否選擇是否執(zhí)行一個方法調(diào)用,是否修改返回值,以及是否拋出異常。Acegi Security對方法調(diào)用和web請求都提供around advice。我們使用AOP聯(lián)盟實現(xiàn)對方法調(diào)用的around advice,對于web請求的around advice則是使用標(biāo)準(zhǔn)的過濾器(Filter)。

 

對于那些不熟悉AOP的人來說,關(guān)鍵是要理解Acegi Security能夠幫助你保護(hù)方法調(diào)用以及web請求。大多數(shù)人對保護(hù)他們服務(wù)層的方法調(diào)用感興趣。這是因為在當(dāng)前的J2EE應(yīng)用中,服務(wù)層包含了大多數(shù)的業(yè)務(wù)邏輯(聲明,作者不贊成這種設(shè)計,反而支持正確封裝的領(lǐng)域模型以及DTOassembly, facade 以及 transparent persistence patterns,而不是當(dāng)前主流的貧血模型,我們將在這里討論)。如果你需要保護(hù)service層的方法調(diào)用,使用標(biāo)準(zhǔn)的Spring AOP平臺(或者被成為AOP 聯(lián)盟(AOP Alliance))就足夠了。如果你需要直接對領(lǐng)域模型進(jìn)行保護(hù),那么可以考慮使用AspectJ

 

你可以選擇對使用AspectJ 或者AOP聯(lián)盟(AOP Alliance)對方法進(jìn)行授權(quán),或者你可以選擇使用過濾器(filter)來對web請求進(jìn)行授權(quán)。你將0個,1個,2個或者3個這些方法一起使用。主流的用法是執(zhí)行一些web請求授權(quán),以及在服務(wù)層使用AOP聯(lián)盟(AOP Alliance)對一些方法調(diào)用授權(quán)。

 

Acegi Security使用“安全對象”(secure object)這個詞來指任何能夠?qū)踩珣?yīng)用于其上的對象。每個Acegi Security支持的安全對象都有自己的類,它是AbstractSecurityInterceptor的子類。重要的一點是,如果一個principal通過認(rèn)證,當(dāng)AbstractSecurityInterceptor執(zhí)行的時候,SecurityContextHolder中要包含一個有效的Authentication

 

AbstractSecurityInterceptor提供一個固定的工作流程來處理安全對象請求。這個工作流程包括查找和當(dāng)前請求相關(guān)聯(lián)的“配置屬性(configuration attributes)”。配置屬性(configuration attributes)可以被認(rèn)為是對被AbstractSecurityInterceptor使用的類有特殊含義的字符串。他們通常針對AbstractSecurityInterceptor使用XML進(jìn)行配置。反正,AbstractSecurityInterceptor會詢問AccessDecisionManager “這是配置屬性(configuration attributes),這是當(dāng)前的認(rèn)證對象(Authentication object),這是當(dāng)前請求的詳細(xì)信息-那么這個特定的principal可以執(zhí)行這個特定的操作嗎?”。

 

假如AccessDecisionManager判定允許這個請求,那么AbstractSecurityInterceptor一般來說就繼續(xù)執(zhí)行請求。雖然這樣,用戶在少數(shù)情況之下可能需要替換SecurityContext中的Authentication可以通過AccessDecisionManager調(diào)用一個RunAsManager來實現(xiàn)。在某些不常見的情形下這將非常有用,例如服務(wù)層的方法需要用另一種標(biāo)識(身份)來調(diào)用遠(yuǎn)程系統(tǒng)。這可能有所幫助,因為Acegi Security自動在不同的服務(wù)器之間傳播安全標(biāo)識(假設(shè)你正確配置了RMI或者HttpInvoker remoting protocol client)。

 

隨著安全對象處理和返回-意味著方法調(diào)用完畢或者過濾器鏈(filter chain)處理完畢-AbstractSecurityInterceptor有最后的機(jī)會來處理調(diào)用。這時,AbstractSecurityInterceptor可能會修改返回的對象。我們可能要這樣做,因為授權(quán)判斷不能在安全對象調(diào)用途中執(zhí)行。由于高度的可插拔性,如果需要AfterInvocationManager將控制權(quán)交給AfterInvocationManager來實際修改對象。這個類甚至可以徹底替換對象,或者拋出異常,或者根本不修改它。

 

因為是AbstractSecurityInterceptor中心模版類,看起來第一副插圖該獻(xiàn)給它。(譯注:原手冊里的圖畫的太丑陋了,我用jude重新畫了一遍

<!--[if !vml]--><!--[endif]-->

ch2-1

1 關(guān)鍵“安全對象”模型

 

只有那些希望實現(xiàn)全新的對請求進(jìn)行截取截取和授權(quán)方式的開發(fā)者才需要直接使用安全對象。例如,可能構(gòu)建一個新的安全對象安全調(diào)用一個消息系統(tǒng)。任何需要安全并且能夠提供一種截取調(diào)用的方式(例如AOP around advice semantics)的東西都可以成為安全對象。雖然如此,大部分的Spring應(yīng)用都會只是透明應(yīng)用當(dāng)前支持的三種安全對象類型(AOP Alliance MethodInvocation, AspectJ JoinPoint web request FilterInterceptor)。

 

2.5. 結(jié)論

恭喜!你已經(jīng)獲取了Acegi Security足夠的概括性的圖景來開始著手你的項目。我們探究了共享組件,認(rèn)證過程,以及對“安全對象”的通用授權(quán)概念。手冊中的余下部分你可能用到也可能用不到,可以按照任意順序閱讀。

 


安徽新華電腦學(xué)校專業(yè)職業(yè)規(guī)劃師為你提供更多幫助【在線咨詢
主站蜘蛛池模板: 天之水网_新时代主流门户网站 十大文明网,主流新媒 、 值得信赖、关注我、温暖你! | 南京仁康体检--南京仁康门诊部有限公司 | 柚墨yomoer官网_PPT模板_工作总结PPT模板下载_个人简历模板 | 绝缘油介电强度测试仪|d33压电测试仪|准静态d33压电测量仪厂家直销-上海蓝巢电气有限公司【官网】 | 水平转头微孔板离心机-米欧微孔板离心机-北京乾明基因技术 | 真空上料机_加料机_天津自动上料机_投料站_包装机加料_吸料机_粉体称重-天津市飞云粉体设备有限公司 | 铝压铸件_铝合金压铸件_铝合金压铸件厂家-安平县长虹压铸厂 | 呕吐毒素快速检测仪-黄曲霉毒素测定仪-玉米赤霉烯酮快速检测卡-南京微测生物科技有限公司 | 婴童人才网-孕婴童、母婴行业人才招聘求职系统 | 欧氏运动木地板,体育木地板厂家,篮球木地板价格_欧氏体育木地板 欧派板材官网 | 全屋定制板材 专业供应商 | 湖南视频会议设备厂家|长沙视频会议设备安装型号齐全找湖南日恒智能工程有限公司 | 专业色素炭黑生产厂家,提供各种用途色素炭黑价格-枣庄鑫源化工 | 文轩热能_水冷板散热器热设计热管理系统_铝型材铲齿摩擦焊热管_散热片散热板生产加工厂家 | 柯赛德斯-加美润滑油-专业做汽车工业润滑油品牌加盟代理 | 液晶拼接屏_三星46寸/55寸/LG液晶拼接屏_深圳拼接墙厂家_电视大屏幕液晶拼接_高清工业级液晶监视器 | 龙淼环保-旋流-喷淋塔,高温布袋,脉冲布袋-单机-滤筒除尘器,活性炭吸附箱,催化燃烧设备,除尘器配件-沧州龙淼环保设备制造有限公司 | 上海家博会_2025上海家博会时间表_5月31-6月2日_上海家博会门票_免费领取入口 | 耐磨工业软管,PTFE耐腐蚀软管,耐磨喷砂胶管,超耐磨软管厂家,漯河利通液压管利通科技-耐磨工业软管,PTFE耐腐蚀软管,耐磨喷砂胶管,超耐磨软管厂家,漯河利通液压管利通科技 | 沼气池-沼气设备-沼气工程-山东达禹环境工程有限公司 | 无人叉车|智能无人叉车|智能AGV叉车|激光叉车AGV厂家_江西丹巴赫机器人股份有限公司 | 湖南众一离心机股份有限公司_活塞推料离心机_沉降离心机_卧式刮刀离心机 | 苏州不锈钢_江苏不锈钢_江苏不锈钢板_苏州模具钢_苏州合金钢_苏州特种合金_苏州不锈钢板_304不锈钢棒_苏州塞硒五金制品有限公司 苏州ERP定制|苏州CRM|苏州OA|苏州BPM|进销存管理系统-苏州中尚信息科技有限公司 | 球磨机配件_烘干机配件_回转窑配件_球磨机小齿轮_球磨机大齿轮-巩义市兴农机械制造公司 | 河北高新技术企业认定,沧州商标注册,沧州9001质量管理体系认证,沧州高新技术企业认定,沧州体系认证,沧州商标续展,沧州版权登记,河北国瑞企业管理咨询有限公司 | 三七/灵芝超微粉碎机,小型超细粉碎机价格-北京燕山正德机械设备有限公司 | 五金冲压件生产厂家_加工五金拉伸件-沧州浚鼎机械制造有限公司-沧州浚鼎机械制造有限公司 | 柱状_椰壳_蜂窝_果壳_粉状活性炭_活性炭厂家 - 銮桦净化 | 山东万通液压股份有限公司-自卸车专用油缸,能源采掘设备油缸,机械装备用油缸,油气弹簧,工程机械油缸,液压元件 | 昆明子弟食品有限公司| 中科盛世酒窖 - 酒窖设计_酒窖工程_酒窖空调设备_恒温酒柜定制_私人别墅家庭酒窖_不锈钢红酒柜_实木雪茄柜 | 郑州天恩石油机械有限公司| 无人叉车|智能无人叉车|智能AGV叉车|激光叉车AGV厂家_江西丹巴赫机器人股份有限公司 | 金相切割机-金相磨抛机-显微/维氏/布氏/洛氏硬度计-自准直仪-金相显微镜-万能材料试验机-清洁度检测仪-淋雨试验机-上海中研精密仪器制造有限公司 | 制砂机_鹅卵石制砂机_河卵石制砂机_制砂机价格-上海山卓重工机械有限公司 | 上海安防网-上海安全防范报警协会 | 卡压式管件_不锈钢卡压式管件_双卡压管件_不锈钢沟槽管件_承插焊管件_温州市中达阀门管件有限公司 | 汽修学校|汽车维修学校收费|全国职业技校汽修-北京万通汽修学校 汽车轴承|圆锥滚子轴承|轴承生产厂家|赛襄轴承 | 连续式回转炉_间歇式回转炉_燃气式回转炉_电加热回转炉-长兴博达机械配件有限公司 | 箱式电炉,箱式烧结炉,箱式马弗炉,箱式实验炉,高温箱式电阻炉,箱式加热炉,箱式退火炉,箱式真空气氛炉洛阳研博炉业有限公司 | 免费会员管理系统,会员管理软件,会员卡积分系统—智络软件 | 威海保温板,威海泡沫,威海EPS,威海EPP-威海东兴泡塑科技有限公司 |