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.
Blockieren des öffentlichen Zugriffs auf Ihren Amazon-S3-Speicher
Die Amazon S3 Block Public Access-Funktion bietet Einstellungen für Zugriffspunkte, Buckets und Konten, mit denen Sie den öffentlichen Zugriff auf Amazon-S3-Ressourcen verwalten können. Standardmäßig erlauben neue Buckets, Zugriffspunkte und Objekte keinen öffentlichen Zugriff. Benutzer können jedoch Bucket-Richtlinien, Zugriffspunkt-Richtlinien oder Objektberechtigungen ändern, um öffentlichen Zugriff zu ermöglichen. S3 Block Public Access-Einstellungen überschreiben diese Richtlinien und Berechtigungen, damit Sie den öffentlichen Zugriff auf diese Ressourcen einschränken können.
Mit S3 Block Public Access können Administratoren und Bucket-Eigentümer problemlos zentrale Kontrollen zur Begrenzung des öffentlichen Zugriffs auf ihre Amazon-S3-Ressourcen einrichten. Diese Kontrollen werden unabhängig davon durchgesetzt, wie die Ressourcen erstellt wurden.
Anweisungen zur Konfiguration von Public Block Access finden Sie unter Verwenden von Block Public Access.
Wenn Amazon S3 eine Anforderung zum Zugriff auf einen Bucket oder ein Objekt erhält, wird ermittelt, ob für den Bucket oder das Konto des Bucket-Eigentümers eine Block Public Access-Einstellung vorliegt. Wenn die Anforderung über einen Zugriffspunkt einging, prüft Amazon S3 auch auf Block Public Access-Einstellungen für den Zugriffspunkt. Wenn eine Block Public Access-Einstellung vorhanden ist, die den angeforderten Zugriff verbietet, lehnt Amazon S3 die Anforderung ab.
Amazon S3 Block Public Access bietet vier Einstellungen. Diese Einstellungen sind voneinander unabhängig und können in beliebiger Kombination verwendet werden. Jede Einstellung kann auf einen Access Point, einen Bucket oder ein ganzes Objekt angewendet werden AWS-Konto. Wenn sich die Einstellungen zum Sperren des öffentlichen Zugriffs für den Access Point, den Bucket oder das Konto unterscheiden, wendet Amazon S3 die restriktivste Kombination aus Access Point-, Bucket- und Kontoeinstellungen an.
Wenn Amazon S3 ermittelt, ob eine Operation von einer Block Public Access-Einstellung untersagt wird, werden alle Anforderungen abgelehnt, die gegen eine Zugriffspunkt-, Bucket- oder Konto-Einstellung verstoßen.
Wichtig
Öffentlicher Zugriff auf Buckets und Objekte wird über Zugriffskontrolllisten (ACLs), Zugriffspunktrichtlinien, Bucket-Richtlinien oder alles gewährt. Um sicherzustellen, dass der öffentliche Zugriff für alle Amazon-S3-Zugriffspunkte, -Buckets und -Objekte blockiert ist, empfehlen wir, alle vier Einstellungen zur Blockierung des öffentlichen Zugriffs für das Konto zu aktivieren. Diese Einstellungen blockieren den öffentlichen Zugriff für alle aktuellen und künftigen Buckets und Zugriffspunkte.
Bevor Sie diese Einstellungen anwenden, verifizieren Sie, dass Ihre Anwendungen ohne öffentlichen Zugriff korrekt funktionieren. Wenn ein bestimmter Umfang an öffentlichem Zugriff auf Ihre Buckets oder Objekte nötig ist, z. B. zum Hosten einer statischen Website, wie unter Hosten einer statischen Website mit Amazon S3 beschrieben, können Sie die einzelnen Einstellungen an Ihre Speicheranwendungsfälle anpassen.
Die Aktivierung von Block Public Access trägt zum Schutz Ihrer Ressourcen bei, indem verhindert wird, dass öffentlicher Zugriff über die Ressourcenrichtlinien oder Zugriffskontrolllisten (ACLs) gewährt wird, die direkt mit S3-Ressourcen verknüpft sind. Überprüfen Sie zusätzlich zur Aktivierung von Block Public Access sorgfältig die folgenden Richtlinien, um sicherzustellen, dass sie keinen öffentlichen Zugriff gewähren:
-
Identitätspflichtige Richtlinien, die mit verbundenen verknüpft sind AWS Prinzipale (z. B. Rollen) IAM
-
Ressourcenbasierte Richtlinien, die mit zugehörigen verknüpft sind AWS Ressourcen (zum Beispiel AWS Key Management Service (KMS) Schlüssel)
Anmerkung
-
Sie können die Einstellungen zum Blockieren des öffentlichen Zugriffs nur für Access Points, Buckets und AWS-Konten. Amazon S3 unterstützt keine Einstellungen für den blockierten öffentlichen Zugriff auf Objektbasis.
-
Wenn Sie die Einstellungen zum Blockieren des öffentlichen Zugriffs auf ein Konto anwenden, gelten die Einstellungen für alle AWS-Regionen weltweit. Die Einstellungen werden möglicherweise nicht in allen Regionen umgehend oder gleichzeitig wirksam, werden aber auf jeden Fall von allen Regionen übernommen.
Themen
- Block Public Access-Einstellungen
- Durchführen von Block Public Access-Vorgänge an einem Zugriffspunkt
- Die Bedeutung von „öffentlich“
- Verwenden von IAM Access Analyzer für S3 zur Überprüfung öffentlicher Buckets
- Berechtigungen
- Verwenden von Block Public Access
- Konfigurieren der Block-Public-Access-Einstellungen für Ihr Konto
- Konfigurieren von Block-Public-Access-Einstellungen für Ihre S3-Buckets
Block Public Access-Einstellungen
S3 Block Public Access bietet vier Einstellungen. Sie können diese Einstellungen in beliebiger Kombination auf einzelne Access Points, Buckets oder ganze Access Points anwenden AWS-Konten. Wenn Sie eine Einstellung auf ein Konto anwenden, gilt sie für alle Buckets und Access Points, die diesem Konto gehören. Wenn Sie eine Einstellung auf einen Bucket anwenden, gilt diese auch für alle Zugriffspunkte, die diesem Bucket zugeordnet sind.
Die folgende Tabelle enthält die verfügbaren Einstellungen.
Name | Beschreibung |
---|---|
BlockPublicAcls |
Das Festlegen dieser Option auf
Wenn diese Einstellung auf gesetzt ist AnmerkungAccess Points sind ihnen nicht ACLs zugeordnet. Wenn Sie diese Einstellung auf einen Zugriffspunkt anwenden, fungiert sie als Passthrough zum zugrunde liegenden Bucket. Wenn diese Einstellung für einen Zugriffspunkt aktiviert ist, verhalten sich Anforderungen, die über den Zugriffspunkt vorgenommen werden, so als ob der zugrunde liegende Bucket diese Einstellung aktiviert hat, unabhängig davon, ob diese Einstellung für den Bucket tatsächlich aktiviert ist. |
IgnorePublicAcls |
Wenn Sie diese Option AnmerkungAccess Points sind ihnen nicht ACLs zugeordnet. Wenn Sie diese Einstellung auf einen Zugriffspunkt anwenden, fungiert sie als Passthrough zum zugrunde liegenden Bucket. Wenn diese Einstellung für einen Zugriffspunkt aktiviert ist, verhalten sich Anforderungen, die über den Zugriffspunkt vorgenommen werden, so als ob der zugrunde liegende Bucket diese Einstellung aktiviert hat, unabhängig davon, ob diese Einstellung für den Bucket tatsächlich aktiviert ist. |
BlockPublicPolicy |
Wenn Sie diese Option auf Wenn Sie diese Option auf Mit dieser Einstellung können Sie Benutzern erlauben, Zugriffspunkt- und Bucket-Richtlinien zu verwalten, ohne ihnen die öffentliche Freigabe des Buckets oder der darin enthaltenen Objekte zu gestatten. Die Aktivierung dieser Einstellung hat keine Auswirkungen auf vorhandene Zugriffspunkt- oder Bucket-Richtlinien. WichtigUm diese Einstellung effektiv zu nutzen, empfehlen wir Ihnen, sie auf Konto-Ebene anzuwenden. Eine Bucket-Richtlinie kann Benutzern das Ändern der Block Public Access-Einstellungen eines Buckets gestatten. Daher könnten Benutzer mit der Berechtigung zum Ändern einer Bucket-Richtlinie eine Richtlinie einfügen, die es ihnen erlaubt, die Block Public Access-Einstellungen für den Bucket zu deaktivieren. Wenn diese Einstellung dann für das ganze Konto aktiviert wird statt für einen bestimmten Bucket, blockiert Amazon S3 öffentliche Richtlinien selbst dann, wenn ein Benutzer die Bucket-Richtlinie so ändert, dass diese Einstellung deaktiviert wird. |
RestrictPublicBuckets |
Wenn Sie diese Option auf einstellen, wird der Zugriff auf einen Access Point oder Bucket mit einer öffentlichen Richtlinie auf Die Aktivierung dieser Einstellung wirkt sich nicht auf vorhandene Zugriffspunkt- oder Bucket-Richtlinien aus – mit folgender Ausnahme: Amazon S3 blockiert den öffentlichen und kontenübergreifenden Zugriff, der von einer öffentlichen Zugriffspunkt- oder Bucket-Richtlinie abgeleitet wird, darunter auch die nicht-öffentliche Delegation auf bestimmte Konten. |
Wichtig
-
Aufrufe von GET Bucket ACL und GET Object ACL geben immer die effektiven Berechtigungen zurück, die für den angegebenen Bucket oder das angegebene Objekt vorhanden sind. Nehmen wir zum Beispiel an, ein Bucket hat einen BucketACL, der öffentlichen Zugriff gewährt, aber für den Bucket ist auch die
IgnorePublicAcls
Einstellung aktiviert. In diesem Fall gibt GET Bucket acl eine ACL zurück, die die Zugriffsberechtigungen widerspiegelt, die Amazon S3 erzwingt, und nicht die tatsächlichen, ACL die dem Bucket zugeordnet sind. -
Die Einstellungen zum Blockieren des öffentlichen Zugriffs ändern keine bestehenden Richtlinien oderACLs. Daher führt das Entfernen einer Einstellung zum Blockieren des öffentlichen Zugriffs dazu, dass ein Bucket oder ein Objekt mit einer öffentlichen Richtlinie oder ACL wieder öffentlich zugänglich ist.
Durchführen von Block Public Access-Vorgänge an einem Zugriffspunkt
Um Operationen zum Blockieren des öffentlichen Zugriffs an einem Access Point durchzuführen, verwenden Sie den AWS CLI Diensts3control
.
Wichtig
Beachten Sie, dass es derzeit nicht möglich ist, die Block Public Accesss-Einstellungen eines Zugriffspunkts nach dem Erstellen des Zugriffspunkts zu ändern. Die einzige Möglichkeit, Block Public Access-Einstellungen für einen Zugriffspunkt anzugeben, besteht darin, diese beim Erstellen des Zugriffspunkts einzuschließen.
Die Bedeutung von „öffentlich“
ACLs
Amazon S3 betrachtet einen Bucket oder ein Objekt als ACL öffentlich, wenn es Mitgliedern der vordefinierten AuthenticatedUsers
Gruppen AllUsers
oder Gruppen Berechtigungen gewährt. Weitere Informationen zu vordefinierten Gruppen finden Sie unter Vordefinierte Gruppen in Amazon S3.
Bucket-Richtlinien
Bei der Evaluierung einer Bucket-Richtlinie beginnt Amazon S3 mit der Annahme, dass die Richtlinie öffentlich ist. Dann evaluiert es die Richtlinie, um festzustellen, ob sie als nicht-öffentlich eingestuft werden kann. Um als nicht öffentlich zu gelten, muss eine Bucket-Richtlinie nur Zugriff auf feste Werte gewähren (Werte, die keinen Platzhalter oder AWS Identity and Access Management Richtlinienvariable) für eine oder mehrere der folgenden Optionen:
-
Importieren in &S3; AWS Prinzipal, Benutzer, Rolle oder Dienstprinzipal (z. B.
aws:PrincipalOrgID
) -
Eine Reihe von Classless Inter-Domain Routings (CIDRs) unter Verwendung von.
aws:SourceIp
Weitere Informationen zu CIDR finden Sie unter RFC4632auf der Editor-Website. RFC Anmerkung
Bucket-Richtlinien, die abhängig vom
aws:SourceIp
-Bedingungsschlüssel Zugriff mit sehr breiten IP-Bereichen gewähren (z. B. 0.0.0.0/1), werden als „öffentlich“ bewertet. Dies schließt Werte ein, die breiter sind als /8 für IPv4 und /32 für IPv6 (ohne RFC1918 private Bereiche). Die Funktion zum Blockieren des öffentlichen Zugriffs lehnt diese „öffentlichen“ Richtlinien ab und verhindert den kontoübergreifenden Zugriff auf Buckets, die diese „öffentlichen“ Richtlinien bereits verwenden. -
aws:SourceArn
-
aws:SourceVpc
-
aws:SourceVpce
-
aws:SourceOwner
-
aws:SourceAccount
-
aws:userid
, außerhalb des Musters "AROLEID:*
" -
s3:DataAccessPointArn
Anmerkung
Bei Verwendung in einer Bucket-Richtlinie kann dieser Wert einen Platzhalter für den Namen des Zugriffspunkts enthalten, ohne die Richtlinie öffentlich zu machen, solange die Konto-ID fixiert ist. Das Zulassen des Zugriffs auf
arn:aws:s3:us-west-2:123456789012:accesspoint/*
würde beispielsweise den Zugriff auf jeden Zugriffspunkt ermöglichen, der dem Konto123456789012
in Regionus-west-2
zugeordnet ist, ohne die Bucket-Richtlinie öffentlich zu machen. Beachten Sie, dass sich dieses Verhalten von dem von Zugriffspunkt-Richtlinien unterscheidet. Weitere Informationen finden Sie unter Zugriffspunkte. -
s3:DataAccessPointAccount
Weitere Informationen zu Bucket-Richtlinien finden Sie unter Bucket-Richtlinien für Amazon S3.
Beispiel : Öffentliche Bucket-Richtlinien
Nach diesen Regeln gelten die folgenden Beispielrichtlinien als öffentlich.
{ "Principal": "*", "Resource": "*", "Action": "s3:PutObject", "Effect": "Allow" }
{ "Principal": "*", "Resource": "*", "Action": "s3:PutObject", "Effect": "Allow", "Condition": { "StringLike": {"aws:SourceVpc": "vpc-*"}} }
Diese Richtlinien können zu nicht-öffentlichen Richtlinien gemacht werden, indem einer der vorgenannten Bedingungsschlüssel unter Verwendung eines festen Wertes eingefügt wird. So können Sie beispielsweise die letzte oben angeführte Richtlinie zu einer nicht-öffentlichen Richtlinie machen, indem Sie aws:SourceVpc
wie folgt auf einen festen Wert festlegen.
{ "Principal": "*", "Resource": "*", "Action": "s3:PutObject", "Effect": "Allow", "Condition": {"StringEquals": {"aws:SourceVpc": "vpc-91237329"}} }
So wertet Amazon S3 eine Bucket-Richtlinie aus, die Berechtigungen sowohl für den öffentlichen wie auch für den nicht-öffentlichen Zugriff enthält
Dieses Beispiel zeigt, wie Amazon S3 eine Bucket-Richtlinie bewertet, die Berechtigungen sowohl für den öffentlichen wie auch für den nicht-öffentlichen Zugriff enthält.
Nehmen wir an, dass ein Bucket eine Richtlinie aufweist, die den Zugriff auf einen Satz an festen Prinzipalen gewährt. Nach den zuvor beschriebenen Regeln gilt diese Richtlinie nicht als öffentlich. Wenn Sie daher die Einstellung RestrictPublicBuckets
aktivieren, bleibt die Richtlinie wie geschrieben in Kraft, da RestrictPublicBuckets
nur für Buckets mit öffentlichen Richtlinien gilt. Wenn Sie jedoch der Richtlinie eine öffentliche Anweisung hinzufügen, wird RestrictPublicBuckets
für den Bucket wirksam. Es erlaubt nur AWS Service Principals und autorisierte Benutzer des Kontos des Bucket-Besitzers können auf den Bucket zugreifen.
Nehmen wir beispielsweise an, dass ein Bucket, der „Konto-1“ gehört, eine Richtlinie aufweist, die Folgendes enthält:
-
Eine Anweisung, die Zugriff gewährt auf AWS CloudTrail (was ist ein AWS Dienstleiter)
-
eine Anweisung, die Konto "Konto-2" Zugriff gewährt
-
eine Anweisung, die der Öffentlichkeit Zugriff gewährt, z. B. durch das Festlegen von
"Principal": "*"
ohne einschränkendeCondition
Diese Richtlinie gilt wegen der dritten Anweisung als öffentlich. Wenn diese Richtlinie eingerichtet und RestrictPublicBuckets
aktiviert ist, ermöglicht Amazon S3 den Zugriff nur von CloudTrail. Beachten Sie: Obwohl die zweite Anweisung nicht öffentlich ist, deaktiviert Amazon S3 den Zugriff durch „Account-2“. Das liegt daran, dass die dritte Anweisung die gesamte Richtlinie zu einer öffentlichen Richtlinie macht, so dass RestrictPublicBuckets
gilt. Somit deaktiviert Amazon S3 den kontoübergreifenden Zugriff, obwohl die Richtlinie den Zugriff an ein bestimmtes Konto („Account-2“) delegiert. Wenn Sie aber die dritte Anweisung aus der Richtlinie entfernen, gilt die Richtlinie nicht als öffentlich, und RestrictPublicBuckets
ist nicht mehr gültig. Somit erhält „Konto-2“ wieder Zugriff auf den Bucket, selbst wenn Sie RestrictPublicBuckets
aktiviert lassen.
Zugriffspunkte
Amazon S3 wertet Block Public Access-Einstellungen für Zugriffspunkte geringfügig anders als für Buckets aus. Die Regeln, die Amazon S3 anwendet, um zu bestimmen, wann eine Zugriffspunkt-Richtlinie öffentlich ist, sind für Zugriffspunkte im Allgemeinen dieselben wie für Buckets, außer in den folgenden Situationen:
-
Ein Access Point, der aus dem VPC Netzwerk stammt, gilt immer als nicht öffentlich, unabhängig vom Inhalt seiner Zugriffspunkt-Richtlinie.
-
Eine Zugriffspunktrichtlinie, die Zugriff auf eine Gruppe von Zugriffspunkten unter Verwendung von
s3:DataAccessPointArn
gewährt, gilt als öffentlich. Beachten Sie, dass sich dieses Verhalten von dem von Bucket-Richtlinien unterscheidet. Beispielsweise wird eine Bucket-Richtlinie, die Zugriff aufs3:DataAccessPointArn
-Werte gewährt, diearn:aws:s3:us-west-2:123456789012:accesspoint/*
entsprechen, nicht als öffentlich betrachtet. Dieselbe Anweisung in einer Zugriffspunkt-Richtlinie würde jedoch den Zugriffspunkt öffentlich machen.
Verwenden von IAM Access Analyzer für S3 zur Überprüfung öffentlicher Buckets
Sie können IAM Access Analyzer for S3 verwenden, um Buckets mit BucketsACLs, Bucket-Richtlinien oder Access Point-Richtlinien zu überprüfen, die öffentlichen Zugriff gewähren. IAMAccess Analyzer for S3 warnt Sie vor Buckets, die so konfiguriert sind, dass sie allen Personen im Internet oder auf anderen Websites Zugriff gewähren AWS-Konten, einschließlich AWS-Konten außerhalb Ihrer Organisation. Für jeden öffentlichen oder freigegebenen Bucket erhalten Sie Ergebnisse, die die Quelle und die Ebene des öffentlichen oder freigegebenen Zugriffs melden.
In IAM Access Analyzer for S3 können Sie den gesamten öffentlichen Zugriff auf einen Bucket mit einem einzigen Klick blockieren. Sie können auch einen Drilldown in die Berechtigungseinstellungen auf Bucket-Ebene ausführen, um detaillierte Zugriffsebenen zu konfigurieren. Für bestimmte und geprüfte Anwendungsfälle, die öffentlichen oder freigegebenen Zugriff erfordern, können Sie Ihre Absicht bestätigen und aufzeichnen, dass der Bucket öffentlich oder freigegeben bleibt, indem Sie die Ergebnisse für den Bucket archivieren.
In seltenen Fällen meldet IAM Access Analyzer for S3 möglicherweise keine Ergebnisse für einen Bucket, den eine Amazon S3 S3-Block-Bewertung für öffentlichen Zugriff als öffentlich meldet. Dies ist der Fall, da Amazon S3 Block Public Access Richtlinien für aktuelle Aktionen und potenzielle Aktionen, die in Zukunft hinzugefügt werden könnten und die dazu führen könnten, dass ein Bucket öffentlich wird, überprüft. Andererseits analysiert IAM Access Analyzer for S3 nur die aktuellen Aktionen, die für den Amazon S3 S3-Service bei der Bewertung des Zugriffsstatus angegeben wurden.
Weitere Informationen zu IAM Access Analyzer for S3 finden Sie unterÜberprüfung des Bucket-Zugriffs mit IAM Access Analyzer für S3.
Berechtigungen
Um die Funktionen von Amazon S3 Block Public Access zu nutzen, benötigen Sie die folgenden Berechtigungen:
Operation | Erforderliche Berechtigungen |
---|---|
GETStatus der Bucket-Richtlinie | s3:GetBucketPolicyStatus |
GETEinstellungen für den Bucket „Öffentlichen Zugriff blockieren“ | s3:GetBucketPublicAccessBlock |
PUTBucket Einstellungen für den öffentlichen Zugriff blockieren | s3:PutBucketPublicAccessBlock |
DELETEBucket Einstellungen für den öffentlichen Zugriff blockieren | s3:PutBucketPublicAccessBlock |
GETEinstellungen für das Konto „Öffentlichen Zugriff blockieren“ | s3:GetAccountPublicAccessBlock |
PUTKonto Einstellungen für öffentlichen Zugriff sperren | s3:PutAccountPublicAccessBlock |
DELETEKonto Einstellungen für öffentlichen Zugriff sperren | s3:PutAccountPublicAccessBlock |
PUTZugangspunkt Einstellungen für den öffentlichen Zugriff blockieren | s3:CreateAccessPoint |
Anmerkung
Für die DELETE Operationen sind dieselben Berechtigungen erforderlich wie für die PUT Operationen. Für die DELETE Operationen gibt es keine separaten Berechtigungen.
Verwenden von Block Public Access
Weitere Informationen zur Konfiguration von Block Public Access für Ihr AWS-Konto, Ihre Amazon S3 S3-Buckets und Ihre Access Points finden Sie in den folgenden Themen: