2015-06-10 43 views
0

我在春季使用CSRF。所有表单的提交都是在提交CSRF后提交的?

当我启用它时,无法提交任何表单(因为我需要每个帖子的标记)。

问题是这样的:

我提交表单后,用有效的令牌(在我的情况,登录)。所有其他提交表单继续工作......据我所知,不应该工作。

任何想法为什么这样?

我使用弹簧3.2和3.2.5安全

感谢

回答

1

假设你正在使用JSP,并使用它作为设计Spring表单标签。

令牌通过使用RequestDataValueProcessor自动添加到表单中。当使用Spring Security名称空间或基于注释的配置支持时,CsrfRequestDataValueProcessor会自动配置并添加到配置中。

这也是在春季安全reference guide中提到的。

如果您在使用Spring MVC <form:form>标签或Thymeleaf 2.1+和使用@EnableWebSecurity,该CsrfToken自动包含了你(CsrfRequestDataValueProcessor使用)。

+0

嗨,我知道,它的工作原理是这样的,但令牌是一直都是一样的..我想知道我怎么能要求一个新的每个提交 – jpganz18

+0

通过实施不同的csfr方法和电线那个。默认情况一遍又一遍地使用相同的标记。 –