搭建基本環(huán)境
項(xiàng)目目錄結(jié)構(gòu)如下:

項(xiàng)目目錄結(jié)構(gòu)
創(chuàng)建登錄界面
在 webapp/ 下創(chuàng)建log.jsp,登陸表單代碼如下:
<html>
<body>
<form action="j_spring_security_check" method="POST">
<input type="text" name="username" /> </br>
<input type="password" name="password" /> </br>
<input type="submit" value="submit" />
</form>
</body>
</html>
注意:
- 表單提交到
j_spring_security_check。 -
post方法提交表單。 - 用戶名
name使用username。 - 用戶密碼
name使用password。
修改spring-security配置文件security.xml
在security.xml文件中增加以下內(nèi)容:
<b:beans xmlns="http://www.springframework.org/schema/security"
xmlns:b="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd">
<http pattern="/login.jsp" security="none" />
<http auto-config="true" use-expressions="true">
<intercept-url pattern="/**" access="hasRole('ROLE_USER')" />
<form-login
login-page="/login.jsp"
login-processing-url="/j_spring_security_check"
authentication-failure-url="/login.jsp"
default-target-url="/index.jsp" />
<csrf disabled="true" />
</http>
<user-service>
<user name="user" password="password" authorities="ROLE_USER" />
</user-service>
</b:beans>
注意:
<http pattern="/login.jsp" security="none" />表示對(duì)于/login.jsp不做權(quán)限過濾。<intercept-url pattern="/**" access="hasRole('ROLE_USER')" />表示具有ROLE_USER權(quán)限的用戶才能訪問全部路徑。<form-login />標(biāo)簽用于自定義登錄界面。
1. login-page="/login.jsp" 表示使用login.jsp代替默認(rèn)登陸界面。 2. login-processing-url="/j_spring_security_check" 使用spring-security 4.x版本必須添加該屬性,表示登錄表單提交路徑。 3. authentication-failure-url="/login.jsp" 表示授權(quán)失敗之后跳轉(zhuǎn)到login.jsp界面。 4. default-target-url="/index.jsp" 表示授權(quán)成功之后默認(rèn)跳轉(zhuǎn)到index.jsp界面。
-
<user />標(biāo)簽用于授權(quán)用戶,屬性name標(biāo)志用戶名,password標(biāo)志用戶密碼,屬性authorities用來標(biāo)志該用戶所有的權(quán)限。
發(fā)布項(xiàng)目
項(xiàng)目運(yùn)行結(jié)果如下圖:

登陸界面

登陸成功界面