首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

spring security遇到的一些有关问题

2012-07-04 
spring security遇到的一些问题spring security遇到的一些问题博客分类:?spring系列SecuritySpringmaven配

spring security遇到的一些问题

spring security遇到的一些问题
    博客分类:?
  • spring系列SecuritySpringmaven配置管理JSP

    昨天整理了 maven + jetty的环境,感觉还不错,非常适合自己07年买的本。

    使用m2eclipse 插件可以非常方便的添加 ?依赖和插件,要不然自己手动写是很麻烦的,有点小遗憾,添加依赖时不能多选。

    ?

    今天终于能用eclipse管理maven的 jetty了,可以run,stop,debug。 可以抛弃myeclipse了。

    ?

    下午一直在弄security 2.0的例子,郁闷了好半天。

    当加上这句话时 会出错 ?,不信你们试试

    ?? ??<intercept-url pattern="/*" filters="none" />

    ?

    加上?<intercept-url pattern="/**" filters="none" />这个反而没错。

    我很无语,还遇到一个问题是: ?no bean name springsecurityfilterchain 这个错误,

    解决方案: ?首先保证有 <http> 标签, 还有可能是applicationContext文件没有找到,

    比如当 web.xml 中为 ?<param-value>classpath*:applicationContext.xml</param-value>

    这样时 就会出现上面的问题。

    把 * 号去掉后 回复正常。这个可能是 web服务器的问题,有的帖子上让加*,有的不加也没问题。记下来备用。

    ?

    这个问题已经解决了,看了security的源码也弄明白了问题是怎样产生的。
    上面的配置应该是可以启动服务器,并且不报错的。
    问题出在 filter的执行上。
    ??? 首先security是通过一系列的过滤器来进行认证和权限管理的?
    ??? filter处理的顺序请参考其他文章,
    ??? 在FilterChainProxy中 有这样一句 getFilters(url);
    ??? 这样会根据你配置的 intecepter-url 和filter来进行查询的。
    ??? 比如? /login.jsp?? filters="none"
    ????????? /**????????? access="role_user"
    ??? 当你 访问login。jsp时 getFilters() 就会返回 null
    ??? 于是不进行权限控制,任何人都能访问到了。
    ??? 其他类似所有的 /admin/** access="role_admin"
    ??? 这种都会被 /**来进行匹配,在最后的filter进行权限验证。
    ??? 当配置 /*? filters=“none” 时 这样所有的/* 就不会进入 VirtrualFilterChain
    ??? 而用户认证,和生成 登录界面都是在 VirtrualFilterChain 中进行生成的,
    ??? 这样spring security 就默认的 登录认证,注销等url都不能起作用了


    ?

热点排行