我需要的设置是一个(启用了spring安全的) webapp,它可以进行预身份验证(使用pubcookie),也可以启用"dev“模式,这样我就可以忽略pubcookie并显示登录表单。当然,开发模式在生产中会被关闭,在那里应用程序将位于运行mod_pubcookie的Apache后面,但对于开发/QA,我并不真正需要外部身份验证机制。
只有当(1)没有REMOTE_USER请求头(意味着我们没有通过pubcookie);(2)在属性文件中打开了dev-mode时,登录表单才会出现。
我的问题是:这可以在spring安全XML文件中配置吗,或者我需要把它放到代码中吗?(我该怎么做呢?)
谢谢,
D。
发布于 2012-10-18 23:24:46
您可以编写自己的自定义筛选器,并在安全上下文中指定它。因为它是您的自定义过滤器,所以您可以从属性文件中获取请求对象和配置。
如果您发现REMOTE_USER和dev-mode处于打开状态,则在安全上下文保存器中设置身份验证。
有关实现自定义过滤器的信息,请参阅link
发布于 2012-10-21 23:44:14
好的,我所做的就是使用Spring Profiles为"dev“和"prod”创建两个单独的配置文件,其中我使用了不同的http和身份验证管理器元素。
springsource的这篇博客文章帮助很大:
http://blog.springsource.com/2011/02/11/spring-framework-3-1-m1-released/
只要注意他说您可以在dispatcher servlet的init-param元素中声明配置文件的位置,这对我来说不起作用,所以我在web.xml中使用全局上下文参数来声明我的配置文件:
<context-param>
<param-name>spring.profiles.active</param-name>
<param-value>dev</param-value>
</context-param>D。
https://stackoverflow.com/questions/12957495
复制相似问题