English
CSRF (Cross-Site Request Forgery) — это тип атаки, при которой злоумышленник заставляет пользователя выполнить нежелательное действие на сайте, где он авторизован. В Laravel защита от CSRF реализована автоматически с использованием CSRF-токенов.
Laravel генерирует CSRF-токен для каждой активной пользовательской сессии. Этот токен должен быть включен во все формы HTML и AJAX-запросы. Когда запрос отправляется, Laravel проверяет наличие и корректность токена.
При использовании Blade-шаблонов в Laravel CSRF-токен автоматически добавляется в формы с помощью директивы @csrf:
<form method="POST" action="/example">
@csrf
<!-- поля формы -->
<button type="submit">Отправить</button>
</form>
Для AJAX-запросов необходимо включить CSRF-токен в заголовок запроса. Это можно сделать с помощью JavaScript:
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
Защита от CSRF-атак является важным аспектом безопасности веб-приложений. Laravel предоставляет удобные инструменты для реализации этой защиты, обеспечивая безопасность данных и предотвращая выполнение нежелательных действий от имени пользователя. Для получения более подробной информации и примеров посетите документацию Laravel.
CSRF (Cross-Site Request Forgery) is a type of attack in which an attacker forces a user to perform an undesirable action on a site where they are logged in. In Laravel, CSRF protection is implemented automatically using CSRF tokens.
Laravel generates a CSRF token for each active user session. This token must be included in all HTML forms and AJAX requests. When the request is sent, Laravel checks the availability and validity of the token.
When using Blade templates in Laravel, the CSRF token is automatically added to the forms using the @csrf directive:
<form method="POST" action="/example">
@csrf
<!-- form fields -->
<button type="submit">Send</button>
</form>
For AJAX requests, you must include the CSRF token in the request header. This can be done using JavaScript:
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
Protection against CSRF attacks is an important aspect of web application security. Laravel provides convenient tools to implement this protection, ensuring data security and preventing unwanted actions from being performed on behalf of the user. For more information and examples, visit the Laravel documentation.