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