Permissions Policy für WordPress konfigurieren

Schritt-für-Schritt-Anleitung: Permissions Policy in WordPress einrichten — per functions.php oder Plugin, Browser-APIs kontrollieren und Angriffsfläche reduzieren.

WordPress · Schritt für Schritt

Permissions Policy in WordPress

Permissions Policy kontrolliert, welche Browser-APIs auf Ihrer WordPress-Website aktiv sein dürfen. WordPress setzt den Header am einfachsten über den send_headers-Hook in der functions.php Ihres Child-Themes. Alternativ bieten Plugins wie HTTP Headers oder Security Headers eine grafische Oberfläche.

Permissions Policy ist mit 10 von 166 Punkten ein Faktor im Wolf-Agents Web Security Check. Die Einrichtung dauert weniger als 5 Minuten.

1 Schritt 1 von 2

Permissions-Policy-Header setzen

Fügen Sie den folgenden Code in die functions.php Ihres Child-Themes ein. Der send_headers-Hook wird vor jeder Ausgabe aufgerufen und setzt den Header für alle WordPress-Seiten. Verwenden Sie niemals die functions.php des Parent-Themes — Änderungen gehen bei Updates verloren.

functions.php (Child-Theme) Produktiv
// Permissions Policy — Browser-APIs einschränken
function set_permissions_policy_header() {
    header('Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=()');
}
add_action('send_headers', 'set_permissions_policy_header');
Plugin-Alternative

Die Plugins HTTP Headers und Security Headers bieten eine GUI zur Konfiguration. Für einen einzelnen Header ist der Code-Snippet in der functions.php meist die einfachere und leichtgewichtigere Lösung — ohne zusätzliche Plugin-Abhängigkeiten.

2 Schritt 2 von 2

Header verifizieren

Nach dem Speichern der functions.php ist der Header sofort aktiv — kein Server-Neustart nötig. Verifizieren Sie den Header mit curl oder den Browser DevTools.

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

# Erwartete Ausgabe:
# Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=()
Bei Server-seitigem Full-Page-Cache (Varnish, Nginx FastCGI Cache) wird der PHP-Hook bei gecachten Seiten nicht ausgeführt. Setzen Sie den Header in diesem Fall auf Webserver-Ebene (Nginx / Apache).

Wie steht Ihre Domain bei Permissions Policy?

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

Häufig gestellte Fragen

Geht der Code bei einem WordPress-Update verloren?

Nein, solange Sie den Code in die functions.php Ihres Child-Themes einfügen. Änderungen an der functions.php des Parent-Themes werden bei Updates überschrieben. Alternativ verwenden Sie ein Plugin wie HTTP Headers — Plugin-Einstellungen bleiben bei Updates erhalten.

Welches Plugin kann Permissions Policy setzen?

Die Plugins HTTP Headers und Security Headers bieten eine GUI zur Konfiguration von Permissions Policy. Für die meisten Websites reicht der einfache Code-Snippet in der functions.php — ein Plugin installiert zusätzliche Abhängigkeiten und ist für einen einzelnen Header oft überdimensioniert.

Funktioniert der send_headers-Hook auch mit Caching-Plugins?

Ja, der send_headers-Hook wird vor der Ausgabe aufgerufen und funktioniert mit den meisten Caching-Plugins. Bei Server-seitigem Full-Page-Cache (z.B. Varnish, Nginx FastCGI Cache) setzen Sie den Header besser auf Webserver-Ebene, da der PHP-Hook bei gecachten Seiten nicht ausgeführt wird.

Kann Permissions Policy WordPress-Plugins beeinflussen?

Ja, wenn ein Plugin Browser-APIs nutzt. Plugins für Videocalls (Kamera/Mikrofon), Geolocation-Features oder Payment-Gateways könnten eingeschränkt werden. Prüfen Sie vor der Aktivierung, welche APIs Ihre installierten Plugins benötigen.

Kann ich Permissions Policy auch per .htaccess setzen?

Ja, auf Apache-basierten WordPress-Installationen funktioniert die .htaccess-Methode ebenfalls. Fügen Sie den Header-Block vor der WordPress-Rewrite-Regel ein. Der Vorteil: Der Header wird auch bei gecachten Seiten gesetzt.