使用 CSRF 保护进行测试
在测试任何非安全的HTTP方法并使用Spring Security的CSRF保护时,必须在请求中包含有效的CSRF令牌。要指定有效的CSRF令牌作为请求参数,请使用CSRF RequestPostProcessor,如下所示:
- Java
- Kotlin
mvc
.perform(post("/").with(csrf()))
mvc.post("/") {
with(csrf())
}
如果你愿意,也可以将 CSRF 令牌包含在请求头中:
- Java
- Kotlin
mvc
.perform(post("/").with(csrf().asHeader()))
mvc.post("/") {
with(csrf().asHeader())
}
你也可以通过以下方式测试提供无效的 CSRF 令牌:
- Java
- Kotlin
mvc
.perform(post("/").with(csrf().useInvalidToken()))
mvc.post("/") {
with(csrf().useInvalidToken())
}