spring-security settings

本文详细介绍 Spring Security 的配置过程,包括 URL 拦截、登录登出设置、Session 管理等核心功能,并实现了自定义的安全拦截器及用户详细服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<http auto-config="true">
<!-- 配置需要拦截的 URL, 以及访问该 url 的权限 -->
<!--
<intercept-url pattern="/admin.jsp" access="ROLE_ADMIN" />
<intercept-url pattern="/index.jsp" access="ROLE_USER, ROLE_USER"/>
-->

<!-- 配置登录页面 -->
<form-login login-page="/login.jsp"
login-processing-url="/login"/>

<!-- 配置登出 -->
<logout logout-url="/logout"/>

<!-- 配置 Session 管理 -->
<concurrent-session-control exception-if-maximum-exceeded="true"/>
</http>


<!-- 配置获取资源的 ResourceDetailsService 接口的实现类的 Bean -->
<beans:bean id="resourceDetailsService"
class="cn.itcast.spring.security.ResourceDetailsServiceImpl">
<beans:property name="jdbcTemplate" ref="jdbcTemplate"/>
</beans:bean>

<!-- 在 Spring 的 IOC 容器中配置自定义的 DefaultFilterInvocationDefinitionSource 实现 -->
<beans:bean id="objectDefinitionSource"
class="cn.itcast.spring.security.DefaultFilterInvocationDefinitionSourceBean">
<beans:property name="resourceDetailsService" ref="resourceDetailsService"/>
</beans:bean>

<!--
在 Spring 的 IOC 容器中重新定义 FilterSecurityInterceptor, 并为其装配 objectDefinitionSource 属性
因为在 FilterSecurityInterceptor Bean 中还有许多属性, 其它属性需要使用自动装配的方式
-->
<beans:bean
class="org.springframework.security.intercept.web.FilterSecurityInterceptor"
autowire="byType">
<beans:property name="objectDefinitionSource" ref="objectDefinitionSource"/>
<!-- 以下配置可以使当前配置的 FilterSecurityInterceptor Bean 取代系统的默认 FilterSecurityInterceptor -->
<custom-filter before="FILTER_SECURITY_INTERCEPTOR"/>
</beans:bean>

<!-- 用户详细服务 -->
<beans:bean id="userDetailsService"
class="cn.itcast.spring.security.UserDetailsServiceImpl">
<beans:property name="jdbcTemplate" ref="jdbcTemplate"/>
</beans:bean>

<!-- 配置用户信息 -->
<authentication-provider user-service-ref="userDetailsService">
<!-- 对密码进行 MD5 加密 -->
<password-encoder hash="md5">
<salt-source user-property="username"/>
</password-encoder>
</authentication-provider>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值