0Pricing
HTML Academy · Lektion

Content Security Policy: meta http-equiv

Legen Sie über meta http-equiv eine Content Security Policy fest

Content Security Policy: meta http-equiv ist eine kostenlose HTML Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des HTML Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der HTML Academy-Kurs umfasst insgesamt 4 Lektionen.

Was ist CSP?

Content Security Policy ist eine vom Browser erzwungene Richtlinie, die einschränkt, welche Ressourcen eine Seite laden und ausführen darf. Sie ist der stärkste Schutz gegen Cross-Site-Scripting: Selbst wenn ein Angreifer ein <script>-Tag einschleust, führt der Browser es nicht aus, sofern die Richtlinie dies nicht erlaubt.

Zwei Möglichkeiten zur Bereitstellung

CSP kann als HTTP-Response-Header (Content-Security-Policy: ...) oder als Meta-Tag in HTML gesendet werden: <meta http-equiv="Content-Security-Policy" content="...">. Der Header wird bevorzugt; das Meta-Tag ist nützlich, wenn Sie den Server nicht kontrollieren können.

<meta http-equiv="Content-Security-Policy"
  content="default-src 'self'; script-src 'self' https://cdn.example.com">

Häufige Direktiven

default-src dient als Fallback für nicht spezifizierte Ressourcentypen. script-src, style-src, img-src, connect-src (XHR/fetch), font-src und frame-src schränken jeweils ihren Ressourcentyp ein. Setzen Sie bestimmte Origins auf eine Allowlist oder verwenden Sie 'self', um nur dieselbe Origin zu erlauben.

Das Schlüsselwort self

'self' (in Anführungszeichen) bezeichnet die eigene Origin der Seite. script-src 'self' bedeutet: „Führe nur Skripte aus, die auf derselben Origin wie die Seite gehostet werden.“ Dies ist die Grundlage der meisten Richtlinien; fügen Sie bei Bedarf bestimmte externe CDNs hinzu.

Inline-Skripte blockieren

Standardmäßig blockiert CSP alle Inline-<script>-Tags und Event-Handler-Attribute (onclick). Dies ist der stärkste XSS-Schutz: Ein eingeschleustes <script> kann nicht ausgeführt werden, weil es inline ist. Verschieben Sie alle Skripte in externe Dateien, die über src eingebunden werden.

Nonces und Hashes

Verwenden Sie für notwendige Inline-Skripte eine Nonce: Der Server generiert pro Anfrage ein zufälliges Token, setzt es in CSP als script-src 'nonce-RANDOM' und fügt nonce="RANDOM" zu legitimen <script>-Tags hinzu. Eingeschleusten Skripten fehlt die Nonce, daher werden sie blockiert.

<meta http-equiv="Content-Security-Policy"
  content="script-src 'nonce-abc123'">
<script nonce="abc123">// allowed</script>
<script>// blocked — no nonce</script>

unsafe-inline und unsafe-eval

'unsafe-inline' erlaubt Inline-Skripte und -Styles wieder. 'unsafe-eval' erlaubt eval() und new Function() wieder. Beides schwächt CSP erheblich – verwenden Sie diese Optionen während einer Migration nur als letzten Ausweg und planen Sie, sie zu entfernen.

Einschränkungen von Meta-Tags

Über ein Meta-Tag bereitgestelltes CSP kann die Direktive report-uri (und andere Reporting-Funktionen) nicht verwenden. Außerdem wird die Richtlinie später wirksam als bei einem Header – alles vor dem Meta-Tag ist ungeschützt. Header sind eindeutig besser; verwenden Sie Meta-Tags nur als Fallback.

Report-Only-Modus

Testen Sie eine neue Richtlinie, ohne die Website zu beeinträchtigen: Content-Security-Policy-Report-Only: .... Der Browser meldet Verstöße, ohne sie zu blockieren. So können Sie die Richtlinie verfeinern, bis sie alle legitimen Ressourcen erlaubt, bevor Sie zur Durchsetzung wechseln.

Häufige Fehler

Wenn Sie style-src 'unsafe-inline' vergessen, werden Inline-Styles blockiert (die häufig von Frameworks erzeugt werden). Wenn Sie connect-src vergessen, werden AJAX-Anfragen an APIs blockiert. Testen Sie die Richtlinie immer zuerst im Report-Only-Modus und prüfen Sie die Konsole auf blockierte Ressourcen.

Moderne CSP-Strategie

Eine strikte CSP kombiniert script-src 'nonce-RANDOM' 'strict-dynamic' für Skripte mit einer eng gefassten Allowlist für alle anderen Ressourcen. 'strict-dynamic' erlaubt Nonce-Skripten, weitere Skripte zu laden, ohne jedes einzelne aufzulisten – das ist wesentlich einfacher zu verwalten als Allowlists pro Origin.

Wissensüberprüfung

Wie schützt CSP vor XSS-Angriffen, selbst wenn ein Angreifer erfolgreich ein Script-Tag einschleust?

Zusammenfassung

CSP ist eine vom Browser erzwungene Richtlinie, die festlegt, welche Skripte, Styles, Bilder und anderen Ressourcen geladen werden dürfen. Stellen Sie sie über einen Response-Header (bevorzugt) oder ein Meta-Tag bereit. Verwenden Sie Nonces für benötigte Inline-Skripte, vermeiden Sie unsafe-inline und unsafe-eval und testen Sie zunächst im Report-Only-Modus. Eine strikte CSP mit 'nonce-X' 'strict-dynamic' ist heute die Grundlage.

Häufig gestellte Fragen

Ist die Lektion „Content Security Policy: meta http-equiv“ kostenlos?

Ja — der vollständige Text von „Content Security Policy: meta http-equiv“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des HTML Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der HTML Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Content Security Policy: meta http-equiv“?

Legen Sie über meta http-equiv eine Content Security Policy fest Du übst HTML Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um HTML Academy zu starten?

Keine Vorkenntnisse erforderlich. HTML Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „Content Security Policy: meta http-equiv“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser HTML Academy-Lektion Code schreiben und ausführen?

Ja. Jede HTML Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Content Security Policy: meta http-equiv
  2. XSS mit innerHTML und wie Sie es verhindern
  3. iframe-Sandboxing und Permissions Policy
  4. HTTPS und Subresource Integrity
← Zurück zu HTML Academy