ОБНОВЛЕНИЕ (январь 2014 г.): Spring Security 3.2 содержит реализацию CSRF-токена.
Для Spring Security <= 3.1: </p>
Поскольку CSRF имеетОтметим, что Spring Secruity (аутентификация и авторизация) могут быть реализованы отдельно друг от друга.
Существуют некоторые реализации CRSF, основанные на фильтрах.Например, один поставляется с Tomcat 7 и Tomcat 6.0.something
Когда я пытался их использовать (летом 2011 года), у меня не было ощущения, что он работает хорошо.Поэтому я реализовал свой собственный.
РЕДАКТИРОВАТЬ (апрель 2012 г.): Моя реализация работает с Spring 3.0, если вы используете Spring 3.1, взгляните на ответ Эяля Лупу иего блог использует некоторые функции Spring 3.1, поэтому работа с фильтрами более проста.
До сих пор я не обнародовал его (нет времени).Но ты будешь.Вы можете скачать его (это первый раз, когда я использую 4shared.com, я надеюсь, что это работает):
Недостаток моей реализации состоит в том, что вам необходимо добавить токен, явный для каждой формы, которая отправляет POST, DELETE, PUT.
JSP (x):
xmlns:crsf="http://www.humanfork.de/tags/de/humanfork/security/crsf"
...
<form ...>
<crsf:hiddenCrsfNonce/>
....
</form>
web.xml
<filter>
<filter-name>IdempotentCrsfPreventionFilter</filter-name>
<filter-class>de.humanfork.security.crsf.IdempotentCsrfPreventionFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>IdempotentCrsfPreventionFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>