Рейтинг:0

403 Доступ запрещен при отправке веб-формы с токеном

флаг in

Один из наших сайтов был обновлен Drupal Core 7.83 до версии 7.87. Существует специальный модуль, который расширяет функциональность веб-форм для некоторых форм на сайте. Бывший разработчик написал функцию для создания уникального безопасного для URL-адреса токена base 64 с использованием openssl, указанного по длине, для веб-формы. Он используется для проверки того, $токен представлен в форме и существует в пользовательском $_СЕССИЯ. Эта проверка предотвращает посещение страницы подтверждения формы «Спасибо» без проверки подлинности, поскольку обработчики отправки веб-форм переопределяются для сохранения данных отправки во внешней базе данных.

Пользовательское перенаправление страницы подтверждения записывается так:

$form_state['redirect'] = array("представление формы/$nid/спасибо", array("query" => array("token" => $token)));

Который отображается в адресной строке браузера как:

www.domain.com/form-submission/1/thank-you?token=YmFzZTY0dG9rZW4=

До обновления Drupal Core все работало как положено. Однако с тех пор любые отправки, которые проходят с этим настраиваемым перенаправлением, вызывают

403 ПОЛУЧИТЬ токен=YmFzZTY0dG9rZW4=

Доступ закрыт. У вас нет прав доступа к этой странице.

При отправке формы.

Когда я изменяю

$form_state['redirect'] = array("представление формы/$nid/спасибо", array("query" => array("token" => $token)));

к

$form_state['redirect'] = array("представление формы/$nid/спасибо");

затем форма иногда переходит на пользовательскую страницу подтверждения, а иногда нет. Результаты противоречивы.

Модули веб-формы и токена обновлены.

Есть ли у кого-нибудь идеи, инструменты, советы по устранению неполадок или помощь, которой они могут поделиться?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.