
A wrapper of voku/anti-xss for Laravel
Laravel Security был создан и поддерживается Graham Campbell и представляет собой обёртку над voku/anti-xss для Laravel, использующую graham-campbell/security-core. Не стесняйтесь ознакомиться с журналом изменений, релизами, политикой безопасности, лицензией, кодексом поведения и правилами внесения вклада.

Эта версия требует PHP 8.0-8.3 и поддерживает Laravel 9-11.
Чтобы получить последнюю версию, просто подключите проект с помощью Composer:
$ composer require "graham-campbell/security:^11.2"
После установки, если вы не используете автоматическое обнаружение пакетов, вам необходимо зарегистрировать сервис-провайдер GrahamCampbell\Security\SecurityServiceProvider в вашем config/app.php.
Вы также можете при желании создать алиас для нашего фасада:
'Security' => GrahamCampbell\Security\Facades\Security::class,
Laravel Security поддерживает необязательную конфигурацию.
Чтобы приступить к работе, вам нужно опубликовать все ресурсы вендора:
$ php artisan vendor:publish
Это создаст в вашем приложении файл config/security.php, который вы можете изменить для настройки конфигурации. Также обязательно проверяйте изменения исходного конфигурационного файла в этом пакете между релизами.
Доступны два параметра конфигурации:
Эта опция ('evil') определяет вредоносные атрибуты и теги, которые всегда будут удаляться из входных данных.
Эта опция ('replacement') определяет строку замены, которая будет использоваться вместо удалённых фрагментов строк, в которых присутствовал XSS.
Это класс, представляющий наибольший интерес. Он привязан к IoC-контейнеру как 'security' и доступен через фасад Facades\Security. Представляет интерес один публичный метод.
Метод 'clean' анализирует строку, удаляя XSS-уязвимости, по мере возможностей.
Этот фасад динамически передаёт статические вызовы методов объекту 'security' в IoC-контейнере, которым по умолчанию является класс Security.
Этот класс не содержит публичных методов, представляющих интерес. Его следует добавить в массив провайдеров в config/app.php. Этот класс настроит привязки IoC.
Пример реализации можно посмотреть в Laravel Binput.
Если вы обнаружили уязвимость в этом пакете, отправьте, пожалуйста, письмо на [email protected]. Все уязвимости будут оперативно устранены. С полной политикой безопасности можно ознакомиться здесь.
Laravel Security распространяется по лицензии The MIT License (MIT).
Доступно в рамках подписки Tidelift
Мейнтейнеры graham-campbell/security и тысяч других пакетов работают с Tidelift, чтобы предоставлять коммерческую поддержку и сопровождение для зависимостей с открытым исходным кодом, которые вы используете для создания своих приложений. Экономьте время, снижайте риски и улучшайте качество кода, оплачивая работу именно тех мейнтейнеров, чьи зависимости вы используете. Узнать больше.
| Security | L5.5 | L5.6 | L5.7 | L5.8 | L6 | L7 | L8 | L9 | L10 | L11 |
|---|
| 5.1 | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| 6.2 | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| 7.1 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| 8.0 | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| 9.1 | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ |
| 10.0 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ |
| 11.2 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |