Wer kontrolliert den Schlüssel

AWS-Sicherheit für Entwickler:innen nutzen

Rahul Singh

Technical Product Manager

Zwei Arten von KMS-Schlüssel

Von AWS verwaltet

  • Vom Dienst erstellt, Alias aws/s3
  • Richtlinie lesbar, nicht bearbeitbar
  • Keine monatlichen Kosten

Zwei übereinanderliegende Karten vergleichen einen von AWS verwalteten Schlüssel mit einem kundenseitig verwalteten Schlüssel über dieselben drei Zeilen: Schlüsselrichtlinie, Rotation und Kosten. Die Zeile zur Schlüsselrichtlinie auf der Kundenkarte ist hervorgehoben. Jede Karte zeigt ihren Alias: aws Schrägstrich s3 und alias Schrägstrich reports.

AWS-Sicherheit für Entwickler:innen nutzen

Zwei Arten von KMS-Schlüssel

Von AWS verwaltet

  • Vom Dienst erstellt, Alias aws/s3
  • Richtlinie lesbar, nicht bearbeitbar
  • Keine monatlichen Kosten

Vom Kunden verwaltet

  • Von dir erstellt, Alias alias/reports, Richtlinie von dir definiert
  • Rotationsintervall von dir festgelegt
  • Ein Dollar pro Monat und Schlüssel

Zwei übereinanderliegende Karten vergleichen einen von AWS verwalteten Schlüssel mit einem kundenseitig verwalteten Schlüssel über dieselben drei Zeilen: Schlüsselrichtlinie, Rotation und Kosten. Die Zeile zur Schlüsselrichtlinie auf der Kundenkarte ist hervorgehoben. Jede Karte zeigt ihren Alias: aws Schrägstrich s3 und alias Schrägstrich reports.

AWS-Sicherheit für Entwickler:innen nutzen

Zwei Tore – beide müssen öffnen

Eine Entschlüsselungsanfrage nähert sich dem ersten von zwei Toren. Das IAM-Richtlinientor ist solide gezeichnet und als eins markiert, das dahinterliegende Schlüsselrichtlinientor ist gestrichelt und grau; beide haben noch nicht geantwortet.

  1. IAM-Richtlinie: was der Aufrufer anfordern darf
AWS-Sicherheit für Entwickler:innen nutzen

Zwei Tore – beide müssen öffnen

Eine Entschlüsselungsanfrage passiert von links nach rechts zwei nummerierte Tore, Markierung eins die IAM-Richtlinie und Markierung zwei die Schlüsselrichtlinie, bevor sie den KMS-Schlüssel erreicht. Eine Klammer unter den Toren kennzeichnet unabhängige Antworten.

  1. IAM-Richtlinie: what the caller may ask for
  2. Schlüsselrichtlinie: wem der Schlüssel antwortet

Standard-Schlüsselrichtlinie: delegiert an IAM

Grants: bestimmte Schlüssel-Operationen für eine Principal, separat widerrufbar

AWS-Sicherheit für Entwickler:innen nutzen

Der Schlüssel berührt deine Daten nie

Amazon S3 ruft in deinem Namen bei Markierung eins AWS KMS auf, und KMS liefert einen Datenschlüssel als Klartextkopie und als verschlüsselte Kopie. Die verschlüsselte Kopie wird neben dem Objektchiffretext gespeichert, und ein gestrichelter Rückweg bei Markierung zwei führt sie per Decrypt-Aufruf zurück.

Umschlagverschlüsselung

Direktverschlüsselung: Obergrenze 4 KB

AWS-Sicherheit für Entwickler:innen nutzen

Der Schlüssel berührt deine Daten nie

Amazon S3 ruft in deinem Namen bei Markierung eins AWS KMS auf, und KMS liefert einen Datenschlüssel als Klartextkopie und als verschlüsselte Kopie. Die verschlüsselte Kopie wird neben dem Objektchiffretext gespeichert, und ein gestrichelter Rückweg bei Markierung zwei führt sie per Decrypt-Aufruf zurück.

Umschlagverschlüsselung

Direktverschlüsselung: Obergrenze 4 KB

  1. GenerateDataKey, zwei Kopien zurück
  2. kms:Decrypt auf der gespeicherten Kopie
AWS-Sicherheit für Entwickler:innen nutzen

Über Konten hinweg sieht niemand beide Hälften

Konto des Aufrufers

  • Aktion in IAM erlaubt
  • Ressource: die Schlüssel-ARN

Zwei gestrichelte Kontobereiche, getrennt durch eine Kontogrenze. Oben stehen Rolle des Aufrufers und IAM-Richtlinie, unten Schlüsselrichtlinie und KMS-Schlüssel; die Anfrage überquert die Grenze.

AWS-Sicherheit für Entwickler:innen nutzen

Über Konten hinweg sieht niemand beide Hälften

Konto des Aufrufers

  • Aktion in IAM erlaubt
  • Ressource: die Schlüssel-ARN

Konto des Schlüsselinhabers

  • Schlüsselrichtlinie, die den Aufrufer nennt
  • Das Konto oder eine Rolle darin

Zwei gestrichelte Kontobereiche, getrennt durch eine Kontogrenze. Oben stehen Rolle des Aufrufers und IAM-Richtlinie, unten Schlüsselrichtlinie und KMS-Schlüssel; die Anfrage überquert die Grenze.

AWS-Sicherheit für Entwickler:innen nutzen

Lies die Ablehnung, nicht die Vermutung

Identitätsbasiert

  • AccessDeniedException, dann die Klausel, die das Tor benennt

  • no identity-based policy allows

  • Korrigiere die IAM-Richtlinie des Aufrufers

 

Eine Entschlüsselungsanfrage wird am ersten Tor gestoppt: Die IAM-Richtlinie trägt ein rotes Kreuz, die dahinterliegende Schlüsselrichtlinie ist ausgegraut und wird nie erreicht. Untertitel: no identity-based policy allows.

 

AWS-Sicherheit für Entwickler:innen nutzen

Lies die Ablehnung, nicht die Vermutung

Identitätsbasiert

  • AccessDeniedException, dann die Klausel, die das Tor benennt

  • no identity-based policy allows

  • Korrigiere die IAM-Richtlinie des Aufrufers

Ressourcenbasiert

  • no resource-based policy allows
  • Korrigiere die Schlüsselrichtlinie

Eine Entschlüsselungsanfrage wird am ersten Tor gestoppt: Die IAM-Richtlinie trägt ein rotes Kreuz, die dahinterliegende Schlüsselrichtlinie ist ausgegraut und wird nie erreicht. Untertitel: no identity-based policy allows.

Eine Entschlüsselungsanfrage passiert eine grün abgehakte IAM-Richtlinie und wird dann am zweiten Tor gestoppt, wo die Schlüsselrichtlinie ein rotes Kreuz trägt. Untertitel: no resource-based policy allows.

AWS-Sicherheit für Entwickler:innen nutzen

Was Rotation tatsächlich ändert

Automatische Rotation

  • Standard 365 Tage
  • Bereich 90 bis 2.560 Tage

Drei Karten mit minimalen, Standard- und maximalen automatischen Rotationsintervallen in Tagen, darüber drei Zeilen, welche Schlüsselarten rotieren und nach welchem Zeitplan.

AWS-Sicherheit für Entwickler:innen nutzen

Was Rotation tatsächlich ändert

Automatische Rotation

  • Standard 365 Tage
  • Bereich 90 bis 2.560 Tage

On demand

  • RotateKeyOnDemand, bis zu 25-mal pro Schlüssel

Zwei Grenzen

  • Von AWS verwaltete Schlüssel: fest jährlich
  • Automatisch: nur symmetrisch, KMS-generiertes Material

Drei Karten mit minimalen, Standard- und maximalen automatischen Rotationsintervallen in Tagen, darüber drei Zeilen, welche Schlüsselarten rotieren und nach welchem Zeitplan.

AWS-Sicherheit für Entwickler:innen nutzen

Was Rotation nicht behebt

Vier Zeilen beidseitig einer Rotationslinie im Vergleich. Die Zeile mit dem Schlüsselmaterial wechselt von Version eins zu Version zwei, während Schlüsselkennung, Alias und Schlüsselrichtlinie sowie früher geschriebene Objekte auf beiden Seiten identisch sind.

Ändert sich: das zugrunde liegende Schlüsselmaterial

Unverändert: Schlüssel-ID, ARN, Aliase, Schlüsselrichtlinie

AWS-Sicherheit für Entwickler:innen nutzen

Was Rotation nicht behebt

Vier Zeilen beidseitig einer Rotationslinie im Vergleich. Die Zeile mit dem Schlüsselmaterial wechselt von Version eins zu Version zwei, während Schlüsselkennung, Alias und Schlüsselrichtlinie sowie früher geschriebene Objekte auf beiden Seiten identisch sind.

Ändert sich: das zugrunde liegende Schlüsselmaterial

Unverändert: Schlüssel-ID, ARN, Aliase, Schlüsselrichtlinie

  • In deinem Code nichts zu ändern
  • Alte Objekte und zu weite Richtlinie: beides unverändert
AWS-Sicherheit für Entwickler:innen nutzen

Warum also einschalten

Was es bringt

  • Eine Version deckt nie alle deine Daten ab
  • Compliance- und Vertragsregeln, die Rotation vorschreiben

Eine grüne Karte mit der Überschrift what it buys unter dem Label turning rotation on. Sie zeigt eine Audit-Regel „rotate every 365 days" mit grünem Haken und einen Schlüssel als drei verbundene Versionen v1, v2 und v3, jeweils mit der Beschriftung, dass jede nur abdeckt, was sie geschrieben hat.

AWS-Sicherheit für Entwickler:innen nutzen

Warum daher einschalten

Was es bringt

  • Eine Version deckt nie alle deine Daten ab
  • Compliance- und Vertragsregeln, die Rotation vorschreiben

 

Was es kostet

  • Kein Code-Change, nichts neu zu verschlüsseln

Dieselbe grüne „what it buys"-Karte, nun mit einer zweiten Karte darunter mit der Überschrift what it costs. Diese zeigt zwei Zeilen: dein Code, unverändert, und alte Objekte, keine Neupflicht zur Verschlüsselung.

AWS-Sicherheit für Entwickler:innen nutzen

Lass uns üben!

AWS-Sicherheit für Entwickler:innen nutzen

Preparing Video For Download...