配置spring-security笔记

spring security可以使用XML schema 的namespace方式配置。(其实就是spring在解析配置时,根据namespace调用相关的处理类,在context中添加BeanDefinition。 如果在context中已经有相关的bean definition,则使用己有的。这样,可以自己配置同名的或者同接口,同父类的bean替换默认的。)
<http auto-config="true" >
<logout logout-url="/logout"/> <!--登出url,自动实现-->
<intercept-url pattern="/**" access="IS_AUTHENTICATED_FULLY" />
<!--用IS_AUTHENTICATED_FULLY表示登录后用户(不包括REMEMBER_ME)-->
<intercept-url pattern="/static/*" filters="none"/>
<intercept-url pattern="/login_page.jsp" filters="none"/>
<form-login login-page="/login_page.jsp" default-target-url='/home'
always-use-default-target='true' />
</http>

IS_AUTHENTICATED_FULLY 在类AuthenticatedVoter 中声明。

上面的配置是未开启权限表达式时的。如果要使用表达式的话,配置要改为如下形式。
<http auto-config="true" use-expressions="true" >
<logout logout-url="/logout"/>

<!-- Define URL permission start-->
<intercept-url pattern="/manuser*" access="hasRole('AUTH_MAN_USER')" />
<!-- Define URL permission end-->

<intercept-url pattern="/static/**" filters="none"/>
<intercept-url pattern="/login" filters="none"/>
<intercept-url pattern="/**" access="isAuthenticated()" />
<form-login login-page="/login" default-target-url='/home'
always-use-default-target='false' />
<access-denied-handler error-page="/access_denied"/>
</http>
access属性的值要用表达式声明……

可以利用<intercept-url 把权限管理集中到安全配置里。

你可能感兴趣的:(spring,bean,Security,配置管理,Access)