spring security reference documentation中关于 配备的介绍
转载于:http://lczluxx.blog.hexun.com/35790702_d.html
在之前版本中,配置过滤器是一件非常繁琐的过程,上一篇文章中也有介绍,关于过滤器链、Filter等的作用和配置
比如:之前版本中的FilterChain配置
分割线-----------------------------------------------------
Spring Security 参考文档 2.0.x
最小 <http>配置
只需要进行如下配置就可以实现安全配置:
<http
auto-config='true'>
<intercept-url pattern="/**" access="ROLE_USER"
/>
</http>
这表示,我们要保护应用程序中的所有URL,只有拥有
ROLE_USER角色的用户才能访问。
Note
你可以使用多个<intercept-url>元素为不同URL
的集合定义不同的访问需求,它们会被归入一个有序队
列中,每次取出最先匹配的一个元素使用。
所以你必须把期望使用的匹配条件放到最上边。
<http>元素会创建一个FilterChainProxy和filter 使
用的bean。
以前常常出现的,因为filter 顺序不正确产生的问题,不会再出现了,现在这些过滤器的位置都是预定义好的。
2.2.2.1.
auto-config包含了什么?
我们在上面用到的auto-config属性,其实是下面这些配置的缩写:
<http>
<intercept-url
pattern="/**" access="ROLE_USER" />
<form-login />
<anonymous
/>
<http-basic />
<logout />
<remember-me
/>
</http>
这些元素分别与form-login,匿名认证,基本认证,注销处理和remember-me 对应。
他们拥有各自的
属性,来改变他们的具体行为。
auto-config需要一个UserDetailsService
使用auto-config
的时候如果没配置UserDetailsService就会出现错误(比如,如果你使用了LDAP 认
证) 。 这是因为remember-me
服务在auto-config="true"的时候启动了, 它的认证机制需要
UserDetailsService来实现