Permissions Policy für Apache konfigurieren

Schritt-für-Schritt-Anleitung: Permissions Policy auf Apache einrichten — mit .htaccess oder vHost-Konfiguration, kompatibel mit Shared Hosting.

Apache · Schritt für Schritt

Permissions Policy auf Apache

Permissions Policy kontrolliert den Zugriff auf Browser-APIs wie Kamera, Mikrofon und Standort. Apache setzt den Header über mod_headers — entweder in der .htaccess-Datei (Shared Hosting) oder in der vHost-Konfiguration (eigener Server). Der IfModule-Wrapper stellt sicher, dass bei fehlendem Modul kein 500-Fehler entsteht.

Diese Anleitung zeigt die Konfiguration in zwei Schritten: Header setzen und verifizieren. Permissions Policy ist mit 10 von 166 Punkten ein Faktor im Wolf-Agents Web Security Check.

1 Schritt 1 von 2

Permissions-Policy-Header konfigurieren

Fügen Sie den folgenden Block in Ihre .htaccess-Datei im Stammverzeichnis ein. Der IfModule-Wrapper prüft, ob mod_headers verfügbar ist — so funktioniert die Konfiguration auf jedem Apache-Server, auch auf Shared Hosting.

.htaccess Produktiv
# Permissions Policy — Browser-APIs einschränken
<IfModule mod_headers.c>
    Header always set Permissions-Policy "camera=(), microphone=(), geolocation=(), payment=(), usb=(), autoplay=(self)"
</IfModule>
always vs. ohne always

Mit always setzt Apache den Header bei allen Responses — auch bei Fehlerseiten (404, 500). Ohne always wird der Header nur bei erfolgreichen Responses (2xx/3xx) gesetzt. Für Security Headers empfehlen wir immer always.

2 Schritt 2 von 2

Konfiguration testen und verifizieren

Bei .htaccess-Änderungen ist kein Neustart nötig — Apache liest die Datei bei jedem Request. Bei vHost-Änderungen laden Sie Apache neu. Verifizieren Sie den Header mit curl.

Terminal Verifizieren
# Bei vHost-Änderungen: Apache neu laden
sudo systemctl reload apache2

# Permissions-Policy-Header prüfen
curl -sI https://ihre-domain.de | grep -i permissions

# Erwartete Ausgabe:
# Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=(), usb=(), autoplay=(self)
Wenn der Header nicht erscheint, prüfen Sie ob mod_headers aktiv ist: apachectl -M | grep headers. Auf Debian/Ubuntu aktivieren Sie das Modul mit a2enmod headers.

Wie steht Ihre Domain bei Permissions Policy?

Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 166 Prüfpunkte.

Häufig gestellte Fragen

Funktioniert Permissions Policy mit .htaccess auf Shared Hosting?

Ja, solange Ihr Hosting-Anbieter mod_headers aktiviert hat. Die meisten Shared-Hosting-Anbieter (All-Inkl, IONOS, Strato, Hetzner) unterstützen mod_headers. Der IfModule-Wrapper stellt sicher, dass bei fehlendem Modul kein Fehler auftritt.

Warum brauche ich den IfModule-Wrapper?

Der IfModule-Wrapper verhindert einen 500-Fehler, falls mod_headers nicht geladen ist. Ohne den Wrapper und ohne mod_headers würde Apache die Konfiguration als ungültig ablehnen und die Website komplett ausfallen.

Wo ist der Unterschied zwischen .htaccess und vHost-Konfiguration?

Funktional kein Unterschied. Die vHost-Konfiguration ist performanter (wird einmal beim Start gelesen), während .htaccess bei jedem Request gelesen wird. Auf Shared Hosting ist .htaccess oft die einzige Option. Auf eigenen Servern ist die vHost-Konfiguration empfohlen.

Muss ich Apache nach der Änderung neu starten?

Nur bei Änderungen in der vHost-Konfiguration (systemctl reload apache2). Änderungen in .htaccess wirken sofort ohne Neustart — Apache liest .htaccess bei jedem Request.

Kann ich Permissions Policy und Feature Policy gleichzeitig setzen?

Ja, das ist als Fallback für ältere Browser sinnvoll. Moderne Browser ignorieren den veralteten Feature-Policy-Header und verwenden nur Permissions-Policy. Beachten Sie die unterschiedliche Syntax: camera=() (PP) vs. camera 'none' (FP).