Spring Security学习系列(4) - Spring Security 配置 3

接下来要说的是 <http> 标签

这个标签表达的web资源访问控制, 也是权限访问核心控制单元。 以下是几个示例:

<http pattern="/static/**" security="none"/>

 表示资源 /static/** 不需要进行访问控制, 任何用户都可以访问该资源。

 其中 security 是表达该资源是否受安全控制的意思, 如果是security="noe", 表示该资源并不受控, 而如果为true, 则表示该资源受控, 需要探幽定的权限才可以进入。

<http use-expressions="true">
	<intercept-url pattern="/**" access="isAuthenticated()" />
</http>

必须登录过了才可以访问网站的所有资源。

全站可以有多个http配置, 如果上述两个配置在一块, 如下:

<http pattern="/static/**" security="none"/>
<http use-expressions="true">
	<intercept-url pattern="/**" access="isAuthenticated()" />
</http>

上述配置表达的意思是本站所有资源都必须登录过才可以访问, 除了 /static/** 

    <http use-expressions="true">
	<intercept-url pattern="/**" access="isAuthenticated()" />
        <form-login login-page="/login.htm" login-processing-url="/login-processing.htm"/>
    </http>
 

form-login表达的是登录表单处理方案,login-page 属性表示 登录页面,  login-processing-url 表示提交登录表单时的处理页面。

    <http use-expressions="true">
	<intercept-url pattern="/**" access="isAuthenticated()" />
        <logout logout-success-url="/loggedout.jsp" delete-cookies="JSESSIONID"/>
    </http>
 

logout 这个标签表示登出操作,  logout-success-url表示登出成功后的显示页面,  delete-cookies表示登出时需要删除的cookies 

    <http use-expressions="true">
	<remember-me />
    </http>
 

remember-me表示密码会被记住, 打开登录界面时, 用户名或密码会显示在登录表单上, 点击登录会直接提交用户名和密码。

猜你喜欢

转载自startfromheart.iteye.com/blog/1679543