这是我的配置文件内容:
<?xml version="1.0" encoding="UTF-8"?>
<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.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-3.1.xsd"> <!-- 系统安全配置 -->
<http pattern="/example/css/**" security="none" />
<http pattern="/example/images/**" security="none" />
<http pattern="/example/js/**" security="none" />
<http pattern="/login.jsp" security="none" />
<http pattern="/index.jsp" security="none" />
<http pattern="/system/login_Users.do" security="none" />
<http pattern="/j_logout.do" security="none" />
<http auto-config="true" use-expressions="true"> <form-login default-target-url="/index.jsp" login-page="/login.jsp"
authentication-failure-url="/login.jsp?error=true" />
<logout logout-url="/j_logout.do" logout-success-url="/login.jsp" /> <remember-me key="RememberUserInfo" /> <custom-filter ref="securityInterceptorFilter" after="FILTER_SECURITY_INTERCEPTOR" />
</http>
<authentication-manager alias="authenticationManager">
<authentication-provider user-service-ref="userDetailServiceImpl">
<!--<password-encoder hash="sha-256" base64="true" />--> </authentication-provider>
</authentication-manager>
<!-- 实现了UserDetailsService的Bean -->
<beans:bean id="userDetailServiceImpl"
class="com.dxb.core.security2.UserDetailServiceImpl">
<beans:property name="usersService" ref="usersService"></beans:property>
</beans:bean>
<!-- 自定义验证过滤器 -->
<beans:bean id="securityInterceptorFilter"
class="com.dxb.core.security2.SecurityInterceptorFilter">
<beans:property name="securityDataSource" ref="securityDataSource" />
</beans:bean>
<!-- 验证数据源加载 -->
<beans:bean id="securityDataSource"
class="com.dxb.core.security2.SecurityMetadataSource">
<beans:property name="rolesService" ref="rolesService" />
</beans:bean>
</beans:beans>在登录action中执行了以下代码:
Authentication authRequest = new UsernamePasswordAuthenticationToken(
user.getAccount(), user.getPassword()); Authentication authentication = authenticationManager
.authenticate(authRequest);
SecurityContextHolder.getContext().setAuthentication(authentication);登录成功后,在securityInterceptorFilter过滤器中无法获取当前用户。
请问怎么把用户信息放入容器啊?????
<?xml version="1.0" encoding="UTF-8"?>
<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.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-3.1.xsd"> <!-- 系统安全配置 -->
<http pattern="/example/css/**" security="none" />
<http pattern="/example/images/**" security="none" />
<http pattern="/example/js/**" security="none" />
<http pattern="/login.jsp" security="none" />
<http pattern="/index.jsp" security="none" />
<http pattern="/system/login_Users.do" security="none" />
<http pattern="/j_logout.do" security="none" />
<http auto-config="true" use-expressions="true"> <form-login default-target-url="/index.jsp" login-page="/login.jsp"
authentication-failure-url="/login.jsp?error=true" />
<logout logout-url="/j_logout.do" logout-success-url="/login.jsp" /> <remember-me key="RememberUserInfo" /> <custom-filter ref="securityInterceptorFilter" after="FILTER_SECURITY_INTERCEPTOR" />
</http>
<authentication-manager alias="authenticationManager">
<authentication-provider user-service-ref="userDetailServiceImpl">
<!--<password-encoder hash="sha-256" base64="true" />--> </authentication-provider>
</authentication-manager>
<!-- 实现了UserDetailsService的Bean -->
<beans:bean id="userDetailServiceImpl"
class="com.dxb.core.security2.UserDetailServiceImpl">
<beans:property name="usersService" ref="usersService"></beans:property>
</beans:bean>
<!-- 自定义验证过滤器 -->
<beans:bean id="securityInterceptorFilter"
class="com.dxb.core.security2.SecurityInterceptorFilter">
<beans:property name="securityDataSource" ref="securityDataSource" />
</beans:bean>
<!-- 验证数据源加载 -->
<beans:bean id="securityDataSource"
class="com.dxb.core.security2.SecurityMetadataSource">
<beans:property name="rolesService" ref="rolesService" />
</beans:bean>
</beans:beans>在登录action中执行了以下代码:
Authentication authRequest = new UsernamePasswordAuthenticationToken(
user.getAccount(), user.getPassword()); Authentication authentication = authenticationManager
.authenticate(authRequest);
SecurityContextHolder.getContext().setAuthentication(authentication);登录成功后,在securityInterceptorFilter过滤器中无法获取当前用户。
请问怎么把用户信息放入容器啊?????
解决方案 »
- Extjs3.4版本里如何显示出pdf
- servlet调用servlet的问题
- telnet连接servlet问题
- 各位,这个程序如何改成多线程的?
- PreparedStatement编码问题
- |||||Connection reset by peer: socket write error怎么解决??参与有分||||||||
- 求助!关于用SQLSERVER2000的问题
- thinking in java中的一个列子请过来看看
- 请教高手怎么修改J2EE服务其中的端口啊?
- 谁能举个struts的实例,我搞了2天也没实现,好像知道是那么回事,就是运行不通过!
- 爬虫抓取url并保存url之间的关系(web图的边)应该用什么数据库?
- quartz cornExpression 配置文件中 仅执行一次(当启动的时候) 怎么写
<http pattern="/system/login_Users.do" security="none" />
去掉就行了,不知道为什么