Zum Hauptinhalt springen

1. Einführung (Introduction)

User Agents interagieren mit Inhalten, die von einer großen Anzahl von Autoren erstellt wurden. Obwohl viele dieser Autoren wohlmeinend sind, könnten einige Autoren böswillig sein. In dem Maße, in dem User Agents Aktionen auf der Grundlage der von ihnen verarbeiteten Inhalte durchführen, möchten User-Agent-Implementierer möglicherweise die Fähigkeit böswilliger Autoren einschränken, die Vertraulichkeit oder Integrität anderer Inhalte oder Server zu stören.

Betrachten Sie als Beispiel einen HTTP-User-Agent, der HTML-Inhalte rendert, die von verschiedenen Servern abgerufen wurden. Wenn der User Agent Skripte ausführt, die in diesen Dokumenten enthalten sind, möchte der User-Agent-Implementierer möglicherweise verhindern, dass Skripte, die von einem böswilligen Server abgerufen wurden, Dokumente lesen, die auf einem ehrlichen Server gespeichert sind, der sich beispielsweise hinter einer Firewall befinden könnte.

Traditionell haben User Agents Inhalte nach ihrem „Origin (Ursprung)" unterteilt. Genauer gesagt erlauben User Agents Inhalten, die von einem Origin abgerufen wurden, frei mit anderen Inhalten zu interagieren, die von diesem Origin abgerufen wurden, aber User Agents beschränken, wie dieser Inhalt mit Inhalten von einem anderen Origin interagieren kann.

Dieses Dokument beschreibt die Prinzipien hinter der sogenannten Same-Origin-Policy sowie die „praktischen Details" des Vergleichens und Serialisierens von Origins. Dieses Dokument beschreibt nicht alle Facetten der Same-Origin-Policy, deren Details anderen Spezifikationen wie HTML [HTML] und WebSockets [RFC6455] überlassen werden, da die Details oft anwendungsspezifisch sind.