Content-Security-Policy (CSP)

Die Content-Security-Policy (CSP) ist ein Sicherheitsmechanismus, mit dem du dem Browser genau vorgibst, von welchen Quellen Inhalte auf deiner Website geladen werden dürfen – und von welchen nicht.

Ausführliche Erklärung

Die Content-Security-Policy, kurz CSP, ist einer der mächtigsten (und gleichzeitig sensibelsten) Sicherheits-Header im Web. Ihr Ziel: Browsern klare Regeln geben, welche Skripte, Bilder, Fonts oder Stylesheets überhaupt geladen werden dürfen – und was draußen bleiben muss.

Damit schützt du deine Website insbesondere vor Angriffen durch Cross-Site Scripting (XSS) – also dem Einschleusen von fremden JavaScript-Code, der z. B. Nutzerdaten abgreifen oder Schadfunktionen auslösen kann.

Ein einfacher CSP-Header könnte so aussehen:

Content-Security-Policy: default-src 'self'; script-src 'self' 

Das bedeutet:

  • Standardmäßig darf nur die eigene Domain ('self') Inhalte laden.
  • JavaScript darf ebenfalls nur von der eigenen Domain stammen.
  • So weit, so sicher – aber auch so eingeschränkt.
  • Denn in der Praxis nutzen viele Websites externe Dienste wie:
  • Google Fonts
  • Cookie-Banner
  • Chatbots
  • Tracking-Tools

eingebettete Videos oder Karten

Und genau hier wird’s heikel: Wenn diese Quellen nicht explizit in der CSP freigegeben sind, blockt der Browser sie rigoros. Deshalb ist die Umsetzung einer CSP eine Gratwanderung zwischen:

  • möglichst viel blockieren (für Sicherheit)
  • möglichst wenig blockieren (für Funktion)
  • Wer die Balance findet, hat nicht nur mehr Kontrolle über seine Seite, sondern auch ein klares Signal an den Browser:
  • „Hier wird auf Sicherheit geachtet.“

Gut zu wissen: Moderne Browser unterstützen auch einen „Report-Only“-Modus, in dem du sehen kannst, was wäre blockiert worden – ohne dass die Seite dabei kaputt geht. Ideal zum Testen.

View