web.xml
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/context/applicationContext.xml,/WEB-INF/context/applicationContext-security.xml
</param-value>
</context-param>
<!-- Spring Security2 配置DelegatingFilterProxy -->
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>
org.springframework.web.filter.DelegatingFilterProxy
</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>org.springframework.security.ui.session.HttpSessionEventPublisher</listener-class>
</listener>
applicationContext-security.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="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-2.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-2.0.4.xsd">
<!--
url过滤是按照顺序执行的,所以最前面的是最想先过滤的
1.form-login 指定了登陆界面,如果没具体指定,spring security将用自身的登陆界面,default-target-url: 登录成功后转到那个页面
2.http-basic 加载系列默认的过滤器
3.logout 加载离开过滤器, logout-success-url: 登出成功跳转到的页面(跳转)
4.max-sessions="1": 一个用户第二次登陆时,第一次失效
5.exception-if-maximum-exceeded="true": 防止第二次登陆
6. access-denied-page: 该用户无权限时转到指定页面(转向)
-->
<http access-denied-page="/AccessDenied.html">
<intercept-url pattern="/Login.jsp*" filters="none" />
<intercept-url pattern="/User/**" access="ROLE_ADMIN" />
<intercept-url pattern="/user*" access="ROLE_ADMIN" />
<intercept-url pattern="/Article/**" access="ROLE_ADMIN,ROLE_USER" />
<intercept-url pattern="/art*" access="ROLE_ADMIN,ROLE_USER" />
<intercept-url pattern="/**" access="ROLE_ADMIN,ROLE_USER" />
<form-login login-page="/Login.jsp" default-target-url="/Success.html"/>
<logout logout-success-url="/Login.jsp"/>
<http-basic/>
<concurrent-session-control max-sessions="1" exception-if-maximum-exceeded="true"/>
</http>
<!-- 认证供应商 -->
<authentication-provider>
<password-encoder hash="plaintext"/>
<user-service>
<user name="admin" password="admin" authorities="ROLE_ADMIN" />
<user name="zhangsan" password="zhangsan" authorities="ROLE_USER" />
</user-service>
</authentication-provider>
</beans:beans>
Login.jsp
<form name="f" action="j_spring_security_check" method="POST">
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="j_username" /></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="j_password" /></td>
</tr>
<tr>
<td><input type="checkbox" name="_spring_security_remember_me"></td>
<td>两周之内不用输入密码</td>
</tr>
<tr><td colspan="2"><input name="submit" type="submit" value="登 录"></td></tr>
<tr><td colspan="2"><input name="reset" type="reset" value="重 置"></td></tr>
</table>
</form>
现在想更深入的学习,网上的资料没合适的。
想实现的功能
1. 当用户登录时,用户名和密码要与数据库中的对应,然后存到session里,以备用。
2.管理员可以给 用户分配和取消权限,不像上面是固定的。
3.听说还要写的什么类?UserDetailsServiceImp?
最近,天天到网上搜索,有的打着spring security2 或acegi2.x的旗号,其配置那是相当的繁琐(估计是1.x的,骗人),而且相关的代码和类都没展现全,对我这菜鸟级的感到很迷茫。希望高手们能献出自己的完整小例子,倡导资源共享。能帮上忙的尽管来吧。谢谢!
分享到:
相关推荐
详细的spring security2.x配置
Spring Security 3.x 参考手册 中文版 CHM版 绝对真实! 请打不开的网友自己检查下自己的电脑设置,CHM格式有时候有打不开的可能,下不了的,请检查下自己的网络。
spring sercurity 3.x 很详细的官方中文文档
spring security2.0.x chm 包含 1. spring security2.0.x api 2. spring security2.0.x 参考手册 3. spring security2.0.x 安全权限管理手册
springsecurity是一个功能强大且高度可定制的身份验证和访问控制框架。springsecurity是一个专注于为Java应用程序提供身份验证和授权的框架。与所有Spring项目一样,Spring安全性的真正威力在于它可以很容易地扩展以...
这个例子是我http://www.springsource.org/download下载的,然后...可以直接运行的程序。 开发环境:MyEclipse 6.0.1 + mypring3.05 + spring-security-core-3.1.0.RC1.jar 网上可运行的例子太少了。和大家分享一下。
springSecurity3.x 非常不错的实例
SpringSecurity3.x源码工程,对应文档的工程包,部署好后在数据库建表可直接打开使用。
spring security 3.x,欢迎下载,佣金只收一个点
Spring Security 3.pdf Spring Security 3.pdf Spring Security 3.pdf Spring Security 3.pdf
英文版本,主要对spring security 3.0.x 进行了介绍, 以及如何使用spring 的 安全架构来进行 web 开发.
Spring Security 3.x 完整入门教程 源代码 MyEclipse工程,请大家自己加入lib。
springsecurity3.x快速构建企业级安全是罗时飞写的一本关于springsecurity3.x的书.
Spring Security 3.x 官网文档 chm格式 (中文版) Spring+Security+3.x+Reference_CN.chm
该框架是博主整合的框架,所用技术是spring 4.x+spring mvc+4.x+mybatis4.x+spring security3.x,并附带springsecurity.sql文件
Spring Security 2.0.x Sample Code
Spring Security 2.0.x完全中文参考文档 学习Asegi Security 的不可或缺的东西! 完全版文档,绝无仅有!
Spring Security 3.x 入门教程 中文WORD版,这个是针对3.x版本的网友整理的。
Spring Security2.0.x中文参考手册.CHM