`

spring security 替换默认的filter

阅读更多

覆盖默认配置的方法:<security:custom-filter position="alias"/>,position为相应filter的别名。

 对应关系:

 

CHANNEL_FILTER ChannelProcessingFilter
CONCURRENT_SESSION_FILTER ConcurrentSessionFilter
SESSION_CONTEXT_INTEGRATION_FILTER HttpSessionContextIntegrationFilter
LOGOUT_FILTER LogoutFilter
X509_FILTER X509PreAuthenticatedProcessigFilter
PRE_AUTH_FILTER Subclass of AstractPreAuthenticatedProcessingFilter
CAS_PROCESSING_FILTER CasProcessingFilter
AUTHENTICATION_PROCESSING_FILTER AuthenticationProcessingFilter
BASIC_PROCESSING_FILTER BasicProcessingFilter
SERVLET_API_SUPPORT_FILTER classname
REMEMBER_ME_FILTER RememberMeProcessingFilter
ANONYMOUS_FILTER AnonymousProcessingFilter
EXCEPTION_TRANSLATION_FILTER ExceptionTranslationFilter
NTLM_FILTER NtlmProcessingFilter
FILTER_SECURITY_INTERCEPTOR FilterSecurityInterceptor
SWITCH_USER_FILTER SwitchUserProcessingFilter

 

比如:

Xml代码 复制代码
  1. <bean id="logoutFilter"  
  2.     class="org.springframework.security.ui.logout.LogoutFilter">  
  3.     <security:custom-filter position="LOGOUT_FILTER" />  
  4.     <!-- 退出后指向的 URL -->  
  5.     <constructor-arg value="${security.logout_success_url}" />  
  6.     <constructor-arg>  
  7.         <list>  
  8.             <bean  
  9.                 class="org.springframework.security.ui.logout.SecurityContextLogoutHandler" />\   
  10.         </list>  
  11.     </constructor-arg>  
  12.     <property name="filterProcessesUrl"  
  13.         value="${security.logout_processes_url}" />  
  14. </bean>  
    <bean id="logoutFilter"
        class="org.springframework.security.ui.logout.LogoutFilter">
        <security:custom-filter position="LOGOUT_FILTER" />
        <!-- 退出后指向的 URL -->
        <constructor-arg value="${security.logout_success_url}" />
        <constructor-arg>
            <list>
                <bean
                    class="org.springframework.security.ui.logout.SecurityContextLogoutHandler" />\
            </list>
        </constructor-arg>
        <property name="filterProcessesUrl"
            value="${security.logout_processes_url}" />
    </bean>


这个filter将覆盖默认的logoutFilter

分享到:
评论

相关推荐

    Spring Security 3多用户登录实现一

    - **自定义认证处理器**:如果需要自定义登录逻辑,可以实现`AuthenticationProvider`接口并替换默认的`DaoAuthenticationProvider`。 4. **权限控制**: 使用`@Secured`或`@PreAuthorize`注解来限制控制器方法的...

    Spring security 自定义密码加密方式的使用范例。

    2. **配置Spring Security**:在Spring Security的配置类中,使用自定义的密码编码器替换默认的。 ```java @Configuration @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter ...

    SpringSecurity安全框架基础Demo

    这个"SpringSecurity安全框架基础Demo"旨在帮助开发者快速理解和实践Spring Security的核心功能。 **1. 用户认证** 在Spring Security中,用户认证主要由Authentication对象负责。当用户尝试访问受保护的资源时,...

    spring security.rar

    开发者可以通过XML或Java配置来定制安全设置,甚至完全替换默认的行为。 这个源码包将帮助你深入理解Spring Security的内部工作原理,包括各个组件如何协作、事件处理流程以及如何扩展其功能。对于想要提升自己在...

    spring-security-4.2.0.RELEASE-dist

    10. **自定义扩展**:Spring Security设计得非常模块化,允许开发者根据需求扩展和替换核心组件,以适应特定的安全需求。 在实际开发中,解压"spring-security-4.2.0.RELEASE"文件,你会发现包含诸如jar文件、源...

    spring security 参考手册中文版

    Spring Security 参考 1 第一部分前言 15 1.入门 16 2.介绍 17 2.1什么是Spring Security? 17 2.2历史 19 2.3版本编号 20 2.4获得Spring安全 21 2.4.1使用Maven 21 Maven仓库 21 Spring框架 22 2.4.2 Gradle 23 ...

    spring2.0 security

    3. **Filter Chain**:Spring Security的核心在于其过滤器链,其中包含了一系列预定义的过滤器,如`DelegatingFilterProxy`、`FilterSecurityInterceptor`等,它们在HTTP请求生命周期的不同阶段执行安全操作。...

    spring security 3.0.5中文详解

    - **配置Spring环境**:确保你的IDE支持Spring环境,例如MyEclipse 6.6默认支持Spring 2.5。为了兼容Spring Security 3.0,你需要手动添加Spring 3.0的支持。 - **添加Spring Security库**:解压Spring Security ...

    SpringSecurity 3.0.1.RELEASE.CHM

    1.1. Spring Security是什么? 1.2. 历史 1.3. 发行版本号 1.4. 获得Spring Security 1.4.1. 项目模块 1.4.1.1. Core - spring-security-core.jar 1.4.1.2. Web - spring-security-web.jar 1.4.1.3. Config -...

    Spring Security3技术手册

    - **示例代码**: 在`web.xml`中配置`&lt;filter&gt;`和`&lt;filter-mapping&gt;`,定义Spring Security的入口。 - **1.2 使用命名空间** - Spring Security支持在`spring-security.xml`配置文件中使用特定的命名空间简化配置...

    Spring Security

    可以通过配置替换默认的行为,以支持从数据库中读取资源信息的功能。 **6. 控制用户信息** **6.1 MD5加密** MD5是一种常用的密码散列算法,用于加密用户密码。 **6.2 盐值加密** 盐值加密是在密码散列前加入...

    spring security获取用户信息的实现代码

    我们讨论了如何在Spring Security中获取用户信息的实现代码,包括借鉴现有的Spring Security Controller自动注入参数的方法、解决默认HttpServletRequest的限制、实现HttpServletRequestWrapper和使用Filter替换原来...

    spring-flex官方文档

    - 自定义消息处理器(Message Processors)来扩展或替换默认的行为。 - 配置不同的消息类型(如文本消息、字节消息等)。 - 实现自定义的安全性机制。 #### 三、导出Spring Beans以供Flex Remoting使用 ##### 3.1 ...

    SSH和SSI等框架常用基础配置web.xml

    &lt;filter-class&gt;org.springframework.web.filter.CharacterEncodingFilter&lt;/filter-class&gt; &lt;param-name&gt;encoding &lt;param-value&gt;utf-8 &lt;/filter&gt; &lt;filter-mapping&gt; &lt;filter-name&gt;encodingfilter&lt;/filter-name&gt;...

    spring-session:spring session+redis实现分布式缓存

    这个filter会替换默认的`HttpSession`实现,确保与存储层的交互。 4. **Redis配置**: 需要在Spring配置中设置Redis连接信息,包括主机名、端口、密码等,以及定义session的过期策略。 **集成步骤** 1. **添加依赖...

    shiro-redis-cluster

    1. 使用`org.apache.shiro.session.mgt.eis.RedisSessionDAO`替换默认的SessionDAO,使Shiro将Session保存到Redis中。 2. 配置Redis连接池,如使用Jedis或Lettuce客户端。 3. 设置Session超时时间,以及Session ID的...

Global site tag (gtag.js) - Google Analytics