Was ist die Permissions-Policy?
Darf das eingebettete Video auf deiner Seite die Kamera anfragen? Darf ein Werbe-iframe den Standort abfragen? Ohne Vorgabe: im Prinzip ja. Die Permissions-Policy ist der HTTP-Header, mit dem du das regelst.
Der Server schickt ihn bei jeder Seite mit. Er legt fest, welche Browserfunktionen deine eigene Seite und eingebettete iframes nutzen dürfen: Kamera, Mikrofon, Standort, Vollbild, Zahlungsschnittstellen und einiges mehr. Fehlt der Header, gilt laut Chrome-Doku für die meisten Funktionen: keine Einschränkung.
Früher hieß das Ganze Feature-Policy. Die Spezifikation wird beim W3C als Entwurf geführt, ist also noch kein fertiger Standard.
So sieht der Header aus
Ein typischer Header für eine Website, die weder Kamera noch Mikrofon noch Standort braucht:
Permissions-Policy: camera=(), microphone=(), geolocation=()
Wert
Bedeutung
()
für alle gesperrt, auch für dich
self
nur die eigene Domain
"https://…"
nur genannte Adressen
*
alle dürfen
Dazu kommt das allow-Attribut am iframe, etwa <iframe src="…" allow="geolocation">. Beides spielt zusammen: Der Header setzt den Rahmen, das Attribut gibt einzelnen iframes daraus frei. Was der Header sperrt, kann kein iframe wieder einschalten.
Wie verbreitet ist der Header?
Kaum. Laut Web Almanac 2025 des HTTP Archive senden nur 3,7 % der mobilen Websites eine Permissions-Policy. Gemessen wurde im Juli 2025 an über 15 Millionen mobilen Seiten. Das ist rund die Hälfte mehr als 2024, aber immer noch wenig. Zum Vergleich: Die Content-Security-Policy nutzen 21,9 %.
Der häufigste Wert ist bis heute interest-cohort=(), das alte Opt-out gegen Googles FLoC. Er steht in gut 11 % aller Permissions-Policy-Header — obwohl FLoC längst Geschichte ist.
Fall A · Kontaktseite
Website ohne Kamera, Mikro, Standort
3
Funktionen gesperrt
1
Header-Zeile
camera=(), microphone=(), geolocation=() — fertig
Rund 2 % aller Permissions-Policy-Header nutzen genau diese Kombination.
Fall B · Video-Einbettung
YouTube-Video mit allow-Attribut
29,2 %
iframes mit allow
70,7 %
davon encrypted-media
Das allow-Attribut am iframe wirkt in allen großen Browsern
Werte mobil aus dem Web Almanac 2025, Basis 33,3 Millionen iframes.
Welche Browser machen mit?
Hier liegt der Haken. Den Header verstehen nur Chromium-Browser wie Chrome, Edge und Opera. Firefox und Safari ignorieren ihn bisher. Das allow-Attribut am iframe dagegen kennen alle großen Browser.
Ein Rest aus der Privacy Sandbox: Mit browsing-topics=() konnten Seiten die Topics-API sperren. Google hat im Oktober 2025 angekündigt, Topics einzustellen; die zugehörigen Header-Werte werden aus Chrome entfernt. Neu setzen musst du sie nicht mehr.
Häufige Fehler
Fehler 1 · Alte Syntax
camera 'none' ist Feature-Policy und gilt nicht mehr. Neu heißt es camera=(), Komma zwischen den Werten. Im iframe-Attribut dagegen trennt ein Semikolon.
Fehler 2 · Den Header mit Einwilligung verwechseln
Die Permissions-Policy ist Technik, keine Rechtsgrundlage. Sie hilft bei der Datenminimierung, ersetzt aber keine Einwilligung nach DSGVO und kein Cookie-Banner.
Fehler 3 · allow-Attribut vergessen
Du gibst eine Karte im Header frei, aber am iframe fehlt allow="geolocation"? Dann geht es trotzdem nicht. Laut Chrome-Doku braucht ein fremdes iframe das Attribut immer.
Fehler 4 · Auf alle Browser verlassen
Wer kritische Funktionen nur per Header sperrt, schützt Firefox- und Safari-Besucher nicht. Setze zusätzlich das allow-Attribut sparsam.
So setzt du ihn richtig
- Bestand prüfen: mit securityheaders.com oder im Network-Tab der Chrome DevTools.
- Bedarf klären: Welche Funktionen braucht deine Seite wirklich? Meist keine.
- Header setzen: in WordPress per .htaccess, Server-Konfiguration oder Header-Plugin.
- Testen: Chrome DevTools zeigt unter Application → Frames, was je Frame erlaubt ist.
Häufige Fragen
Was ist der Unterschied zwischen Permissions-Policy und Feature-Policy?
Feature-Policy ist der Vorgänger. Mit der Umbenennung kam eine neue Header-Syntax: statt camera 'none' heißt es camera=(). Chrome versteht Feature-Policy nur noch als Alias. Schickt eine Seite beide Header, gewinnt Permissions-Policy.
Funktioniert der Header in Firefox und Safari?
Bisher nein. Den Header werten nur Chromium-Browser wie Chrome, Edge und Opera aus. Das allow-Attribut an iframes verstehen dagegen alle großen Browser.
Ersetzt die Permissions-Policy das Cookie-Banner?
Brauche ich interest-cohort=() oder browsing-topics=() noch?
Nein. FLoC gibt es nicht mehr, und Google stellt auch die Topics-API ein. Die Werte schaden nicht, bringen aber nichts mehr.
Hat die Permissions-Policy Einfluss auf SEO?
Direkte Ranking-Effekte sind nicht bekannt. Der Header ist ein Sicherheits- und Datenschutzthema. Manche Prüftools werten ihn aber als Teil guter Sicherheits-Header.