Ошибка проверки CKFinder Csrf с соединителем ASP.NET

Мы получаем ошибку проверки Csrf с помощью CKFinder в запросах POST. После долгих усилий мы отладили процесс с помощью отражателя .NET и обнаружили, что проверка Csrf не работает в соединителе.

В качестве временного обходного пути мы установили this.EnableCsrfProtection = false; в файле конфигурации, но это выглядит очень хромым.

Как правильно решить эту проблему?


person To Ka    schedule 22.12.2015    source источник
comment
Просто быстрая проверка: есть ли шанс, что серверная часть только что была обновлена, но клиентская часть (JavaScript) все еще обслуживается браузером из кеша? В таком случае фронтенд не будет отправлять токен, а обновленная серверная часть будет его искать.   -  person Wiktor Walc    schedule 22.12.2015
comment
@WiktorWalc Нет, я работаю на машине разработчиков в Visual Studio / Chrome. Я пытался перезапустить devsever и несколько раз очищал кеш Chrome, но это не помогло. Можете ли вы дать мне какие-либо предложения относительно того, как отладить проблему?   -  person To Ka    schedule 22.12.2015
comment
1. Вы просто используете функции CKFinder, такие как создание папки, используя готовую версию CKFinder? 2. Откройте вкладку сети в браузере и проверьте запросы, отправленные браузером на коннектор. Запрос к коннектору должен иметь файл cookie и параметр POST с одинаковым значением (добавляется автоматически CKFinder, если включена защита от CSRF).   -  person Wiktor Walc    schedule 22.12.2015
comment
@WiktorWalc Мне пришлось на время переключиться на другой проект. Я проверю это и посмотрю, как оно пойдет. Спасибо.   -  person To Ka    schedule 05.01.2016


Ответы (1)


Моя репутация слишком низка, чтобы комментировать, поэтому я публикую это как ответ.

У вас есть проблемы с использованием клиентского приложения или с отправкой запросов самостоятельно?

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

Если это второй, обязательно включите cookie с именем ckCsrfToken и параметр формы ckCsrfToken с тем же (не пустым) значением.

person kfazi    schedule 22.12.2015
comment
Я не уверен, что понял, что вы имеете в виду. Я не устанавливаю какие-либо формы vars или cookie. Все обрабатывается внутри CKFinder. Это закрытая библиотека. - person To Ka; 22.12.2015
comment
Я имел в виду, есть ли у вас проблемы с использованием графического интерфейса или с отправкой запросов самостоятельно (например, в каком-то плагине). Похоже, вы просто используете графический интерфейс. Еще одна вещь, которая приходит мне на ум, это то, что что-то могло пойти не так, когда вы делали обновление. Не могли бы вы открыть файл ckfinder.js в браузере и проверить, что CKFinder.version это 2.6.0? Если он ниже, это означает, что вы все еще используете старую версию графического интерфейса. - person kfazi; 23.12.2015
comment
Извините за задержку с ответом. Я использую графический интерфейс, я не отправляю запрос вручную и загрузил последнюю версию. - person To Ka; 05.01.2016