AWS-Belege lesen

AWS-Sicherheit für Entwickler:innen nutzen

Rahul Singh

Technical Product Manager

Was ein Datensatz enthält

CloudTrail: ein API-Call, ein Datensatz

  1. Was aufgerufen wurde: eventName
  2. Wann (UTC): eventTime
  3. Wer rief es auf: userIdentity
  4. Auf welcher Ressource: requestParameters

Eine Kartenansicht eines Datensatzes mit fünf nummerierten Feldern, jeweils mit Beispielwert daneben: eventName, eventTime, userIdentity, requestParameters und errorCode. Der fünfte Marker ist orange und der Wert lautet AccessDenied.

AWS-Sicherheit für Entwickler:innen nutzen

Was ein Datensatz enthält

CloudTrail: ein API-Call, ein Datensatz

  1. Was aufgerufen wurde: eventName
  2. Wann (UTC): eventTime
  3. Wer rief es auf: userIdentity
  4. Auf welcher Ressource: requestParameters
  5. Abgelehnt, und warum: errorCode

Eine Kartenansicht eines Datensatzes mit fünf nummerierten Feldern, jeweils mit Beispielwert daneben: eventName, eventTime, userIdentity, requestParameters und errorCode. Der fünfte Marker ist orange und der Wert lautet AccessDenied.

AWS-Sicherheit für Entwickler:innen nutzen

Das Log nennt den Principal

Zwei Felder, eine Identität

  • Session: der Aufrufer, in arn, beginnend mit arn:aws:sts:
  • Rolle: seine Berechtigung, in sessionIssuer, beginnend mit arn:aws:iam:

Zwei gestapelte Bereiche. Oben, mit der Überschrift Principal, steht die Sitzungs-ARN assumed-role/ReportsRole/deploy-42 mit einem Pfeil nach unten zur Rollen-ARN role/ReportsRole, die sie ausgestellt hat, beide durchgezogen. Unten, mit der Überschrift Actor, drei gestrichelte Kästen für Sitzungsname, sourceIPAddress und userAgent, alle zeigen auf einen gestrichelten Kasten mit der Aufschrift Inferred.

AWS-Sicherheit für Entwickler:innen nutzen

Das Log nennt den Principal

Zwei Felder, eine Identität

  • Session: der Aufrufer, in arn, beginnend mit arn:aws:sts:
  • Rolle: seine Berechtigung, in sessionIssuer, beginnend mit arn:aws:iam:

Der Actor ist kein Feld

  • Abgeleitet: Sitzungsname, sourceIPAddress

Zwei gestapelte Bereiche. Oben, mit der Überschrift Principal, steht die Sitzungs-ARN assumed-role/ReportsRole/deploy-42 mit einem Pfeil nach unten zur Rollen-ARN role/ReportsRole, die sie ausgestellt hat, beide durchgezogen. Unten, mit der Überschrift Actor, drei gestrichelte Kästen für Sitzungsname, sourceIPAddress und userAgent, alle zeigen auf einen gestrichelten Kasten mit der Aufschrift Inferred.

AWS-Sicherheit für Entwickler:innen nutzen

Vier statt vierzig Felder behalten

Vierzig Felder, vier zählen

  • Actor: wer es ausgelöst hat
  • Principal: die Identität, die AWS geprüft hat
  • Action: was aufgerufen wurde
  • Resource: was betroffen war

Ein dichter Ereignisdatensatz mit vielen grauen Feldbalken, vier davon in Blau hervorgehoben, und ein Pfeil nach unten zu einer kompakten Karte mit vier nummerierten Zeilen: actor, principal, action und resource.

AWS-Sicherheit für Entwickler:innen nutzen

Vier statt vierzig Felder behalten

Vierzig Felder, vier zählen

  • Actor: wer es ausgelöst hat
  • Principal: die Identität, die AWS geprüft hat
  • Action: was aufgerufen wurde
  • Resource: was betroffen war

Woher sie stammen

  • Action aus eventName, Resource aus requestParameters
  • Principal aus userIdentity, Actor abgeleitet

Ein dichter Ereignisdatensatz mit vielen grauen Feldbalken, vier davon in Blau hervorgehoben, und ein Pfeil nach unten zu einer kompakten Karte mit vier nummerierten Zeilen: actor, principal, action und resource.

AWS-Sicherheit für Entwickler:innen nutzen

Standardmäßig an oder aus

Management-Ereignisse

  • Control-Plane-Aufrufe
  • Enthält jeden KMS-Aufruf, daher fällt Decrypt hierher
  • Event history: kostenlose 90-Tage-Konsolenansicht

 

Drei Control-Plane-Call-Namen in einem Kasten, mit einem durchgezogenen Pfeil zu einem Kasten mit der Aufschrift Recorded by default.

 

AWS-Sicherheit für Entwickler:innen nutzen

Standardmäßig an oder aus

Management-Ereignisse

  • Control-Plane-Aufrufe
  • Enthält jeden KMS-Aufruf, daher fällt Decrypt hierher
  • Event history: kostenlose 90-Tage-Konsolenansicht

Data-Ereignisse

  • Objekt-Reads, Funktionsaufrufe, Item-Writes
  • Trail: laufende Zustellung, separat berechnet
  • Ein Selektor benennt Ressourcentyp und Reads, Writes oder beides

Drei Control-Plane-Call-Namen in einem Kasten, mit einem durchgezogenen Pfeil zu einem Kasten mit der Aufschrift Recorded by default.

Drei Data-Plane-Call-Namen in einem Kasten, mit einem gestrichelten Pfeil zu einem gestrichelten Kasten mit der Aufschrift Not recorded until you ask.

AWS-Sicherheit für Entwickler:innen nutzen

Niemand hat das aufgezeichnet

Eine Zeitleiste mit drei Punkten: du wählst, was aufgezeichnet wird, eine Datei wird heruntergeladen, und du öffnest CloudTrail. Eine gestrichelte Linie führt den ersten Punkt zum letzten, wo sie sich in ein Feld Ereignis gefunden und ein Feld Nichts da aufteilt.

Vorher entschieden, nachher gelesen

AWS-Sicherheit für Entwickler:innen nutzen

Niemand hat das aufgezeichnet

Eine Zeitleiste mit drei Punkten: du wählst, was aufgezeichnet wird, eine Datei wird heruntergeladen, und du öffnest CloudTrail. Eine gestrichelte Linie führt den ersten Punkt zum letzten, wo sie sich in ein Feld Ereignis gefunden und ein Feld Nichts da aufteilt.

Vorher entschieden, nachher gelesen

  • Data-Ereignisse an für Kundendaten
  • Für den Rest aus
AWS-Sicherheit für Entwickler:innen nutzen

Belege, nach vorn genutzt

IAM Access Analyzer

  • Richtlinienprüfung: prüft eine von dir geschriebene Richtlinie

Drei gestapelte Stufen. Ein Kasten mit den vom Rolleinsatz genutzten Ereignisnamen GetObject, ListBucket und Decrypt fließt in den IAM Access Analyzer, der in eine generierte Richtlinie mit den namensräumlichen IAM-Aktionen s3:GetObject, s3:ListBucket und kms:Decrypt mündet.

AWS-Sicherheit für Entwickler:innen nutzen

Belege, nach vorn genutzt

IAM Access Analyzer

  • Richtlinienprüfung: prüft eine von dir geschriebene Richtlinie
  • Richtlinienerstellung: bis zu 90 Tage deines Trails
  • Benötigt einen Trail, nicht Event history

Drei gestapelte Stufen. Ein Kasten mit den vom Rolleinsatz genutzten Ereignisnamen GetObject, ListBucket und Decrypt fließt in den IAM Access Analyzer, der in eine generierte Richtlinie mit den namensräumlichen IAM-Aktionen s3:GetObject, s3:ListBucket und kms:Decrypt mündet.

AWS-Sicherheit für Entwickler:innen nutzen

Gewährt, aber nie genutzt

Zwei Balken. Der obere Balken zeigt zweiundvierzig gewährte Aktionen. Der untere Balken teilt sich in ein schmales grünes Segment mit drei Aktionen und ein breites gestricheltes Segment mit neununddreißig ungenutzten.

Funde zu ungenutztem Zugriff

  • Rollen, Schlüssel und Aktionen, die niemand aufgerufen hat
AWS-Sicherheit für Entwickler:innen nutzen

Gewährt, aber nie genutzt

Zwei Balken. Der obere Balken zeigt zweiundvierzig gewährte Aktionen. Der untere Balken teilt sich in ein schmales grünes Segment mit drei Aktionen und ein breites gestricheltes Segment mit neununddreißig ungenutzten.

Funde zu ungenutztem Zugriff

  • Rollen, Schlüssel und Aktionen, die niemand aufgerufen hat

Genutzt ist nicht gleich benötigt

AWS-Sicherheit für Entwickler:innen nutzen

Gewährt, aber nie genutzt

Zwei Balken. Der obere Balken zeigt zweiundvierzig gewährte Aktionen. Der untere Balken teilt sich in ein schmales grünes Segment mit drei Aktionen und ein breites gestricheltes Segment mit neununddreißig ungenutzten.

Funde zu ungenutztem Zugriff

  • Rollen, Schlüssel und Aktionen, die niemand aufgerufen hat

Genutzt ist nicht gleich benötigt

Geringste Rechte, messbar

  • Nachweise rein, straffere Richtlinie raus
AWS-Sicherheit für Entwickler:innen nutzen

Lass uns üben!

AWS-Sicherheit für Entwickler:innen nutzen

Preparing Video For Download...