1.循环验证,一直报AccessDeniedException
先出现了,凡是访问被保护的URL,日志就不断报错:Access is denied。
阅读了网上一篇博文,http://www.iteye.com/problems/41635,并按照修改。
无济于事,仔细检查,发现由于自己保护了"/**"URL,也就是说,如果访问一个受保护的页面,而又无权访问,就会跳转到指定的“/errors/accessDenied.jsp",但该error page 也是属于“/**”的,所以就出现循环验证的结果了,直到请求超时!
2.struts的请求没有经过springsecurity的Filter
发现struts action的请求居然没有被SS过滤。由于之前看了上述博文,立即反应过来,Filter顺序问题
!由于struts的filter先拦截了请求,并做了相应处理,返回请求,所以根本就没有ssFilter的机会了。在web.xml中调整了springsecurity的filter,将它放到struts的前面,成功。
由此也可以猜测该博文的解决方法是有疑问的了,既然springsecurity已经先拦截了请求,并且做出拒绝跳转,那么struts也就没有机会相应请求了,那就跟不存在“struts拦截了spring Security的org.springframework.security.AccessDeniedException异常”的说法了。当然没有去深究此想法!
3.UrlMatcher规则正确,却没有被匹配
自定义FilterInvocationDefinitionSource,仔细检查了匹配规则,但除了“/**”都没被匹配成功,调试发现,虽然有lowerCaseComparisons变量,并且有设值,但在匹配前并没有做toLowerCase()处理。之前一直被日志迷惑,日志显示有转换为小写的处理,但那是FilterChainProxy的内置处理!
4.登录不成功bad Credentials
配置了验证的时候MD5加密,但是数据库的测试数据却还是明文!
总结:1.有错时,不应该急着求助别人或者网上搜索(其实也是求别人吧),应该仔细阅读日志,有些问题看下日志就明白。
2.虽然解决后都觉得是些很小的问题,但是解决了这些问题也就有了相应的经验了,现在遇到总比工作遇到好。再小的问题,不解决也终究是个问题:) 自我安慰吧
!
分享到:
相关推荐
SpringSecurity学习总结源代码
Spring Security学习总结一
Spring Security学习总结二
三更springsecurity学习笔记
spring security学习总结文档是我自己在学习security之后总结的,该部分是初级部分
SpringSecurity学习总结一.pdf
Spring Security学习总结 关于Spring Security的完全学习总结 强烈推荐
spring security方面的学习资料,包含:Spring+Security+3+与+CAS单点登录配置;Spring+Security3中文教程;Spring-Security安全权限管理手册;Spring+Security文库;还有一个学习笔记!
NULL 博文链接:https://fengshen-xia.iteye.com/blog/293799
Spring Security OAuth2.0学习笔记 什么是认证、授权、会话。 Java Servlet为支持http会话做了哪些事儿。 基于session认证机制的运作流程。 基于token认证机制的运作流程。 理解Spring Security的工作原理,Spring ...
Spring Security 演讲PPT(演讲嘉宾:张明星) WebSphere技术专家沙龙在广州圆满举办,WSC超级版主Fastzch(张明星)担任本次沙龙的演讲嘉宾,他给广州的WebSphere技术专家带来了以“Spring Security ”为主题的...
Spring Security三份资料,实战Spring Security 3.x.pdf;Spring Security 3.pdf;Spring Security使用手册.pdf
Shiro+Spring Security学习文档,Spring+Security-3.0.1中文官方文档.pdf,跟我学Shiro教程.pdf。。。
spring security spring security 中文文档
Spring Security3 拦截 过滤器 安全,框架原理入门
Spring Security in Action
springsecurity是一个功能强大且高度可定制的身份验证和访问控制框架。springsecurity是一个专注于为Java应用程序提供身份验证和授权的框架。与所有Spring项目一样,Spring安全性的真正威力在于它可以很容易地扩展以...