- 1、本文档共101页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Springsid4技术架构介绍1.0
技术架构介绍
主讲人:张大伟
日期:2013-12-11;;3; ;WEB层技术实现;spring-mvc.xml样例;Controller样例;W关键技术-SpringMVC;;W关键技术-客户端与服务端校验;W关键技术- JQueryValidationPlugin;W关键技术-JSP/JSTL/Servlet Tips;W关键技术-AJAX;SERVICE层技术实现;applicationContext.xml分析;使用annotation定义事务;production环境;functional test 环境;local development环境;unit test环境;SpringIOC/AOP;用Profile 统一环境配置;配置方式;注入配置;AOP陷阱;Shiro Security;概 要; 2. 用户权限构造
另一个不同的地方是, SpringSecurity用户的权限在login时就构造好并保存在session中。如果中途改变用户或角色的权限,需要踢出后重登录才能生效。 而Shiro会在每次检验权限时才查询权限。当然,为了性能考虑,Shiro提供了起码两种权限缓存方案,详见后面的Caching小节。
; 3.权限控制
权限控制分为页面内容,URL,和Java代码三层。 规则是页面内容用taglib,URL的控制在applicationContext.xml里配置,java代码用Annotation。
页面内容的控制保证了善良的用户不会点击自己无权限的功能。而对于恶意用户,在URL还是Java层(又分Controller或Service两层)进行校验可按实际需求而定。
在quickstart中,因为所有JSP都已经在WEB-INF/下保护起来,不可能被直接访问,所有的页面访问都要经过Controller,所以使用Annotation进行恶意用户保护达到的效果更好,URL级别只做用户是否登录的限制。
;Step by Step;Step2. 实现一个AuthorizingRealm
查找用户AuthenticationInfo的函数,包括用户名、密码及Salt。查找权限的函数,Role与Permission均可,仅在CacheManager缓存不存在时被调用。一般密码不是明文存储的,需要在构造函数里指明密码匹配器,比如现在比较流行的,使用salt的,1024次 sha-1 hash 如果想在页面显示当前用户的更多信息,可以构造一个特定的用户对象,而不仅仅是用户的loginName,还可以包含id,display name等等.
; Step3. web.xml里ShiroFilter统统管起来
用Shiro filter管住/*,注意这里spring的DelegatingFilterProxy,需要在applcationContext-*.xml里定义一个与filter-name 同名的bean
; Step4. applicationContext-*.xml中的配置
最重要是ShiroFilter中filterChainDefinitions的配置,配置从上到下,以最上面的为准 详细的解释在这里: /web.html#Web-defaultfilters, quickstart中applicationContext-shiro.xml的配置如下:
/login = authc /logout = logout /static/** = anon /** = user
authc filter 监听/login的POST请求(Get的不管)进行登录认证。如果成功就跳回前一个页面 或者上面配的successfulUrl,如果失败就forward到login page,不过这时候就是POST的,那个打酱油的LoginController要注意。 logout filter 负责监听/logout,所以把退出登录的链接设为/logout即可
/static/** 这些静态图片都不需要监控,轻轻放过,然后后面几个link就需要permission控制了。
;Step4. applicationContext-*.xml中的配置
/** = user 最后保证除上述url外的所有url都必须是已登录的,未登录的用户访问会跳转到登录页面。
另外RememberMe默认由cookie实现,有效时间一年,如果需要改变,配置新的RememberMeManager并注入SecurityManager.
注意URL Pattern里用到的是两颗星,才能实现任意层次的全匹配
其他可选的设置
; Step5. JSP内容控制
/web.html#Web-taglib
您可能关注的文档
- Oliver Twist(雾都孤儿).ppt
- CP 合作原则.ppt
- 新目标八下Unit 8 Have you read treasure island yet Section A-1.ppt
- 功能模块表结构.ppt
- Oliver Twist 英文好书介绍.ppt
- Uptravi(selexipag)处方使用说明书2015版.pdf
- 2014年高考英语一轮复习课件[北师大版] 选修7 Unit21.ppt
- ORACLE 内部数据结构.ppt
- 新世纪高职高专综合英语 2 unit 7.ppt
- Oracle ERP各模块之间表关系.ppt
- 护理学相关知识复习测试卷共三套.doc
- 护理学相关知识复习试题含答案(3套).doc
- 2025届高考语文复习:补写句子 课件.pptx
- 气压带和风带对气候的影响(第1课时)(教学设计).docx
- 气压带和风带对气候影响教学设计2024-2025学年高中地理人教版(2019)选择性必修1.docx
- 《故都的秋》课件 2024-2025学年统编版高中语文必修上册.pptx
- 《屈原列传》课件 2024-2025学年统编版高中语文选择性必修中册.pptx
- 《巫溪家乡文化》课件-2024-2025学年高一语文同步备课课件(统编版必修上册).pptx
- 《苏武传》课件 2023-2024学年统编版高中语文选择性必修中册.pptx
- 郑州中控ZKTime8.3 WEB考勤软件培训文档.pptx
最近下载
- 海淀区2024-2025学年第一学期期中高三英语试题及答案.pdf VIP
- 18.《我的白鸽》教案 2024-2025学年七年级语文上册寓教于乐大讲堂(统编2024版).docx VIP
- 乘法的初步认识说课稿.docx VIP
- 新媒体营销实务(第2版)全套教学课件.pptx
- 职能科室对医技科室医疗质量督查记录表(检验科、放射科、超声科、功能科、内镜室).pdf VIP
- 膝关节置换术后健康宣教.pptx
- 五(上)语文新版课课贴2024秋.pdf
- GA∕T 1105-2013- 信息安全技术 终端接入控制产品安全技术要求.pdf
- 广州数控GSK980TC3系列 编程及操作手册.pdf
- 道 法+认识生命(课件) 2024-2025学年七年级道德与法治上册(统编版2024).pptx VIP
文档评论(0)