Это функция CSRF, позволяющая избежать запроса на выход из системы, инициированного вредоносным javascript с другого сайта.
Ваш запрос GET: /logout
, и, следовательно, Spring Security хочет подтвердить его с помощью таких действий пользователя, как щелчок.
Так что, чтобы избежать этого. Ваш запрос на выход из системы должен быть POST
и содержать действительный токен _csrf
.
Этого можно добиться с помощью тега весенней формы с методом post, как указано ниже
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
...
<form:form action="${pageContext.request.contextPath}/logout"
method="post" modelAttribute="AnyModelAttributePassedFromController">
<form:button value="submit"> Logout</form:button>
</form:form>
...
или
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
...
<form:form action="${pageContext.request.contextPath}/logout"
method="post" modelAttribute="_csrf">
<form:button value="submit"> Logout</form:button>
</form:form>
...