EMZETT.
Login

CORS (Cross-Origin Resource Sharing)

Kurz: Browser erlauben Skripten einer Seite standardmäßig nicht, Antworten von einer anderen Herkunft (Domain, Port, Protokoll) zu lesen. CORS ist der Mechanismus, mit dem ein Server das gezielt erlaubt.

Genauer: Die Regel heißt Same-Origin-Policy. Mit dem Antwort-Header Access-Control-Allow-Origin erklärt ein Server, dass bestimmte fremde Herkunft zugreifen darf. Bei Anfragen mit besonderen Methoden oder Headern schickt der Browser vorher eine „Preflight”-Anfrage (OPTIONS).

Im Detail

  • Häufiger Fehler: „blocked by CORS policy” in der Konsole. Die Ursache liegt beim Server, nicht im Browser-Code.
  • * mit Cookies: Ein Platzhalter für die Herkunft ist bei Anfragen mit Anmeldedaten nicht erlaubt.
  • Kein Schutz des Servers: CORS schützt Nutzer im Browser. Ein Programm außerhalb des Browsers ignoriert es.
  • Schutz vor CSRF: Ist es nicht, dafür braucht es CSRF (Cross-Site Request Forgery)-Schutz.
  • Öffentliche Dateien: Schriften und Programmdateien, die fremde Seiten laden sollen, brauchen entsprechende Header.

Siehe auch: Security-Header (HSTS, CSP und weitere), REST