Wie Amazon S3 eine Anforderung für eine Bucket-Operation autorisiert - Amazon Simple Storage Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Wie Amazon S3 eine Anforderung für eine Bucket-Operation autorisiert

Wenn Amazon S3 eine Anfrage für eine Bucket-Operation erhält, wandelt Amazon S3 alle relevanten Berechtigungen in eine Reihe von Richtlinien um, die zur Laufzeit ausgewertet werden sollen. Zu den relevanten Berechtigungen gehören ressourcenbasierte Berechtigungen (z. B. Bucket-Richtlinien und Bucket-Zugriffskontrolllisten) und Benutzerrichtlinien, falls die Anfrage von einem IAM Principal stammt. Amazon S3 bewertet dann den resultierenden Satz von Richtlinien in einer Reihe von Schritten entsprechend einem bestimmten Kontext — Benutzerkontext oder Bucket-Kontext:

  1. Benutzerkontext — Wenn der Anforderer ein IAM Principal ist, benötigt der Principal die Genehmigung des übergeordneten AWS-Konto Unternehmens, dem er angehört. In diesem Schritt wertet Amazon S3 eine Untermenge der Richtlinien aus, die dem übergeordneten Konto gehören (auch als Kontextautorität bezeichnet). Diese Richtlinienuntermenge beinhaltet die Benutzerrichtlinie, die das übergeordnete Konto dem Prinzipal zuordnet. Wenn das Elternteil auch Eigentümer der Ressource in der Anfrage ist (in diesem Fall der Bucket), bewertet Amazon S3 gleichzeitig auch die entsprechenden Ressourcenrichtlinien (Bucket-Richtlinie und BucketACL). Immer wenn eine Anforderung für eine Bucket-Operation gemacht wird, zeichnen die Server-Zugriffsprotokolle die kanonische Benutzer-ID des Anforderers auf. Weitere Informationen finden Sie unter Protokollieren von Anfragen mit Server-Zugriffsprotokollierung.

  2. Bucket-Kontext – Der Anforderer muss die Berechtigung vom Bucket-Eigentümer besitzen, eine spezifische Bucket-Operation auszuführen. In diesem Schritt bewertet Amazon S3 eine Teilmenge von Richtlinien, die demjenigen gehören, dem der AWS-Konto Bucket gehört.

    Der Bucket-Besitzer kann die Erlaubnis mithilfe einer Bucket-Richtlinie oder eines Buckets erteilen. ACL Wenn der AWS-Konto Besitzer des Buckets auch das übergeordnete Konto eines IAM Prinzipals ist, kann er Bucket-Berechtigungen in einer Benutzerrichtlinie konfigurieren.

Nachfolgend sehen Sie eine grafische Darstellung der kontextbasierten Auswertung für Bucket-Operationen.

Abbildung, die die kontextbasierte Bewertung des Bucket-Betriebs zeigt.

Die folgenden Beispiele veranschaulichen die Auswertungslogik.

Beispiel 1: Vom Bucket-Eigentümer angeforderte Bucket-Operation

In diesem Beispiel sendet der Bucket-Eigentümer eine Anforderung einer Bucket-Operation unter Verwendung der Root-Anmeldeinformationen des AWS-Konto.

Abbildung, die einen vom Bucket-Besitzer angeforderten Bucket-Vorgang zeigt.

Amazon S3 führt die Kontextauswertung wie folgt durch:

  1. Da die Anforderung unter Verwendung der Anmeldeinformationen des Root-Benutzers eines AWS-Konto erfolgt, wird der Benutzerkontext nicht ausgewertet.

  2. Im Bucket-Kontext überprüft Amazon S3 die Bucket-Richtlinie, um festzustellen, ob der Auftraggeber die Berechtigung besitzt, die Operation auszuführen. Amazon S3 autorisiert die Anforderung.

Beispiel 2: Bucket-Vorgang, der von einem Benutzer angefordert wurde AWS-Konto , der nicht der Bucket-Besitzer ist

In diesem Beispiel wird eine Anforderung unter Verwendung der Anmeldeinformationen des Root-Benutzers des AWS-Konto 1111-1111-1111 für eine Bucket-Operation gestellt, die dem AWS-Konto 2222-2222-2222 gehört. An dieser Anfrage sind keine IAM Benutzer beteiligt.

Abbildung, die einen Bucket-Vorgang zeigt, der von einem Benutzer angefordert wurde AWS-Konto , der nicht der Bucket-Besitzer ist.

In diesem Beispiel bewertet Amazon S3 den Kontext wie folgt:

  1. Da die Anfrage unter Verwendung der Root-Benutzeranmeldedaten von gestellt wird AWS-Konto, wird der Benutzerkontext nicht ausgewertet.

  2. Im Bucket-Kontext wertet Amazon S3 die Bucket-Richtlinie aus. Wenn der Bucket-Besitzer (AWS-Konto 2222-2222-2222) AWS-Konto 1111-1111 nicht autorisiert hat, den angeforderten Vorgang auszuführen, lehnt Amazon S3 die Anfrage ab. Andernfalls genehmigt Amazon S3 die Anforderung und führt die Operation aus.

Beispiel 3: Bucket-Vorgang, der von einem Principal angefordert wurde, dessen Elternteil auch der Bucket-Besitzer ist IAM AWS-Konto

Im Beispiel wird die Anfrage von Jill gesendet, einer IAM Benutzerin in AWS-Konto 1111-1111-1111, der auch der Bucket gehört.

Abbildung, die einen Bucket-Vorgang zeigt, der von einem Principal und einem Bucket-Besitzer angefordert wurde. IAM

Amazon S3 führt die folgende Kontextauswertung durch:

  1. Da die Anfrage von einem IAM Principal stammt, bewertet Amazon S3 im Benutzerkontext alle Richtlinien, die dem übergeordneten Unternehmen gehören, AWS-Konto um festzustellen, ob Jill berechtigt ist, den Vorgang auszuführen.

    In diesem Beispiel ist das übergeordnete Objekt AWS-Konto 1111-1111-1111, zu dem der Principal gehört, auch der Bucket-Besitzer. Daher bewertet Amazon S3 zusätzlich zur Benutzerrichtlinie auch die Bucket-Richtlinie und den Bucket ACL im selben Kontext, da sie zu demselben Konto gehören.

  2. Da Amazon S3 die Bucket-Richtlinie und den Bucket ACL als Teil des Benutzerkontextes bewertet hat, bewertet es den Bucket-Kontext nicht.

Beispiel 4: Bucket-Vorgang, der von einem IAM Principal angefordert wurde, dessen übergeordnetes Element nicht der Bucket-Besitzer AWS-Konto ist

In diesem Beispiel wird die Anfrage von Jill gesendet, einer IAM Benutzerin, deren übergeordnetes Element 1111-1111-1111 AWS-Konto ist, der Bucket jedoch einem anderen gehört, 2222-2222-2222. AWS-Konto

Abbildung, die einen Bucket-Vorgang zeigt, der von einem Principal angefordert wurde, der nicht der Bucket-Besitzer ist. IAM

Jill benötigt Berechtigungen sowohl vom Elternteil AWS-Konto als auch vom Bucket-Besitzer. Amazon S3 wertet den Kontext wie folgt aus:

  1. Da die Anfrage von einem IAM Principal stammt, bewertet Amazon S3 den Benutzerkontext, indem es die vom Konto verfassten Richtlinien überprüft, um sicherzustellen, dass Jill über die erforderlichen Berechtigungen verfügt. Wenn Jill die Erlaubnis hat, bewertet Amazon S3 den Bucket-Kontext weiter. Wenn Jill keine Genehmigung hat, lehnt sie die Anfrage ab.

  2. Im Bucket-Kontext überprüft Amazon S3, ob der Bucket-Besitzer 2222-2222-2222 Jill (oder ihren Eltern AWS-Konto) die Erlaubnis erteilt hat, den angeforderten Vorgang durchzuführen. Wenn sie über diese Genehmigung verfügt, erteilt Amazon S3 der Anfrage und führt den Vorgang durch. Andernfalls lehnt Amazon S3 die Anforderung ab.