У меня есть приложение MVC2. Я пытаюсь реализовать помощник AntiForgeryToken для предотвращения атак CSRF.
Я реализую это с помощью блога Стива Сандерсона: http://blog.stevensanderson.com/2008/09/01/prevent-cross-site-request-forgery-csrf-using-aspnet-mvcs-antiforgerytoken-helper/
Когда я реализую это в новом проекте MVC2, он работает. Но тот же самый код, когда я помещаю его в свое НАСТОЯЩЕЕ приложение, ВСЕГДА вызывает это исключение: требуемый токен защиты от подделки не был предоставлен или был недействителен.
Вот мой код контроллера:
[ValidateAntiForgeryToken]
public ActionResult SubmitUpdate()
{
// Something goes here
return View();
}
Код в представлении:
<% using (Html.BeginForm("SubmitUpdate", "Test"))
{%>
<%= Html.AntiForgeryToken() %>
<input type="submit" value="Submit" />
<% } %>
В этих двух приложениях нет никакой разницы, за исключением того, что реальное приложение использует ADFS для аутентификации. Что мне не хватает? Любая помощь будет принята с благодарностью. Спасибо!