很久没有写过博客了,最近项目中需要加入spring security安全管理,网上找了一些文章,但是都跟我的实际情况有些不同,写下来做个记录,也供以后大家学习用。
1.下载最新框架包
下载spring security 3.1.4
下载struts 2.3.15.1
下载spring 3.2.2
前几天struts2刚报出两个很大的漏洞,阿里和腾讯等众多大公司都受到影响,所以此次顺便升级下struts2。
目前spring security最近GA版是3.1.4,它需要spring3.0以上的支持,所以索性将spring 升级到最新版,当前最新版应该是spring 3.2.3,但是下载的时候出了些问题,所以我更新到了spring 3.2.2,更新参考文档:http://cgs1999.iteye.com/blog/1602673,这篇文档写的相当详细,升级过程不再赘述.
SSH相关框架升级成功后,继续进入正题,往项目中加入spring security。
2. 将必要的jar包加入已有项目中
3. 加入简单配置
web.xml
<!--这里必须注意一下,就是spring security 钩子,大家都叫钩子,我也就这么叫了!就是监听拦截你请求的,这个呢必须要放到struts 拦截监听的前面!否则spring security 管理不上的! --> <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>
增加一个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-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd"> <http auto-config='true'> <intercept-url pattern="/admin.jsp" access="ROLE_ADMIN" /> <intercept-url pattern="/**" access="ROLE_USER" /> </http> <authentication-manager> <authentication-provider> <user-service> <user name="admin" password="admin" authorities="ROLE_USER, ROLE_ADMIN" /> <user name="sozhike" password="111111" authorities="ROLE_USER" /> </user-service> </authentication-provider> </authentication-manager> </beans:beans>
具体的这个文档的解释我就不写了,上面这个是最基本的例子。只是给出权限控制的说明:
用户admin/admin 有访问index.jsp+admin.jsp的权限
用户sozhike/111111 有访问index.jsp的权限,不能访问admin.jsp
4.在WebRoot目录下加入admin.jsp和index.jsp
这两个jsp只是做登录时返回用,是为了验证用户admin和sozhike是否加入了权限控制,内容自己随便加点好了
5.启动项目,查看结果
你是不是在诧异,为什么没有写登录页面?你是不是自己动手开始写了?亲,这个步骤没错哦,你没眼花,我也没少写一个页面,现在我们确实不需要login页面,因为spring security提供了测试用的Login页面,这样是为了我们不会出错,我们现在就用spring security集成的登录页面好了
6.结果
访问 http://localhost:8080/project_name
出来页面:
好了,输入上面文件中的用户名/密码,自己测试测试吧
到这里,简单的整合SSH的spring security就成功了,更深一点的应用,请关注下一期
原创文章,转载请标明出处(http://sunliyings17.iteye.com/blog/1914951),谢谢
相关推荐
ssh项目整合spring Security,并Spring Security基于数据库验证,给用户授权登录
SSH + Spring Security3.2例子
基于maven搭建的ssh+spring Security项目
Spring Security与SSH整合,Spring Security通过数据库给用户认证授权,且jar完整,除了简单配置数据库,即可运行!
此资源是对spring security使用数据库存储资源、角色、用户信息来保护http资源的实现的具体实现。可以参阅下文。 http://blog.csdn.net/shierqu/article/details/48803555 ...
SSH集成Spring+hibernate+security实现用户的增加+删除+查询+修改+权限控制+自动创建数据库,
SSH+Spring Security+MySQL实现用户登录的权限控制
ssh整合spring Security,访问数据库来实现用户的授权认证
spring security配置项目下载,里面前台使用了easyui。 我的项目是用maven搭建的,如果你配置了maven,那么就会可以很轻松的运行起项目来了, 步骤: 1、在我的项目下找到database文件夹,把里面的union_ssh.sql文件...
Spring集成SpringSecurity依赖包.也有springMVC的依赖包,直接下载引入就可用
Spring Security 安全权限管理源码
struts2.3.24,hibernate4.3.6,spring4.0.6,spring security3.2.4jar包的整合,如果不需要spring security,可以将带有spring secuirity的包全删掉
spring-security-oauth-master, spring oauth2相关代码下载地址
strtus+spring+hibernate+spring security(noe4j,fastds)里面有一些比较新的技术
NULL 博文链接:https://earl86.iteye.com/blog/285049
前端jsp、jquery、bootstrap,后端 spring、mybatis、Spring Security,集成在线考试、我的成绩、我的错题、资源大全、试卷管理等功能于一体的系统。 毕业设计是高等教育阶段学生在完成学业前所进行的一项重要学术...
spring-security-3.0.5.RELEASE
授权码模式,用户登录后可以通过一个简单的方法自动获取CODE,CODE自动去取TOKEN,有详细的 README文档介绍,基本上做到下载后就可以使用。
SSH集成Spring+hibernate+security实现用户的增加+删除+查询+修改+权限控制+
在基于Spring Boot、Spring Cloud 分布微服务开发过程中,根据实际项目环境,需要选择、集成符合项目需求的各种组件和积累各种解决方案。基于这样的背景下,我开源了本示例项目,方便大家快速上手Spring Boot、...