Я знаю, как использовать атрибут AntForgeryToken MVC и связанный с ним HTML-помощник, чтобы помочь XSRF-защитить POST-форму моего приложения.Как защитить мои вызовы GET JsonResult?
Можно ли что-то подобное сделать для JsonResults, которые реализуют GET?
Например, на мой взгляд, содержит вызов onSubmit JQuery, как, например:
$.getJSON("/allowActivity/YesOrNo/" + someFormValue, "{}", function(data) {
if(data.Allow) {
//Do something.
}
});
Я хочу, чтобы убедиться, что это JsonResult только вызываемая из предполагаемой страницы.
EDIT:
Я нашел this post о подобном вопросе, без конкретного ответа.
Что является самым простым способом обеспечить, чтобы мой GET (неразрушающий) URL-адрес потреблялся только вызовом AJAX с моей собственной страницы?
Как интегрировать значение __RequestVerificationToken с $ .getJSON или $ .ajax вызов? Помните, что это запрос GET. –
Прочтите «Раскрытие токена по URL» с http://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)_Prevention_Cheat_Sheet «Если на действия на стороне сервера гарантируются ответы только на запросы POST, нет необходимости включать токен в запросы GET «Ключ должен убедиться, что ваш GET не изменяет данные. В противном случае вам не нужно защищать запросы GET. –