HTML5 spezifiziert für Elemente wie Grafiken, Videos oder Audio-Dateien ein weiteres neues Attribut namens crossorigin. Damit lässt sich der domain-übergreifende Zugriff regeln.
Das crossorigin-Attribut ist allerdings ohne programmiertechnischen Hintergrund nicht ganz einfach erklärbar. Es handelt sich um den HTML-seitigen Teil der Implementierung von CORS. CORS steht für Cross-Origin Resource Sharing (herkunftsübergreifendes Teilen von Ressourcen) und ist eine neuere Spezifikation des W3-Konsortiums. Die entsprechende Empfehlung (Recommendation), die derzeit kurz vor der endgültigen Verabschiedung steht, und die zugehörige Dokumentation sind auf http://www.w3.org/TR/cors/ zu finden.
Aus HTML-Sicht ist das crossorigin-Attribut schnell erklärt.
<p>Hier ein Bild von dem Vorfall:</p> <img src="/fotos/2013/04838.jpg" alt="Fassungslose Zuschauer" crossorigin="anonymous"> <p>Und hier noch ein Amateur-Video:</p> <video src="/videos/2013/01942.mp4" width="640" height="480" controls crossorigin="use-credentials"></video>
Das crossorigin-Attribut kann in den Tags oder Start-Tags der Elemente img, video, audio, link und script notiert werden. Es kann zwei Werte annehmen: crossorigin="anonymous" oder crossorigin="use-credentials". Die Wertzuweisung "anonymous" bedeutet: CORS-Richtlinien kommen nicht zum Einsatz, und "use-credentials" bedeutet, dass CORS-Richtlinien angewendet werden, falls das erforderlich ist.
CORS-Richtlinien sind vor allem für den Fall gedacht, dass client-seitige Scripts, die nicht von der eigenen Website stammen, direkt mit HTTP eine Grafik, ein Video usw. von Ihrer Website abrufen. Das kann beispielsweise bei Scripts der Fall sein, welche die sogenannte Ajax-Schnittstelle (XMLHttpRequest-Objekt) verwenden, oder auch bei Scripts für canvas-Elemente. Im Zusammenhang mit dem link-Element ist die Angabe im Zusammenhang mit Fremd-Referenzierungen eigener Web-Fonts (auf dem Server gespeicherte, in Webseiten verwendete Schriftarten) von Bedeutung.
CORS besteht im wesentlichen aus einer Reihe neuer HTTP-Response-Header. Diese regeln, von welchen fremden Websites wie auf eine Ressource zugegriffen werden darf.
Wenn Sie sich näher über die HTTP-technischen Hintergründe und das Scripting mit solchen HTTP-Headern beschäftigen wollen, sind folgende Quellen empfehlenswert:
Korrekturen, Hinweise und Ergänzungen
Bitte scheut euch nicht und meldet, was auf dieser Seite sachlich falsch oder irreführend ist, was ergänzt werden sollte, was fehlt usw. Dazu bitte oben aus dem Menü Seite den Eintrag Diskutieren wählen. Es ist keine Anmeldung erforderlich, um Anmerkungen zu posten. Unpassende Postings, Spam usw. werden allerdings kommentarlos entfernt.