使用 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())
}