COOP, COEP und CORP sind drei HTTP-Header, die modernen Browsern helfen, Webseiten besser voneinander zu isolieren – um Datenlecks und Manipulationen zwischen Tabs, Fenstern oder eingebetteten Inhalten zu verhindern.
Ausführliche Erklärung
Manchmal sieht Websicherheit ein bisschen aus wie ein geheimes Clubsystem unter Browsern: Nur wer die richtigen Regeln kennt und beachtet, darf vertrauensvoll interagieren. Genau das ist das Ziel der drei Header:
- COOP = Cross-Origin Opener Policy
- COEP = Cross-Origin Embedder Policy
- CORP = Cross-Origin Resource Policy
Zusammen sorgen sie für das, was moderne Browser „Cross-Origin Isolation“ nennen. Das bedeutet:
Inhalte von verschiedenen Ursprüngen (Domains) dürfen nicht einfach unkontrolliert miteinander reden, Daten teilen oder sich gegenseitig beeinflussen.
COOP – Cross-Origin Opener Policy
Mit COOP kannst du verhindern, dass fremde Seiten, die über window.open()
oder target="_blank"
geöffnet werden, Zugriff auf deine Seite zurückbekommen.
Das schützt z. B. vor Reverse Tabnapping, einem Angriff, bei dem ein geöffnetes Fenster das Ursprungsfenster manipuliert.
Beispiel:
Cross-Origin-Opener-Policy: same-origin
COEP – Cross-Origin Embedder Policy
COEP sorgt dafür, dass deine Seite nur Inhalte einbettet, die explizit über CORS freigegeben sind. Das betrifft etwa Fonts, Skripte oder Bilder von Drittanbietern. Ohne COEP kannst du viele moderne APIs im Browser nicht nutzen – z. B. SharedArrayBuffer
für Performance-Optimierungen.
Beispiel:
Cross-Origin-Embedder-Policy: require-corp
CORP – Cross-Origin Resource Policy
CORP ist der passende Gegenspieler zu COEP. Er sagt: „Ich darf nur von Domains geladen werden, die mir explizit vertrauen.“
Damit verhinderst du, dass andere Websites deine Inhalte einfach einbinden, z. B. Bilder oder Skripte.
Beispiel:
Cross-Origin-Resource-Policy: same-origin
Zusammenspiel und Bedeutung
Erst wenn COOP und COEP beide aktiv sind, erreicht deine Website die Cross-Origin Isolation. Das ist Voraussetzung für manche neue Funktionen – z. B. hochperformantes JavaScript, WebAssembly oder bestimmte KI-Bibliotheken im Browser.
Aber Achtung: COEP und CORP sind scharf! Sie blockieren Inhalte gnadenlos, wenn die eingebetteten Dienste keine korrekten CORS-Header mitliefern. Dienste wie Adobe Fonts, Cookie-Banner oder externe Tools streiken dann schnell. Deshalb ist eine Umsetzung nur mit Tests und Bedacht zu empfehlen.