`

maven搭建WEB项目3 - 添加springSecurity

阅读更多
    添加SpringSecurity支持
    1、在pom.xml添加springSecurity的dependency
   
<dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-core</artifactId>
        <version>3.0.5.RELEASE</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-config</artifactId>
        <version>3.0.5.RELEASE</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-taglibs</artifactId>
        <version>3.0.5.RELEASE</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-web</artifactId>
        <version>3.0.5.RELEASE</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-acl</artifactId>
        <version>3.0.5.RELEASE</version>
      </dependency>


    2、在web.xml中注册springsecurity
   
<filter>
		<filter-name>securityFilter</filter-name>
		<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
		<init-param>
			<param-name>targetBeanName</param-name>
			<param-value>springSecurityFilterChain</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>securityFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

    在classpath下添加applicationContext-security.xml,因为SS的配置文件放置在classpath下而不是WEB-INF下,所以在context-param中添加一条classpath:/applicationContext-security.xml
<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>
			classpath:/applicationContext-security.xml
			/WEB-INF/applicationContext*.xml
	    </param-value>
	</context-param>


    3、配置SS,最简化配置
   
<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/security" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:tx="http://www.springframework.org/schema/tx" 
	xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:jee="http://www.springframework.org/schema/jee" 
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:lang="http://www.springframework.org/schema/lang"
	xmlns:beans="http://www.springframework.org/schema/beans"
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
	   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
       http://www.springframework.org/schema/aop 
       http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
	   http://www.springframework.org/schema/tx 
	   http://www.springframework.org/schema/tx/spring-tx-3.0.xsd   
	   http://www.springframework.org/schema/context 
	   http://www.springframework.org/schema/context/spring-context-3.0.xsd   
	   http://www.springframework.org/schema/jee 
	   http://www.springframework.org/schema/jee/spring-jee-3.0.xsd	   
	   http://www.springframework.org/schema/lang
	   http://www.springframework.org/schema/lang/spring-lang-3.0.xsd
	   http://www.springframework.org/schema/security 
	   http://www.springframework.org/schema/security/spring-security-3.0.xsd">
	
	<http auto-config="true" access-denied-page="/accessDenied.jsp">
		<intercept-url pattern="/styles/**" filters="none"/>
		<intercept-url pattern="/images/**" filters="none"/>
		<intercept-url pattern="/scripts/**" filters="none"/>
		<intercept-url pattern="/accessDenied.jsp" filters="none"/>
		<intercept-url pattern="/login.jsp" filters="none"/>
		<intercept-url pattern="/role/**" access="ROLE_ADMIN"/>
		<intercept-url pattern="/**" access="ROLE_USER,ROLE_ADMIN"/>
		<form-login/>
		<http-basic/>
	</http>
	
	<authentication-manager>
		<authentication-provider>
			<user-service>
				<user name="amdmin" authorities="ROLE_ADMIN" password="admin"/>
			</user-service>
		</authentication-provider>
	</authentication-manager>
		
</beans:beans>


    4、测试一下
    输入http://localhost:8080/pineapple/,系统会自动转向index.jsp,经SS后转向登陆界面,如下图

    输入http://localhost:8080/pineapple/login.jsp,正常进入页面

    5、添加自己的登陆界面
    上面的配置使用的是SS的默认登陆界面,一般系统都是需要有自己的登陆界面。
    将<form-login/>修改为
<form-login login-page="/login.jsp" authentication-failure-url="/login.jsp?error=true" default-target-url="/index.jsp"/>
		<logout logout-success-url="/login.jsp"/>


    编辑login.jsp
<form action="<%=request.getContextPath() %>/j_spring_security_check" method="post">
	用户名:<input type="text" name="j_username" value="${sessionScope['SPRING_SECURITY_LAST_USERNAME']}"/></br>
	密     码:<input type="password" name="j_password" value=""/></br>
	<input type="checkbox" name="_spring_security_remember_me"/>两周之内不必登陆
	<input type="submit" value="登陆"> 
</form>


    6、再测试一下自定义的登陆界面
  • 大小: 10 KB
分享到:
评论

相关推荐

    spring-boot-maven的web完整项目框架

    **Spring Boot Maven Web 完整项目框架详解** Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目标是用来...通过这个项目,你可以快速搭建一个功能完善的 Web 应用,并深入了解 Spring Boot 和 Maven 的使用。

    maven spring security框架搭建

    &lt;artifactId&gt;spring-security-web &lt;version&gt;3.2.4.RELEASE &lt;groupId&gt;org.springframework.security &lt;artifactId&gt;spring-security-config &lt;version&gt;3.2.4.RELEASE ``` Spring Security是Spring框架提供...

    Maven搭建Spring+SpringMVC+Mybatis+MySql+SpringSecurity项目源码

    【标题】:“Maven搭建Spring+SpringMVC+Mybatis+MySql+SpringSecurity项目源码” 本项目源码展示了如何使用Maven构建一个完整的Java Web应用,它整合了Spring框架、SpringMVC、Mybatis、MySql数据库以及Spring ...

    spring web空的maven项目

    这个空的 Maven 项目是为了帮助开发者快速搭建一个基于 Spring 的 Web 应用环境。Maven 是一个项目管理和依赖管理工具,通过在 `pom.xml` 文件中配置依赖关系,可以自动化构建、测试和部署应用程序。 **一、Spring ...

    springmvc4.1+spring4.1+mybatis3.2+spring-security3.2的maven环境搭建

    在本项目中,我们主要关注的是一个基于Spring MVC 4.1、Spring 4.1、MyBatis 3.2以及Spring Security 3.2的Maven环境的搭建过程。下面将详细介绍这些技术栈的核心概念、它们如何协同工作以及如何在实际开发环境中...

    管理系统系列--基于 Spring Boot、 Spring Data JPA、 Spring Security、V.zip

    开发者可以利用Spring Boot的便利性快速搭建项目结构,Spring Data JPA简化数据访问,而Spring Security则保障了系统的安全性。为了深入了解这个管理系统,需要查看源代码和具体的配置文件,以学习它们如何协同工作...

    Maven之Spring Boot--网络商城系统基础版

    在本项目中,Spring Boot为数据库连接、安全性、缓存等提供了开箱即用的解决方案,使得开发者能够快速搭建起一个基础的商城系统框架。 2. **Maven的依赖管理**:在项目中,Maven负责管理所有所需的库和依赖项。...

    springmvn搭建的Maven项目入门

    【SpringMVC与Maven项目搭建基础】 SpringMVC作为Java Web开发中的主流框架,它提供了模型-视图-控制器(MVC)架构,简化了Web应用的开发。Maven则是一个项目管理工具,用于自动化构建、依赖管理和项目信息管理。在...

    maven 项目搭建简单的springmvc登录

    总结,通过Maven,我们可以快速地搭建一个基于SpringMVC的Web应用,并利用其强大的依赖管理能力来简化项目构建。在实际开发中,我们还需要考虑安全性、性能优化以及错误处理等多个方面,但这个简单的登录例子为我们...

    Maven 搭建的简单项目

    【标题】"Maven搭建的简单项目"涉及的是使用Maven构建Java应用程序的过程。Maven是一个项目管理和综合工具,它简化了构建、依赖管理和文档生成的任务。通过定义一个项目对象模型(POM),Maven能够自动下载所需库,...

    全套Spring Security入门到项目实战课程

    ### Spring Security 全套入门到项目实战课程知识点详解 #### 一、Spring Security 概述 **1.1 Spring Security 介绍** - **定义**: Spring Security 是一款基于 Spring 框架的身份认证(Authentication)与用户...

    spring-security3 入门篇

    - **添加依赖**: 在项目中引入Spring Security的Maven或Gradle依赖。 - **配置Security**: 创建安全配置类,重写configure()方法,设置认证和授权规则。 - **自定义用户服务**: 实现UserDetailsService接口,提供...

    Spring Security.pdf

    在开发Spring Security项目时,需要搭建Maven项目,并配置项目依赖。 第三章介绍了如何构建Spring Security工程。在创建项目时,可以通过IDE或者Maven命令创建新的Maven项目。在创建项目时,需要填写项目名称、...

    maven搭建SSM框架

    通过以上步骤,我们就可以成功地在Eclipse环境中使用Maven搭建起一个SSM框架的Web应用。这个框架为开发带来了便利,提高了开发效率,降低了项目的复杂性。在实际开发中,我们还可以根据需求添加更多功能,如安全框架...

    spring-boot mybaits spring security redis

    - **Spring Security** 是Spring家族的安全框架,为Web应用程序提供认证、授权等安全服务。 - **特点** 包括高度可配置、易于集成、强大的过滤器链机制等。 - **应用场景**: - **认证管理**:支持多种认证方式,如...

    springboot-springsecurity权限控制的万能后台管理系统

    SpringBoot-SpringSecurity权限控制的后台管理系统是一款基于Maven构建,采用SpringBoot框架与SpringSecurity进行权限管理的高效模板。这个系统旨在提供一个通用、易用的后台解决方案,以满足不同项目的管理需求。 ...

    使用Maven搭建SpringMVC

    在IT行业中,构建Web应用程序是一项常见的任务,而...在实际开发中,还可以根据需求添加其他功能,如安全控制(Spring Security)、邮件服务(Spring Mail)、缓存支持(Spring Cache)等,以构建更复杂的应用系统。

    cxf spring maven 实例

    CXF是一个开源框架,主要用于构建和部署SOAP和RESTful Web服务,Spring则是一个广泛应用的Java企业级开发框架,而Maven是项目管理和集成工具,负责构建、依赖管理和项目信息管理。本实例将展示如何利用这三者来搭建...

    spring security + spring oauth2 +spring mvc SSO单点登录需要的最小jar包集合

    - `spring-security-config`: 包含Spring Security的配置API。 - `spring-security-web`: 提供HTTP安全相关功能,如CSRF防护、表单登录等。 - `spring-security-oauth2`: 实现OAuth2协议的Spring模块。 - `spring-...

    spring-web搭建项目

    在搭建Spring Web项目时,我们需要创建标准的Maven或Gradle项目结构,包括`src/main/java`(源代码)、`src/main/resources`(资源配置)、`src/main/webapp`(Web应用目录)等。 3. **配置pom.xml或build.gradle*...

Global site tag (gtag.js) - Google Analytics