覆盖默认配置的方法:<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 |
比如:
- <bean id="logoutFilter"
-
class="org.springframework.security.ui.logout.LogoutFilter">
-
<security:custom-filter position="LOGOUT_FILTER" />
-
-
<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>
<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
分享到:
相关推荐
- **自定义认证处理器**:如果需要自定义登录逻辑,可以实现`AuthenticationProvider`接口并替换默认的`DaoAuthenticationProvider`。 4. **权限控制**: 使用`@Secured`或`@PreAuthorize`注解来限制控制器方法的...
2. **配置Spring Security**:在Spring Security的配置类中,使用自定义的密码编码器替换默认的。 ```java @Configuration @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter ...
这个"SpringSecurity安全框架基础Demo"旨在帮助开发者快速理解和实践Spring Security的核心功能。 **1. 用户认证** 在Spring Security中,用户认证主要由Authentication对象负责。当用户尝试访问受保护的资源时,...
开发者可以通过XML或Java配置来定制安全设置,甚至完全替换默认的行为。 这个源码包将帮助你深入理解Spring Security的内部工作原理,包括各个组件如何协作、事件处理流程以及如何扩展其功能。对于想要提升自己在...
10. **自定义扩展**:Spring Security设计得非常模块化,允许开发者根据需求扩展和替换核心组件,以适应特定的安全需求。 在实际开发中,解压"spring-security-4.2.0.RELEASE"文件,你会发现包含诸如jar文件、源...
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 ...
3. **Filter Chain**:Spring Security的核心在于其过滤器链,其中包含了一系列预定义的过滤器,如`DelegatingFilterProxy`、`FilterSecurityInterceptor`等,它们在HTTP请求生命周期的不同阶段执行安全操作。...
- **配置Spring环境**:确保你的IDE支持Spring环境,例如MyEclipse 6.6默认支持Spring 2.5。为了兼容Spring Security 3.0,你需要手动添加Spring 3.0的支持。 - **添加Spring Security库**:解压Spring Security ...
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 -...
- **示例代码**: 在`web.xml`中配置`<filter>`和`<filter-mapping>`,定义Spring Security的入口。 - **1.2 使用命名空间** - Spring Security支持在`spring-security.xml`配置文件中使用特定的命名空间简化配置...
可以通过配置替换默认的行为,以支持从数据库中读取资源信息的功能。 **6. 控制用户信息** **6.1 MD5加密** MD5是一种常用的密码散列算法,用于加密用户密码。 **6.2 盐值加密** 盐值加密是在密码散列前加入...
我们讨论了如何在Spring Security中获取用户信息的实现代码,包括借鉴现有的Spring Security Controller自动注入参数的方法、解决默认HttpServletRequest的限制、实现HttpServletRequestWrapper和使用Filter替换原来...
- 自定义消息处理器(Message Processors)来扩展或替换默认的行为。 - 配置不同的消息类型(如文本消息、字节消息等)。 - 实现自定义的安全性机制。 #### 三、导出Spring Beans以供Flex Remoting使用 ##### 3.1 ...
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <param-name>encoding <param-value>utf-8 </filter> <filter-mapping> <filter-name>encodingfilter</filter-name>...
这个filter会替换默认的`HttpSession`实现,确保与存储层的交互。 4. **Redis配置**: 需要在Spring配置中设置Redis连接信息,包括主机名、端口、密码等,以及定义session的过期策略。 **集成步骤** 1. **添加依赖...
1. 使用`org.apache.shiro.session.mgt.eis.RedisSessionDAO`替换默认的SessionDAO,使Shiro将Session保存到Redis中。 2. 配置Redis连接池,如使用Jedis或Lettuce客户端。 3. 设置Session超时时间,以及Session ID的...