Лучший способ настроить CSRF

У меня есть приложение Flask, работающее как API на бэкэнде, и интерфейс, написанный на базовом HTML и jQuery (НЕ как шаблон Jinja). Я пытаюсь найти лучший способ включить некоторую защиту от CSRF в приложении, но все, что я нахожу, требует использования Flask-WTF с формами Jinja. Я действительно не хочу переписывать весь интерфейс с помощью Jinja, так как лучше всего это сделать?

Для представлений, которые не используют FlaskForm или которые делают запросы AJAX, используйте предоставленное расширение CSRF для защиты этих запросов, а также from flask_wtf.csrf import CSRFProtect. См. эта документация, это может быть полезно

Moses N. Njenga 07.05.2018 19:46

Ах, отлично, я не знал, что Flask-WTF может использовать его вне Jinja с запросами AJAX. Спасибо!

Kari Fox 07.05.2018 22:45

Я поставлю это в ответах, если кто-нибудь придет посмотреть

Moses N. Njenga 08.05.2018 06:52
Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
0
3
37
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это здесь может быть близко к тому, что вы ищете

Для представлений, которые не используют FlaskForm или которые делают запросы AJAX, используйте предоставленное расширение CSRF для защиты этих запросов.

from flask_wtf.csrf import CSRFProtect

csrf = CSRFProtect(app)

Визуализируйте скрытый ввод с токеном в форме HTML.

<form method = "post">
    <input type = "hidden" name = "csrf_token" value = "{{ csrf_token() }}"/>
</form>

Другие вопросы по теме