关于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 的配置。要知后面如何,且听下节分解。
分享到:
相关推荐
Spring Security架构中的角色表在权限模型中起到了核心作用。角色表用于连接用户与权限、菜单,因为一个用户可以有多个角色,一个角色也可以关联多个权限和菜单,而一个权限或菜单也可以被多个角色共享。这种多对多...
Spring Security尤其擅长于从复杂的业务逻辑中抽离出安全逻辑,使开发者能够专注于业务的实现,而将安全相关的任务交由专业的框架处理。 #### Spring Security框架介绍 Spring Security,前身为Acegi Security,自...
综上所述,这两份SpringSecurity的中文文档是学习和掌握SpringSecurity的宝贵资料,它们将覆盖从基础概念到高级特性的全方位讲解,无论是初学者还是经验丰富的开发者,都能从中受益。通过深入学习和实践,开发者能够...
《Spring Security 安全权限管理手册》是一本深入解析Spring Security框架的专业指南,对于正在学习或已经在使用Spring框架的开发者来说,它提供了丰富的知识和实践经验。Spring Security是Spring生态系统中的一个...
SpringSecurity是Java领域中一款强大的安全框架,专为Web应用程序设计,用于实现身份验证和授权。这个名为"SpringSecurity素材.zip"的压缩包文件很可能包含了关于如何使用SpringSecurity进行安全控制的各种资料。...
- **Java配置**:自Spring Security 3.2起,可以使用Java配置类来代替XML配置,使得配置更加直观和可测试。 4. **Web安全** - **Form Login**:Spring Security提供内置的登录表单处理,包括登录页面和登录失败/...
它最初名为Acegi Security,自Spring 2.0版起被纳入Spring生态系统的官方安全组件。Spring Security 2.0.4是该框架的一个较早版本,但仍然包含许多核心功能,适合初学者了解基础和原理。 在学习Spring Security时,...
Spring Security的重要性:解释Spring Security在现代Web应用程序中的重要性,以及它对于保护应用程序安全所起到的关键作用。 适合Java新手的学习资源:介绍针对初学者设计的Spring Security学习资源,例如教程、...
SpringBoot和SpringSecurity是Java开发领域中两个非常重要的框架,它们在构建现代Web应用程序时起着关键作用。SpringBoot简化了Spring应用的初始搭建以及开发过程,而SpringSecurity则为我们的应用提供了强大的安全...
在Spring Security中,过滤器是实现这些功能的关键部分,它们在HTTP请求处理链中起作用,执行安全相关的检查和操作。 要创建一个IP过滤器,我们首先要定义一个实现了`Filter`接口的类。这个类通常会检查每个请求的...
Spring Security 是一个强大的安全框架,用于Java Web应用的安全管理。这个"spring security demo"是逐步构建的...通过学习和实践这些示例,你可以建立起对Spring Security的强大理解,为你的应用提供坚实的安全保障。
通过以上内容,读者将对Spring Security有一个全面的理解,能够搭建起基本的Spring Security框架并应用于实际项目中,为Web应用提供坚实的安全保障。在后续的学习中,可以深入研究Spring Security的高级特性,如...
- 在web.xml中配置DelegatingFilterProxy来代理SpringSecurity中的核心部分过滤器,以及如何让这些过滤器获得Spring的webApplicationContext生命周期支持。 - 在Spring配置文件中引入SpringSecurity命名空间,并进行...
SpringSecurity是Spring生态中的一个强大安全框架,用于处理应用程序的安全需求,包括认证和授权。它为Java和Spring应用提供了一种可扩展的方式来控制对资源的访问。本资料包旨在帮助编程初学者,尤其是那些自称...
标题中的"Spring Framework 3.0.5+Spring Security 3.0.5+ mybatis 3.0.5+ Struts 2.2.3整合代码"涉及到四个关键的Java开发框架,它们分别是Spring Framework、Spring Security、MyBatis和Struts 2。这四个框架在...
SpringSide和Spring Security是两个在Java开发领域中非常重要的开源项目,它们分别专注于构建Web应用程序的基础设施和安全防护。在本文中,我们将深入探讨这两个工具的核心概念、应用场景以及如何进行学习。 ...
- 使用Java配置:自Spring 3.1起,Spring Security也可以通过Java配置,更加直观和简洁。 在Spring Security 3.1.4的官方文档中,详细介绍了这些概念、配置示例以及最佳实践。开发者可以通过阅读文档来深入理解并...
Spring Security是一款功能强大且可高度定制的认证和访问控制框架,它是安全领域中Java平台上的事实上的标准。Spring Security 4.0.3版本是这个框架的一个分支,提供了用户登录系统和操作权限管理系统的入门要点,使...
spring security 学习总结暑假的时候在学习了Spring安全并成功运用到了项目中。在实践中摸索出了一套结合JSON +智威汤逊(JSON网络令牌)+Spring引导+ Spring Security的技术的权限方案趁着国庆假期记录一下。 内容 ...