Java siteminder sso和spring安全测试
我正在制作一个Java门户应用程序,可以通过Siteminder单点登录进行访问 我让应用程序使用以下bean拒绝任何没有SM_用户ID的请求:Java siteminder sso和spring安全测试,java,filter,spring-security,single-sign-on,siteminder,Java,Filter,Spring Security,Single Sign On,Siteminder,我正在制作一个Java门户应用程序,可以通过Siteminder单点登录进行访问 我让应用程序使用以下bean拒绝任何没有SM_用户ID的请求: <bean id="siteminderFilter" class="org.springframework.security.web.authentication.preauth.RequestHeaderAuthenticationFilter"> <property name="principalRequestHeade
<bean id="siteminderFilter" class="org.springframework.security.web.authentication.preauth.RequestHeaderAuthenticationFilter">
<property name="principalRequestHeader" value="SM_USERID"/>
<property name="authenticationManager" ref="authenticationManager" />
</bean>
<bean id="preauthAuthProvider" class="org.springframework.security.web.authentication.preauth.PreAuthenticatedAuthenticationProvider">
<property name="preAuthenticatedUserDetailsService">
<bean id="userDetailsServiceWrapper" class="org.springframework.security.core.userdetails.UserDetailsByNameServiceWrapper">
<property name="userDetailsService" ref="ssoUserDetailsService"/>
</bean>
</property>
</bean>
My SSOuserDetails服务根据SM_USERID头查找用户,并将其作为spring用户返回
我的问题是我无法在本地完成这项工作。它将需要部署,以便我可以得到Siteminder头
是否有任何解决方法可以将模拟Siteminder标头中本地测试用户的用户名提交到我的Siteminder筛选器
我在想一个页面,每个用户都是一个按钮。单击该按钮将发送带有SM_用户标题的请求
问题是,如果没有SM_用户头,过滤器根本不允许访问该站点,因此我无法访问该页面
我该怎么办?尝试用以下值更新主机文件
127.0.0.1:8080/yourappName制作一个过滤器,在标题中注入属性SM_USERID,并将此过滤器放置在web.xml中的FilterChainProxy声明之前