首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

spring security从0学起

2012-10-28 
spring security从零学起关于spring security 2.x的使用,网上的讨论日渐多了起来,因为工作的原因,开发一个

spring security从零学起
关于spring security 2.x的使用,网上的讨论日渐多了起来,因为工作的原因,开发一个项目中需要,我也开始了对于它的学习。
一开始只是听说过acegi,甚至读这个词的时候还是一个字母一个字母的读出来,到后来在官网,网友的博客等一系列渠道了解了一些皮毛,关于整个spring security的介绍就不多说了,相信网络上这一方面的资料有很多的,如果有网友有兴趣,我只说一下acegi的读音:ah-see-gi。呵呵
关于一个新的框架,大家是从什么地方入手学的呢?我相信首先会从官方给的Demo里吧,呵呵。我也一样。从官网下载了spring security2.0.5的release版本后,解压出来包括两个文件夹,一个是相应的jar包及其源码,另一个是API。某天看到有个网友在找官方Demo的源码,其实也在解压后的dist文件夹中。
好了,言归正传。开始第一个最简的spring security 的配置,让第一个应用跑起来。
第一步,建立一个WEB工程,并添加了spring的支持。将dist文件夹中的
spring-security-acl-2.0.5.RELEASE.jar
spring-security-core-2.0.5.RELEASE.jar
spring-security-core-tiger-2.0.5.RELEASE.jar
spring-security-taglibs-2.0.5.RELEASE.jar
相信从文件名就可以看出每个JAR的大致功能。第一个ACL以后再讲,第二个为其核心,第三个是对JDK1.5开始的Annotation的支持,第四个为其标签库。
将官方第一个Demo中的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.1.xsd">    <http auto-config="true">        <intercept-url pattern="/protect/**" access="ROLE_ADMIN"/>        <intercept-url pattern="/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />    </http>    <authentication-provider>        <user-service>            <user name="march" password="march" authorities="ROLE_ADMIN, ROLE_USER" />            <user name="scott" password="tiger" authorities="ROLE_USER" />    </user-service></authentication-provider></beans:beans>

web.xml中加入如下内容:
<context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/applicationContext-security.xml</param-value></context-param>    <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.web.context.ContextLoaderListener</listener-class></listener>    <listener>      <listener-class>org.springframework.security.ui.session.HttpSessionEventPublisher</listener-class>    </listener>

其余的jsp页面可以参考我文后的附近。这样,一个简单的应用就搭建了起来。通过这个应用,我们可以总体上了解一下spring security 的配置。要知后面如何,且听下节分解。

热点排行