Permissions-Policy (Feature-Policy) HTTP-Header-Generator & Tester
HTTP-Sicherheits-Header & Geräteberechtigungen

Permissions-Policy (Feature-Policy) HTTP-Header-Generator & Tester

Erstellen, prüfen und validieren Sie moderne Permissions-Policy-HTTP-Response-Header (Kamera, Mikrofon, Geolocation, Zahlung) mit strikten Origin-Allowlists.

Vorlagen:
Header-Direktiven-Konfiguration
camerakritisch

Steuert den Zugriff auf Videoeingabegeräte (Webcams, Front-/Rückkameras).

microphonekritisch

Steuert den Zugriff auf Audioaufnahmegeräte und Systemmikrofone.

geolocationkritisch

Steuert den Zugriff auf genaue und ungefähre GPS-Geokoordinaten.

paymentkritisch

Steuert native Browser-Payment-Request-API-Dialoge und digitale Geldbörsen.

display-capturekritisch

Steuert die Screen-Capture-API zur Aufzeichnung des Desktops und der Bildschirme.

usbhoch

Steuert die WebUSB-API für direkten Low-Level-Zugriff auf kabelgebundene USB-Geräte.

bluetoothhoch

Steuert die Web-Bluetooth-API zum Koppeln und Lesen von drahtlosen Bluetooth-LE-Geräten.

hidhoch

Steuert die WebHID-API für spezielle Eingabegeräte und Gamepads.

serialhoch

Steuert die Web-Serial-API für bidirektionale Kommunikation mit serieller RS-232-Hardware.

otp-credentialshoch

Steuert die WebOTP-API zum Lesen von SMS-Einmal-Verifizierungscodes des mobilen Betriebssystems.

clipboard-readhoch

Steuert das programmgesteuerte Lesen vertraulicher Daten aus der Zwischenablage.

clipboard-writemittel

Steuert das programmgesteuerte Schreiben beliebiger Daten in die Zwischenablage.

accelerometermittel

Steuert Beschleunigungssensoren zur Messung von Kräften entlang der XYZ-Achsen.

gyroscopemittel

Steuert Gyroskopsensoren zur Messung der Drehwinkelgeschwindigkeit im 3D-Raum.

magnetometermittel

Steuert Magnetfeldsensoren als digitaler Kompass und Orientierungssensor.

ambient-light-sensormittel

Steuert Umgebungslichtsensoren zur Messung der Beleuchtungsstärke in Lux.

idle-detectionmittel

Steuert die Idle-Detection-API zur Erkennung von Benutzerinaktivität und Bildschirmsperren.

midimittel

Steuert die Web-MIDI-API zur Interaktion mit Synthesizern und Controllern.

speaker-selectionmittel

Steuert selectAudioOutput() zur Weiterleitung der Audiowiedergabe an Lautsprecher.

browsing-topicsmittel

Steuert die Topics-API der Privacy Sandbox für interessenbezogene Werbung.

run-ad-auctionmittel

Steuert die Protected-Audience-API für lokale Werbeauktionen auf dem Gerät.

join-ad-interest-groupmittel

Steuert die Aufnahme von Benutzern in Remarketing-Interessengruppen.

storage-accessmittel

Steuert die Storage-Access-API für Drittanbieter-Cookies in Iframes.

local-fontsmittel

Steuert die Abfrage lokal installierter Betriebssystem-Schriftarten.

sync-xhrmittel

Steuert synchrone XMLHttpRequest-Aufrufe, die den Browser-UI-Thread blockieren.

publickey-credentials-getmittel

Steuert den Abruf von WebAuthn-Anmeldeinformationen und Passkeys beim Login.

publickey-credentials-createmittel

Steuert die Registrierung neuer FIDO2-Passkeys und öffentlicher Schlüssel.

identity-credentials-getmittel

Steuert FedCM-Identitätsanbieter-Anmeldedialoge.

cross-origin-isolatedmittel

Steuert Cross-Origin-Isolierungsanforderungen für SharedArrayBuffer.

xr-spatial-trackingmittel

Steuert räumliches WebXR-Tracking für VR- und AR-Brillen sowie Handbewegungen.

fullscreenniedrig

Steuert Element.requestFullscreen() für den Vollbildmodus von Dokumenten.

autoplayniedrig

Steuert die automatische Wiedergabe von HTML5-Video- und Audiomedien ohne Interaktion.

picture-in-pictureniedrig

Steuert HTMLVideoElement.requestPictureInPicture() für schwebende Videofenster.

encrypted-medianiedrig

Steuert Encrypted Media Extensions (DRM / Widevine / PlayReady-Wiedergabe).

screen-wake-lockniedrig

Steuert die Screen-Wake-Lock-API zur Vermeidung von Bildschirmsperren.

gamepadniedrig

Steuert die Gamepad-API zum Abfragen von Controller-Tasten und Joysticks.

web-shareniedrig

Steuert navigator.share() zum Aufrufen nativer System-Freigabedialoge.

compute-pressureniedrig

Steuert die Compute-Pressure-API für CPU-Auslastung und thermische Drosselung.

window-managementniedrig

Steuert die Window-Management-API zur Erkennung mehrerer angeschlossener Monitore.

Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=(), display-capture=(), usb=(), bluetooth=(), hid=(), serial=(), screen-wake-lock=(), idle-detection=(), browsing-topics=(), run-ad-auction=(), join-ad-interest-group=(), clipboard-read=(), sync-xhr=(), local-fonts=(), midi=(), otp-credentials=(), fullscreen=(self), autoplay=(self), publickey-credentials-get=(self), publickey-credentials-create=(self), encrypted-media=(self)
Konfigurierte Direktiven
24 von 39 Richtlinien durchgesetzt
Sicherheits-Härtungsgrad
Punktzahl 100 / 100 (A+)
Spezifikationsstandard
W3C Permissions Policy L1 / RFC 8941

W3C Permissions Policy L1

Erstellt moderne strukturierte Feldsyntax gemäß offizieller W3C Permissions-Policy-Spezifikation und ersetzt veraltete Feature-Policy-Header durch präzise Origin-Allowlists.

Zero-Knowledge-Client-Berechnung

Alle Richtliniensynthesen, Header-Analysen und Sicherheitsaudits werden zu 100% lokal im Arbeitsspeicher Ihres Browsers ausgeführt. Es werden niemals Header oder Domains an Remote-Server übertragen.

Universeller Multi-Server-Export

Erzeugt sofort einsatzbereite Konfigurationen für Nginx, Apache HTTPD, Caddy Server, Next.js-Sicherheits-Header und HTML-iframe-allow-Attribute mit Sofortvalidierung.

Technische Referenz & Architektur-Leitfaden

Permissions-Policy (Feature-Policy) HTTP-Header-Generator & Tester — Referenz-Leitfaden

Erstellen, prüfen und validieren Sie moderne Permissions-Policy-HTTP-Response-Header (Kamera, Mikrofon, Geolocation, Zahlung) mit strikten Origin-Allowlists.

Wichtige Parameter & Steuerelemente

cameraDirektive (Allowlist)

Steuert, ob das Dokument und eingebettete iframes über MediaStream oder getUserMedia() auf Videoeingabegeräte zugreifen dürfen.

Standard: ()
microphoneDirektive (Allowlist)

Reguliert den Zugriff auf Audioaufnahmegeräte (Mikrofone) über die Media Capture and Streams API.

Standard: ()
geolocationDirektive (Allowlist)

Beschränkt den Zugriff auf die geografischen Standortkoordinaten des Nutzers über die Schnittstelle navigator.geolocation.

Standard: (self)
paymentDirektive (Allowlist)

Kontrolliert den Zugriff auf die Payment Request API für webbasierte Zahlungsabwicklungen und sichere Checkout-Prozesse.

Standard: (self "https://checkout.stripe.com")
display-captureDirektive (Allowlist)

Steuert die Berechtigung zur Bildschirmfreigabe und Bildschirmaufnahme über navigator.mediaDevices.getDisplayMedia().

Standard: ()

Profi-Tipps & Best Practices

Feature-Policy nutzte

Feature-Policy nutzte leerzeichengetrennte Werte ohne Klammern (z. B. camera 'none'), während Permissions-Policy der RFC-8941-Spezifikation für strukturierte Header folgt (z. B. camera=(), geolocation=(self)). Moderne Browser bevorzugen stets Permissions-Policy.

Die Permissions-Policy definiert die

Die Permissions-Policy definiert die Obergrenze auf Dokumentebene. Damit ein eingebettetes Drittanbieter-iframe freigegebene Schnittstellen wie Payment oder Kamera nutzen kann, muss der HTTP-Header des übergeordneten Dokuments dies erlauben UND das <iframe>-Tag das Attribut allow="payment 'src'" deklarieren.

Härten Sie Ihre Webanwendung durch

Härten Sie Ihre Webanwendung durch leere Berechtigungslisten für nicht benötigte Hardware-APIs ab: accelerometer=(), gyroscope=(), magnetometer=(), usb=(), serial=(), interest-cohort=(). Dies schützt vor Bewegungstracking und Datenerfassungs-Payloads.

Wenn Sie Berechtigungen an externe

Wenn Sie Berechtigungen an externe Dienstleister (z. B. Zahlungsanbieter) delegieren, müssen die Origins in doppelte Anführungszeichen innerhalb der Klammern gesetzt werden: payment=(self "https://pay.example.com" "https://js.stripe.com").

Häufige Fallstricke & Fehlerbehebung

DOMException: NotAllowedError beim Aufruf von getUserMedia() oder navigator.geolocation

Prüfen Sie den Permissions-Policy-Response-Header des Dokuments, um sicherzustellen, dass die anfragende Origin in der Direktiven-Allowlist enthalten ist. In iframes müssen sowohl der HTTP-Header als auch das allow-Attribut des iframes den Zugriff gewähren.

Browser meldet Syntaxfehler oder ignoriert die Direktiven in den DevTools

Stellen Sie sicher, dass Origin-URLs in doppelte Anführungszeichen gesetzt sind und Listen runde Klammern verwenden. Permissions-Policy akzeptiert keine einfachen Anführungszeichen (wie CSP) oder ungeklammerte Tokens (verwenden Sie z. B. camera=(), nicht camera='none').

Drittanbieter-Zahlungs-Widget in eingebettetem iframe wird blockiert

Vergewissern Sie sich, dass die Permissions-Policy der übergeordneten Seite die Drittanbieter-Origin deklariert (z. B. payment=(self "https://auth.vendor.com")) und das iframe-Element allow="payment https://auth.vendor.com" enthält. Ein übergeordnetes payment=() blockiert alle Nachfolge-Frames ausnahmslos.

Häufig gestellte Fragen (FAQ)

Was ist der Unterschied zwischen Feature-Policy und Permissions-Policy?▼

Permissions-Policy ist der offizielle W3C-Nachfolger von Feature-Policy. Anstelle der CSP-ähnlichen Syntax nutzt Permissions-Policy strukturierte Header-Werte nach RFC 8941 (feature=(self)), was ein striktes Parsing und eine konsistente Durchsetzung durch alle modernen Browser gewährleistet.

Ersetzt die Permissions-Policy die Content Security Policy (CSP)?▼

Nein, beide Sicherheitsmechanismen ergänzen einander. CSP steuert, von welchen Quellen Ressourcen (Skripte, Styles, Verbindungen) geladen werden dürfen, um XSS abzuwehren. Permissions-Policy kontrolliert den Zugriff auf mächtige Gerätefunktionen und Browser-APIs (Kamera, Standort, USB, Sensoren).

Wie wirkt sich die Permissions-Policy auf iframes und verschachtelte Kontexte aus?▼

Der HTTP-Response-Header des übergeordneten Dokuments setzt die absolute Grenze. Ein iframe kann niemals mehr Rechte erhalten, als ihm vom Eltern-Dokument zugestanden werden. Für die Freigabe muss der Eltern-Header die Origin erlauben und das iframe-Tag das allow-Attribut besitzen.

Kann die Permissions-Policy in einem HTML-<meta>-Tag konfiguriert werden?▼

Nein. Die W3C-Spezifikation untersagt die Bereitstellung über <meta http-equiv="Permissions-Policy"> ausdrücklich. Die Richtlinie muss zwingend als echter HTTP-Response-Header auf Webserver-Ebene (Nginx, Apache, Cloudflare, Next.js) ausgeliefert werden.

Welche Basis-Permissions-Policy wird für moderne Webanwendungen empfohlen?▼

Eine bewährte Hardening-Baseline deaktiviert standardmäßig ungenutzte Hardware-Schnittstellen: camera=(), microphone=(), geolocation=(), payment=(), usb=(), display-capture=(), serial=(), accelerometer=(), gyroscope=(), magnetometer=(), interest-cohort=(). Benötigte Funktionen werden anschließend gezielt für (self) oder dedizierte Partner freigeschaltet.

Verwandte Werkzeuge & Dienstprogramme

Alle Werkzeuge →