Что такое CSRF middleware
Python
Senior
Без компании
Что такое CSRF middleware
Ответы
CSRF (Cross-Site Request Forgery) middleware в Django защищает от атак, когда злоумышленник заставляет пользователя выполнить нежелательные действия на сайте, где он аутентифицирован.
Основные моменты:
- Добавляет скрытое поле `csrf_token` в формы
- Проверяет токен при POST-запросах
- Работает для аутентифицированных пользователей
Пример использования:
```
# settings.py
MIDDLEWARE = [
...
'django.middleware.csrf.CsrfViewMiddleware',
...
]
# template.html
<form method="post">
{% csrf_token %}
...
</form>
```
Токен генерируется уникальным для каждой сессии и проверяется сервером. Для AJAX-запросов токен передается в заголовке `X-CSRFToken`. Исключения делаются через декоратор `@csrf_exempt`.