Я использую CSRFGuard 3.1.0 Я настроил сервлет в web.xml
<servlet>
<servlet-name>JavaScriptServlet</servlet-name>
<servlet-class>org.owasp.csrfguard.servlet.JavaScriptServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>JavaScriptServlet</servlet-name>
<url-pattern>/JavaScriptServlet</url-pattern>
</servlet-mapping>
Теперь у меня есть JSP-файл userProfile.jsp 1) Я настроил сценарий для инъекций лексемы как
<script src="/JavaScriptServlet"></script>
2) Теперь я включаю файл сценария JQuery посвященный для этого файла JSP
<script src="../js/userProfile.js" type="text/javascript">
</script>
3) У меня есть текстовое поле, 1 - для оригинального пароля 4) Я текстовое поле 2 - для нового пароля 5) У меня есть текстовое поле, 3 - для подтверждения пароля 6) У меня есть кнопка смены пароля, который делает AJAX вызов на сервер
<button type="button" name="changePswd" id="changePswd">Change password</button>
7) нажатием этой кнопки функция $ .ajax (JQuery) называется, который находится в файле JS. Функция, как показано ниже:
$("#changePswd").click(
function() {
$.ajax({
url: location.protocol + "//" +location.host + '/my-project/secure/changePassword.html',
data: {
username : $('#userName').val(),
oldPassword : $('#oldPassword').val(),
newPassword : $('#newPassword').val(),
retypeNewPassword : $('#retypeNewPassword').val()
},
success: function(data) {
$("#dialog").dialog('close');
$('#dialog-6').dialog('open');
$('#displayResult-6').html(data);
},
error: function(xhr,status,error) {
$('#displayResult').html('�V');
}
})
});
8) И этот вызов блокируется CSRFGuard говоря
ВНИМАНИЯ: потенциальный запрос межсайтового подлога (CSRF) атака сорвана (пользователь :, IP: 10.48. 5.88, метод: GET, Ури: /my-project/secure/changePassword.html, ошибка: требуется маркер отсутствует в запросе)
И когда браузер загружает файл userProfile.jsp где/JavaScriptServlet является ожидается, чтобы ввести токены, браузер показывает мне 404, не найденный для этого конкретного вызова html
Я использую: JDK 1.6 CSRFGuard 3.1.0 Weblogic 10.3.6 & JQuery-1.7.1-min.js Пожалуйста, руководство меня, как inejct этих маркеров в этом вызове AJAX !! Спасибо заранее!
Я впечатлить с вами ответа. Так что, пожалуйста, просмотрите этот запрос, если у вас есть время - http: // stackoverflow.ком/вопросы/42095851/csrfguard-запрос-маркера делает-не-матч-страница-маркер. Заранее спасибо. – Venki