Это старая версия Справка/QS/CSRFFunctions за 2017-12-27 13:28:18..
Защита от CSRF-атак
Подробнее об атаке: Википедия, Хабрахабр
Функции защиты от атак встроены в QS начиная с версии 5.3
Как защищаться от CSRF (минимум)
При работе с формой:
1. заменить вызовы FormOpen на csrfFormOpen – эта конструкция добавит csrf-токен в форму
2. Перед обработкой данных с формы сделать следующую конструкцию:
<?php
if(($csrfError = $this->csrfCheckStandart()) === TRUE) {
// здесь обрабатываем запрос с формы - проверку мы прошли
} else {
$error = $csrfError;
}
?>
При работе с ссылками
1. заменить генерацию ссылок функцией Href на csrfHref – эта конструкция добавит csrf-токен в ссылку
2. Шаг идентичен работе с формой – т.е. добавляем проверку в обработку
Продвинутый вариант
Есть валидация токенов по времени
<?php
if(($csrfError = $this->csrfCheckStandart(60)) === TRUE) {
// токен будет валидным в течении 60 секунд, т.е. форма должна быть отправлена за это время, иначе будет ошибка
} else {
$error = $csrfError;
}
?>