Permissions-Policy-Generator
Der Permissions-Policy-Generator erstellt den Header, mit dem Sie Kamera, Mikrofon, Standort und weitere Browser-Funktionen für Ihre Seite und eingebettete Frames sperren oder freigeben.
| Funktion | Beschreibung | Erlaubnis | Weitere Origins (Leerzeichen getrennt) |
|---|---|---|---|
| accelerometer | Beschleunigungssensor Standard: eigene Seite | ||
| ambient-light-sensor | Umgebungslichtsensor Standard: eigene Seite | ||
| autoplay | Automatische Medienwiedergabe Standard: eigene Seite | ||
| bluetooth | Web Bluetooth Standard: eigene Seite | ||
| camera | Kamera Standard: eigene Seite | ||
| display-capture | Bildschirmaufnahme Standard: eigene Seite | ||
| encrypted-media | Verschlüsselte Medien (EME, DRM) Standard: eigene Seite | ||
| fullscreen | Vollbild Standard: eigene Seite | ||
| gamepad | Gamepad Standard: eigene Seite | ||
| geolocation | Standort (Geolocation) Standard: eigene Seite | ||
| gyroscope | Gyroskop Standard: eigene Seite | ||
| hid | WebHID-Geräte Standard: eigene Seite | ||
| identity-credentials-get | FedCM-Anmeldung Standard: eigene Seite | ||
| idle-detection | Erkennung von Inaktivität Standard: eigene Seite | ||
| local-fonts | Lokale Schriftarten Standard: eigene Seite | ||
| magnetometer | Magnetometer Standard: eigene Seite | ||
| microphone | Mikrofon Standard: eigene Seite | ||
| midi | Web MIDI Standard: eigene Seite | ||
| otp-credentials | SMS-Einmalcodes (WebOTP) Standard: eigene Seite | ||
| payment | Payment Request API Standard: eigene Seite | ||
| picture-in-picture | Bild-im-Bild Standard: alle | ||
| publickey-credentials-create | Passkeys erstellen (WebAuthn) Standard: eigene Seite | ||
| publickey-credentials-get | Passkeys verwenden (WebAuthn) Standard: eigene Seite | ||
| screen-wake-lock | Bildschirm wach halten Standard: eigene Seite | ||
| serial | Web Serial Standard: eigene Seite | ||
| storage-access | Storage Access API Standard: alle | ||
| usb | WebUSB Standard: eigene Seite | ||
| web-share | Teilen-Dialog (Web Share) Standard: eigene Seite | ||
| window-management | Fensterverwaltung über mehrere Bildschirme Standard: eigene Seite | ||
| xr-spatial-tracking | WebXR (VR/AR) Standard: eigene Seite | ||
| browsing-topics | Topics API (Werbeinteressen) Standard: alle |
Alles läuft in Ihrem Browser. Eingaben verlassen Ihr Gerät nicht.
Permissions-Policy verstehen
Der Permissions-Policy-Generator erstellt den Permissions-Policy Header, mit dem eine Website festlegt, welche Browser-Schnittstellen sie selbst und eingebettete Frames nutzen dürfen. So lassen sich Browser-Funktionen sperren, die Ihre Seite nie braucht, etwa Kamera, Mikrofon, geolocation, USB oder Bewegungssensoren. Schleust ein Angreifer Code ein oder bindet ein Werbe-Frame fremde Skripte ein, bleiben diese Schnittstellen trotzdem zu. Der Header ersetzt den älteren Feature-Policy-Header, der eine andere Schreibweise hatte.
Die Syntax folgt den Structured Fields: camera=() sperrt die Kamera für alle, geolocation=(self "https://maps.example.de") erlaubt den Standort der eigenen Seite und einer eingebetteten Karte, fullscreen=* erlaubt Vollbild überall. Damit ein iframe eine Funktion tatsächlich nutzen kann, muss sie zweimal freigegeben sein: im Header der einbettenden Seite und im allow-Attribut des iframe, etwa <iframe src="…" allow="geolocation">. Der Generator gibt beides aus.
Grenzen: Die Unterstützung ist uneinheitlich. Chromium-Browser werten den Header weitgehend aus, Firefox und Safari bislang nur einen Teil, das allow-Attribut ist breiter unterstützt. Unbekannte Funktionsnamen werden ignoriert und erscheinen höchstens als Warnung in der Konsole. Die Permissions-Policy ergänzt eine Content-Security-Policy, ersetzt sie aber nicht; eine CSP erstellen Sie mit dem CSP-Generator.
Anleitung: Permissions-Policy-Generator in 4 Schritten
- Unter „Vorlage“ einen Ausgangspunkt wählen, etwa „Alles sperren“ oder „Typische Website“.
- Je Funktion in der Liste festlegen: gesperrt, nur eigene Seite, eigene Seite und weitere Origins oder alle.
- Weitere Origins bei Bedarf in das Feld der Funktion schreiben, z. B.
https://maps.example.de. - Bei „Ausgabe für“ HTTP-Header, nginx oder Apache wählen und den Code kopieren; das allow-Attribut für iframes steht darunter.
Typische Anwendungsfälle
- Eine Website ohne Kamera- oder Mikrofonbedarf gegen eingebettete Fremdinhalte absichern.
- Einer eingebetteten Karte gezielt den Standortzugriff erlauben, allen anderen Frames nicht.
- Die Meldung „Permissions-Policy fehlt“ aus einem Header-Scan beheben.
- Eine alte Feature-Policy in die neue Schreibweise übertragen.
Häufige Fragen
Was ist der Unterschied zwischen Permissions-Policy und Feature-Policy?
Feature-Policy war der Vorgänger mit anderer Schreibweise (camera 'none'). Permissions-Policy nutzt Structured Fields (camera=()). Browser, die Permissions-Policy kennen, bevorzugen sie; den alten Header braucht man heute nur noch selten.
Was bedeutet camera=() genau?
Die leere Liste sperrt die Kamera für alle Ursprünge, auch für die eigene Seite. Ruft ein Skript getUserMedia auf, lehnt der Browser ohne Nachfrage beim Nutzer ab.
Muss ich jede Funktion aufführen?
Nein. Sinnvoll ist, die Funktionen zu sperren, die Ihre Seite sicher nicht braucht, und die benötigten gezielt freizugeben. Nicht aufgeführte Funktionen behalten ihren Standard, meist self.
Brauche ich zusätzlich das allow-Attribut am iframe?
Ja, wenn ein eingebetteter Frame eine Funktion nutzen soll. Der Header erlaubt sie für den Ursprung, das allow-Attribut delegiert sie an genau diesen Frame. Fehlt eines von beiden, bleibt die Funktion gesperrt.
Was passiert, wenn ich eine Funktion nicht aufführe?
Dann gilt ihr Standard: Bei den meisten Funktionen ist das die eigene Seite (self), einige wie autoplay oder fullscreen haben eigene Voreinstellungen. Nicht aufgeführte Funktionen bleiben also nicht automatisch gesperrt.
Kann ich mit der Permissions-Policy Tracking verhindern?
Nur eingeschränkt. Sie sperrt Browser-Schnittstellen wie Standort, Kamera oder Sensoren, nicht aber Cookies, Skripte oder Netzwerkzugriffe. Dafür sind Content-Security-Policy und Cookie-Einstellungen zuständig.
Das könnte auch helfen
Hash-Generator
MD5, SHA-1, SHA-256, SHA-384 und SHA-512 für Text oder Datei berechnen und vergleichen.
ÖffnenHMAC-Generator
HMAC mit SHA-256, SHA-512, SHA-1 oder MD5 berechnen und Webhook-Signaturen prüfen.
ÖffnenPasswort-Generator
Sichere Zufallspasswörter mit wählbarer Länge und Zeichengruppen, inklusive Entropie in Bit.
ÖffnenPasswort-Stärke prüfen
Passwort testen: Entropie, typische Muster, häufige Passwörter und grobe Knackzeit.
ÖffnenPassphrase-Generator
Merkbare Passphrasen aus einer deutschen Wortliste mit über 2.000 Wörtern, nach Diceware-Art.
ÖffnenToken-Generator
Zufalls-Token als Hex, Base64URL oder alphanumerisch erzeugen, etwa für API-Keys und Secrets.
Öffnen