spring security 详解
spring-security.xml
<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.2.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-4.0.xsd "> <http pattern="/login" security="none"/> <http auto-config="true"> <headers> <frame-options policy="SAMEORIGIN"/> </headers> <http-basic /> <csrf request-matcher-ref="csrfSecurityRequestMatcher"/> </http> <beans:bean id="csrfSecurityRequestMatcher" class="com.curiousby.csrf.CsrfSecurityRequestMatcher"> <beans:property name="execludeUrls"> <beans:list> <beans:value>/test/</beans:value> <beans:value>/index/</beans:value> </beans:list> </beans:property> </beans:bean> <authentication-manager> </authentication-manager> </beans:beans>
/* * Project: .web * * File Created at 2017年3月15日 * * Copyright 2016 Corporation Limited. * All rights reserved. * * This software is the confidential and proprietary information of * curiousby Company. ("Confidential Information"). You shall not * disclose such Confidential Information and shall use it only in * accordance with the terms of the license. */ package com.curiousby.csrf; import java.util.List; import java.util.regex.Pattern; import javax.servlet.http.HttpServletRequest; import org.springframework.security.web.util.matcher.RequestMatcher; /** * @see com.curiousby.csrf.CsrfSecurityRequestMatcher * @Type CsrfSecurityRequestMatcher.java * @Desc * @author baoyou curiousby@163.com * @date 2017年3月15日 下午3:44:57 * @version */ public class CsrfSecurityRequestMatcher implements RequestMatcher { private Pattern allowedMethods = Pattern.compile("^(GET|HEAD|TRACE|OPTIONS)$"); @Override public boolean matches(HttpServletRequest request) { if (execludeUrls != null && execludeUrls.size() > 0) { String servletPath = request.getServletPath(); for (String url : execludeUrls) { if ("POST".equals(request.getMethod())) { if (servletPath.contains(url)) { System.out.println("---------排除掉的post方法--------" + servletPath); return false; } } } } return !allowedMethods.matcher(request.getMethod()).matches(); } /** * 需要排除的url列表 */ private List<String> execludeUrls; public List<String> getExecludeUrls() { return execludeUrls; } public void setExecludeUrls(List<String> execludeUrls) { this.execludeUrls = execludeUrls; } } /** * Revision history * ------------------------------------------------------------------------- * * Date Author Note * ------------------------------------------------------------------------- * 2017年3月15日 baoyou curiousby@163.com creat */
web.xml
<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>
捐助开发者
在兴趣的驱动下,写一个免费
的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(右上角的爱心标志,支持支付宝和微信捐助),没钱捧个人场,谢谢各位。
谢谢您的赞助,我会做的更好!
相关推荐
JSP 开发之Spring Security详解 前言: spring Security是一个能够为基于Spring的企业应用系统提供描述性安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring IoC...
在提供的压缩包`springsecurity配置demo`中,你将找到示例代码和详细说明,这将帮助你更好地理解和实践上述概念。通过学习和实践这些示例,你将能够为自己的Spring应用程序构建强大的安全防护。
Spring Security 是一个强大的安全框架,用于管理Web应用的认证和授权。在Spring Security中,`UserDetails` 是一个核心概念,它代表了系统的用户信息。本文将深入探讨`UserDetails`的实现原理,并通过示例代码进行...
SpringSecurity课程文档下载 pdf 教学
Spring Security OAuth2是一个强大的安全框架,它为Web应用程序提供了安全认证和授权的功能。OAuth2则是一种开放标准,允许用户授权第三方应用访问他们存储在另一服务提供商的数据,而无需分享他们的用户名和密码。...
**Spring Security 3 多用户登录实现详解** Spring Security 是一个强大的、高度可定制的身份验证和访问控制框架,广泛应用于Java EE平台上的安全解决方案。在本文中,我们将深入探讨如何在Spring Security 3中实现...
### Spring Security核心概念与实践详解 #### Spring Security概述 在深入了解Spring Security之前,我们先回顾一下没有Spring Security的权限管理场景。在传统架构中,权限验证逻辑往往与业务逻辑紧密交织,导致...
SpringBoot + Spring Security 基本使用及个性化登录配置详解 Spring Security 是一个功能强大且灵活的安全框架,它提供了认证、授权、攻击防护等功能。SpringBoot 是一个基于 Spring 框架的框架,它提供了很多便捷...
### Spring Security 3.0.5中文详解 #### 一、Spring Security简介 Spring Security是一种基于Spring AOP和Servlet过滤器的安全框架,旨在为应用程序提供全面的安全性解决方案。该框架能够在Web请求级别和方法调用...
Spring Security 是一个强大的且高度可定制的身份验证和访问控制框架,广泛用于构建安全的Java Web应用程序。本教程将深入探讨Spring Security的基本使用和配置代码,帮助你理解和实践这个框架。 首先,Spring ...
**Spring Security新手入门级Maven实例详解** Spring Security是一个强大且高度可定制的身份验证和访问控制框架,用于Java和Java EE应用。它为应用程序提供了全面的安全解决方案,包括用户认证、授权以及安全配置。...
**Spring Security 模块详解** Spring Security 是一个强大的且高度可定制的身份验证和访问控制框架,主要用于构建安全的 Java Web 应用程序。它提供了一套全面的安全解决方案,包括身份验证、授权、会话管理以及跨...
### Spring Security 执行流程详解 - **容器启动**:启动时会加载系统资源与权限列表。 - **用户发出请求**:用户尝试访问受保护的资源。 - **过滤器拦截**:请求被 `CustomFilterSecurityInterceptorImpl` 拦截。 ...
**Spring Security集成CAS客户端实例详解** 在Web应用中,安全是至关重要的,Spring Security和CAS(Central Authentication Service)是两种广泛使用的安全框架。本实例旨在展示如何将Spring Security与CAS结合,...
**Spring Security 入门实例详解** Spring Security 是一个强大的安全框架,用于保护基于 Java 的 Web 应用程序。它提供了一套完整的访问控制和身份验证机制,帮助开发者处理应用程序的安全需求。本教程将引导你...
### Spring Security与Spring Boot集成详解 #### 一、Spring Security简介 Spring Security 是一个功能强大的安全框架,它为基于 Java 的应用程序提供了身份验证(authentication)、授权(authorization)、CSRF ...
### Spring Security 多登录页面配置详解 在许多大型企业级应用中,为了更好地实现权限管理和用户体验,往往会采用多个登录页面的方式来进行用户身份验证。这种方式能够有效地将不同类型的用户(如前台用户、后台...
### Spring Security 4 登录示例详解 #### 一、概览 在现代Web应用开发中,安全性至关重要。Spring Security 是一款广泛使用的安全框架,它为基于Spring的应用提供了全面的安全解决方案,包括认证、授权等核心功能...