Complete a 3 Question Survey and Earn a re:Post Badge
Help improve AWS Support Official channel in re:Post and share your experience - complete a quick three-question survey to earn a re:Post badge!
Wie kann ich die Amazon-S3-Block-Public-Access-Funktion verwenden, um den öffentlichen Zugriff auf S3-Ressourcen zu verwalten?
Ich möchte wissen, wie Amazon S3 Block Public Access verwendet wird, um den Zugriff auf Amazon-Simple-Storage-Service(Amazon S3)-Ressourcen zu verwalten.
Lösung
Erteile die erforderlichen Berechtigungen
Um die Amazon-S3-Block-Public-Access-Einstellungen zu ändern, muss dein AWS-Identity-and-Access-Management(IAM)-Benutzer oder deine AWS-Identity-and-Access-Management(IAM)-Rolle über die folgenden Berechtigungen verfügen:
- Kontoebene: s3:PutAccountPublicAccessBlock
- Bucket-Ebene: s3:PutBucketPublicAccessBlock
Um deine aktuellen S3-Block-Public-Access-Einstellungen anzuzeigen, muss dein IAM-Benutzer oder deine IAM-Rolle über die folgenden Berechtigungen verfügen:
- Kontoebene: s3:GetAccountPublicAccessBlock
- Bucket-Ebene: s3:GetBucketPublicAccessBlock
Weitere Informationen findest du unter Berechtigungen.
S3 Block Public Access konfigurieren
Du kannst die folgenden S3-Block-Public-Access-Einstellungen für verschiedene Beschränkungsstufen konfigurieren:
- Öffentlichen Zugriff auf Buckets und Objekte sperren, der über neue Zugriffssteuerungslisten (ACLs) gewährt wird.
- Öffentlichen Zugriff auf Buckets und Objekte sperren, der über neue öffentliche Bucket- oder Zugangspunkt-Richtlinien gewährt wird.
Hinweis: Die vorherige Konfiguration verhindert neue Updates von S3-Bucket-Richtlinien oder Objekt-ACLs, die öffentlichen Zugriff gewähren. Sie ändern keine bestehenden Richtlinien oder ACLs, die öffentlichen Zugriff gewähren. - Öffentlichen Zugriff auf Buckets und Objekte sperren, der über eine ACL gewährt wird. Amazon S3 ignoriert alle ACLs, die öffentlichen Zugriff auf Buckets und Objekte gewähren.
- Öffentlichen und kontoübergreifenden Zugriff auf Buckets und Objekte sperren mithilfe einer beliebigen öffentlichen Bucket- oder Zugangspunkt-Richtlinie. Amazon S3 ignoriert den öffentlichen und kontoübergreifenden Zugriff auf Buckets oder Zugangspunkte mit neuen und bestehenden Richtlinien, die öffentlichen Zugriff gewähren.
S3 Block Public Access aktivieren oder deaktivieren
Du kannst die Einstellungen für S3 Block Public Access auf Konto- oder Bucket-Ebene oder auf beiden Ebenen konfigurieren.
S3 Block Public Access aktivieren
Nachdem du S3 Block Public Access aktiviert hast, führt Amazon S3 die folgenden Aktionen durch:
- Verweigert ausnahmslos alle anonymen und nicht authentifizierten Anfragen. Amazon-S3-URIs und -URLs, die einen Webbrowser für den Zugriff verwenden, geben den Fehler HTTP 403 Zugriff verweigert mit der Anforderungs-ID zurück.
- Ignoriert neue öffentliche ACLs, die du auf Amazon-S3-Objekte anwendest, und widerruft den Benutzerzugriff auf den S3-Bucket und die S3-Objekte.
S3 Block Public Access deaktivieren
Nachdem du S3 Block Public Access deaktiviert hast, ermöglicht Amazon S3 den Zugriff auf ein Objekt mit einer öffentlichen Bucket-Richtlinie oder einer öffentlichen ACL. Für S3-Anforderungen wie LIST oder GET können Kosten anfallen. AWS berechnet dir Gebühren für anonyme Anfragen, die in Bezug auf den öffentlichen Bucket oder das öffentliche Objekt übermittelt werden. AWS-Config-Regeln und IAM Access Analyzer für S3 generieren Warnungen betreffend den öffentlichen Status deines Buckets.
Wenn du S3 Block Public Access deaktivierst, zeigt die Spalte Zugang deines S3 Buckets eine der folgenden Einstellungen in der Amazon-S3-Konsole an:
- Objekte können öffentlich sein: Der Bucket ist nicht öffentlich, aber jeder mit den entsprechenden Berechtigungen kann öffentlichen Zugang zu Objekten gewähren.
- Nicht öffentliche Buckets und Objekte: Niemand kann öffentlich auf den Bucket und die Objekte zugreifen.
- Nur autorisierte Benutzer dieses Kontos: Nur IAM-Entitäten und AWS-Serviceprinzipale haben Zugang, da es eine Richtlinie gibt, die öffentlichen Zugang gewährt.
- Öffentlich: Jeder hat Zugang zu Listenobjekten, Schreibobjekten sowie Lese- und Schreibberechtigungen.
Behebung von Fehlern des Typs „Zugriff verweigert“ und S3-Bucket-Fehlern
Möglicherweise erhältst du die Fehlermeldung Zugriff verweigert, wenn du versuchst, S3 Block Public Access in deinem S3 Bucket zu aktivieren oder zu deaktivieren.
Gehe wie folgt vor, um diesen Fehler zu beheben:
- Stelle sicher, dass die Service-Kontrollrichtlinien (SCPs) von AWS Organizations Änderungen an S3 Block Public Access auf Konto- oder Bucket-Ebene nicht verhindern. Überprüfe die Verweigerungs-Anweisungen für die Aktionen s3:PutBucketPublicAccessBlock und s3:PutAccountPublicAccessBlock.
- Wenn dein Bucket in der Spalte Zugang Fehler anzeigt, musst du Berechtigungen hinzufügen, um Buckets und öffentliche Zugangseinstellungen aufzulisten. Füge deiner IAM-Richtlinie die folgenden Berechtigungen hinzu:
s3:GetAccountPublicAccessBlock s3:GetBucketPublicAccessBlock s3:GetBucketPolicyStatus s3:GetBucketLocation s3:GetBucketAcl s3:ListAccessPoints s3:ListAllMyBuckets
Identifiziere den IAM-Benutzer oder die IAM-Rolle, der/die S3 Block Public Access geändert hat
Verwende die AWS-CloudTrail-Konsole, um CloudTrail-Ereignisse nach den folgenden EventNames zu filtern:
- Suche auf Kontoebene nach PutAccountPublicAccessBlock.
- Suche auf Bucket-Ebene nach PutBucketPublicAccessBlock.
Um den ARN des Aufrufers zu identifizieren, vergleiche ihn mit dem Feld UserIdentity im Protokoll:
"userIdentity": { "type": "AssumedRole", "principalId": "[AccountID]:[RoleName]", "arn": "arn:aws:sts::[AccountID]:assumed-role/[RoleName]/[RoleSession]",
Bestätige danach die S3-Bucket-Ressource, die du überprüfen möchtest:
"requestParameters": { "publicAccessBlock": "", "bucketName": "[BucketName]"

Relevanter Inhalt
- AWS OFFICIALAktualisiert vor 3 Jahren