App\Middleware
SecurityHeadersMiddleware
Ergänzt jede Response um zusätzliche Sicherheitsheader: HSTS, Content Security Policy und Permissions Policy. Sollte als globale Middleware eingesetzt werden.
Interface
Alle Middleware-Klassen implementieren App\Routing\MiddlewareInterface:
PHP
interface MiddlewareInterface
{
public function handle(Request $request, Closure $next): Response;
}
Methoden
| Methode | Rückgabetyp | Beschreibung |
|---|---|---|
| handle(Request \$request, Closure \$next) | Response | Ruft \$next(\$request) auf und fügt der zurückgegebenen Response drei Sicherheitsheader hinzu: HSTS, CSP und Permissions-Policy. |
Verwendung
PHP
// Global auf alle Routen anwenden
$router->use(new SecurityHeadersMiddleware());
// Gesetzte Header:
// Strict-Transport-Security: max-age=63072000; includeSubDomains; preload
// Content-Security-Policy: default-src "self"; script-src "self"; style-src "self" "unsafe-inline"
// Permissions-Policy: camera=(), microphone=(), geolocation=()
// Hinweis: CSP muss an dein Projekt angepasst werden!
// Wenn du externe CDNs nutzt (z.B. UIkit):
// Content-Security-Policy: default-src "self"; style-src "self" https://cdnjs.com "unsafe-inline"