1.下载spring security的最新版本,工程下载的是3.1
2. 新建工程,结构如下:
其中,涉及到的jar包可以在spring-security包中的例子中获取
3、配置spring-security.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:security="http://www.springframework.org/schema/security"
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">
<!-- 保护应用程序的所有URL,只有拥有ROLE_USER才可以访问 -->
<security:http auto-config="true">
<security:intercept-url pattern="/**" access="ROLE_USER" />
</security:http>
<!--配置认证管理器,只有用户名为user,密码为user的用户,角色为ROLE_USER可访问指定的资源 -->
<security:authentication-manager>
<security:authentication-provider>
<security:user-service>
<security:user name="user" password="user" authorities="ROLE_USER"/>
</security:user-service>
</security:authentication-provider>
</security:authentication-manager>
</beans>
4.配置web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>springSecurity</display-name>
<!--******************************** -->
<!--*******log4j日志信息的配置****** -->
<!--******************************* -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:log4j.xml</param-value>
</context-param>
<!--Spring默认刷新Log4j配置文件的间隔,单位为millisecond,可以不设置 -->
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>60000</param-value>
</context-param>
<!--******************************** -->
<!--*******spring bean的配置******** -->
<!--******************************* -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
</listener>
<!--******************************** -->
<!--*******字符集 过滤器************ -->
<!--******************************* -->
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!--******************************** -->
<!--*******session的配置************ -->
<!--******************************* -->
<session-config>
<session-timeout>30</session-timeout>
</session-config>
<!-- SpringSecurity必须的begin -->
<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>
<!-- SpringSecurity必须的end -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
5.index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>首页</title>
</head>
<body>
<h1>这里是首页,欢迎你!</h1>
<%
String[] str = session.getValueNames();
for(int i=0;i<str.length;i++){
out.println("key=="+str[i]);
out.println("value=="+session.getAttribute(str[i]));
}
%>
</body>
</html>
6部署应用,在首次浏览index.jsp时,由于没登录,spring security会自动生成登录页面,页面内容如下:
7输入用户名和密码,user,则进入首页
至此,简单的权限控制完成,在index页面中通过session可以看到存入session中的用户信息。
- 大小: 87.3 KB
- 大小: 27.1 KB
- 大小: 83.1 KB
分享到:
相关推荐
本篇将深入探讨"spring-security-examples"项目,帮助读者理解并掌握Spring Security的核心概念和应用场景。 1. **Spring Security基础** Spring Security 的核心功能包括用户认证、权限授权、访问控制以及安全...
这篇中文入门教程旨在帮助开发者快速理解并掌握Spring Security的基本概念和用法。 首先,Spring Security的核心功能包括身份验证(Authentication)和授权(Authorization)。身份验证涉及到用户登录过程,确认...
了解如何配置这些过滤器是入门Spring Security的关键。 - **示例代码**: 在`web.xml`中配置`<filter>`和`<filter-mapping>`,定义Spring Security的入口。 - **1.2 使用命名空间** - Spring Security支持在`...
本篇将深入探讨dbApi-spring-boot-starter的使用,结合提供的"dbApi-spring-boot-starter-demo"案例代码,帮助开发者理解和实践这一工具。 一、dbApi-spring-boot-starter简介 dbApi-spring-boot-starter的核心...
这篇文章的源码文件将引领我们深入理解 Spring Security 的核心概念和实际应用。以下是对这些知识点的详细解析: 1. **Spring Security 框架基础**: - **组件体系**:Spring Security 由一系列组件构成,包括过滤...
**Spring Security 3 系列文章——入门篇(一)** Spring Security 是一个强大的和高度可定制的身份验证和访问控制框架,广泛应用于Java企业级应用和Spring Boot项目中。本篇将作为Spring Security 3的入门介绍,帮助...
Spring Security的入门通常以一个简单的Hello World示例开始,通过这个示例用户可以了解如何配置过滤器,利用命名空间简化配置过程,并且完善整个项目结构。运行示例将帮助用户理解Spring Security的基本工作原理。 ...
本篇内容将围绕"spring-boot-study-base.zip"这个压缩包展开,深入探讨Spring Boot的基础知识,包括框架搭建、核心概念、代码参数学习及实践应用。 一、Spring Boot简介 Spring Boot是由Pivotal团队提供的全新框架...
总结,"spring security - helloWorld"项目是理解Spring Security入门的绝佳起点。通过这个简单的示例,我们可以了解到Spring Security的基本配置和工作流程,为进一步学习和应用Spring Security打下坚实的基础。在...
在本篇中,我们将深入探讨Spring Security的核心概念、架构和主要组件,以及如何通过简单的Demo来理解和应用这个框架。 首先,让我们了解Spring Security的基本架构。Spring Security的核心设计理念是采用过滤器链...
- **入门篇**:介绍 Spring Security 的基本原理和安装配置步骤。 - **核心功能篇**:深入讲解认证、授权、会话管理等关键功能的实现方法。 - **高级话题篇**:探讨如何通过自定义配置和扩展功能来满足更复杂的安全...
通过阅读官方文档,开发者可以了解Spring的完整生态系统,包括Spring Boot、Spring Data、Spring Security等周边项目,进一步提升开发效率。 总结来说,Spring Framework 4.2.1.RELEASE不仅是一个强大的Java应用...
### Spring Security权限管理开发手册...本手册全面覆盖了Spring Security在权限管理和Web应用保护方面的各个方面,不仅适合初学者快速入门,也适合有一定经验的开发者深入了解Spring Security的核心技术和高级特性。
### Spring Security 入门篇详解 #### Spring Security 简介 Spring Security 是 Spring 家族中的一个重要组成部分,专门用于解决应用的安全管理问题。在 Spring Boot 出现之前,Spring Security 已经存在并发展了...
本篇文章将深入探讨Spring Security 3的使用方法,帮助你理解并掌握其核心概念。 1. **配置入门** Spring Security 3的配置主要通过XML来完成。首先,你需要在Spring的配置文件中引入Spring Security的命名空间,...
hello大家好,这里是X,今天这篇博文带来的是SpringBoot安全管理:SpringSecurity,讲到安全管理,不得不说几乎所有的大型项目开发必备之一,而且有了它,对项目的安全也起到了非常大的效果,可以说是项目搭建的必备...
通过阅读 "Spring boot(一): 入门篇.pdf" 和 "Spring boot(二):web综合开发.pdf",你可以深入了解 Spring Boot 的基本概念、快速上手指南以及如何进行 Web 应用的综合开发。这些资料将引导你从初识 Spring Boot 到...
4. **spring-security3入门教程.doc**:这是Spring Security的入门教程,可能涵盖了基本概念、配置步骤、过滤器链的理解以及如何实现简单的安全控制。 5. **利用SpringAOP管理权限.doc**:Spring AOP(Aspect ...