
A wrapper of voku/anti-xss for Laravel
Laravel Security fue creado y es mantenido por Graham Campbell, y es un envoltorio de voku/anti-xss para Laravel, que utiliza graham-campbell/security-core. No dudes en consultar el registro de cambios, las versiones, la política de seguridad, la licencia, el código de conducta y las directrices de contribución.

Esta versión requiere PHP 8.0-8.3 y es compatible con Laravel 9-11.
Para obtener la última versión, simplemente instala el proyecto usando Composer:
$ composer require "graham-campbell/security:^11.2"
Una vez instalado, si no estás utilizando la detección automática de paquetes, deberás registrar el proveedor de servicios GrahamCampbell\Security\SecurityServiceProvider en tu config/app.php.
También puedes crear opcionalmente un alias de nuestra fachada:
'Security' => GrahamCampbell\Security\Facades\Security::class,
Laravel Security admite configuración opcional.
Para empezar, deberás publicar todos los assets del vendor:
$ php artisan vendor:publish
Esto creará un archivo config/security.php en tu aplicación que podrás modificar para establecer tu configuración. Además, asegúrate de revisar los cambios en el archivo de configuración original de este paquete entre versiones.
Hay dos opciones de configuración:
Esta opción ('evil') define los atributos y etiquetas maliciosos, que siempre se eliminarán de la entrada.
Esta opción ('replacement') define la cadena de reemplazo, que se utilizará para ocupar el lugar de las partes eliminadas de las cadenas donde había XSS.
Esta es la clase de mayor interés. Está vinculada al contenedor IoC como 'security' y se puede acceder a ella mediante la fachada Facades\Security. Hay un método público de interés.
El método 'clean' analizará una cadena eliminando las vulnerabilidades XSS, en la medida de lo posible.
Esta fachada pasará dinámicamente las llamadas a métodos estáticos al objeto 'security' del contenedor IoC, que por defecto es la clase Security.
Esta clase no contiene métodos públicos de interés. Debe añadirse al array de proveedores en config/app.php. Esta clase configurará los enlaces del contenedor IoC.
Puedes ver un ejemplo de implementación en Laravel Binput.
Si descubres una vulnerabilidad de seguridad en este paquete, envía un correo electrónico a [email protected]. Todas las vulnerabilidades de seguridad serán atendidas con prontitud. Puedes consultar nuestra política de seguridad completa aquí.
Laravel Security está licenciado bajo The MIT License (MIT).
Disponible como parte de la suscripción a Tidelift
Los mantenedores de graham-campbell/security y de miles de otros paquetes están trabajando con Tidelift para ofrecer soporte comercial y mantenimiento para las dependencias de código abierto que utilizas para construir tus aplicaciones. Ahorra tiempo, reduce riesgos y mejora la salud del código, mientras pagas a los mantenedores de las dependencias exactas que utilizas. Más información.
| 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 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |