Verwenden von Amazon S3 Block Public Access - Amazon Simple Storage Service

Verwenden von Amazon S3 Block Public Access

Die Funktion Amazon S3 Block Public Access 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.

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 Zugriffspunkt, einen Bucket oder ein gesamtes AWS-Konto angewendet werden. Wenn sich die Block Public Accesss-Einstellungen für den Zugriffspunkt, den Bucket oder das Konto unterscheiden, wendet Amazon S3 die restriktivste Kombination der Zugriffspunkt-, 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.

Warnung

Öffentlicher Zugriff für Buckets und Objekte wird über Zugriffskontrolllisten (ACLs), Zugriffspunktrichtlinien und Bucket-Richtlinien 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 auf Amazon S3 beschrieben, können Sie die einzelnen Einstellungen an Ihre Speicheranwendungsfälle anpassen.

Anmerkung
  • Sie können Block Public Access-Einstellungen nur für Zugriffspunkte, Buckets und AWS-Konten aktivieren. Amazon S3 unterstützt keine Block Public Access-Einstellungen für einzelne Objekte.

  • Wenn Sie die Block Public Access-Einstellungen auf ein Konto anwenden, gelten die Einstellungen global für alle AWS-Regionen. Die Einstellungen werden möglicherweise nicht in allen Regionen umgehend oder gleichzeitig wirksam, werden aber auf jeden Fall von allen Regionen übernommen.

Aktivieren von Block Public Access auf der Amazon S3-Konsole.

Amazon S3 Block Public Access bietet vier Einstellungen. Sie können diese Einstellungen in beliebiger Kombination auf einzelne Zugriffspunkte, Buckets oder auf ganze AWS-Konten anwenden. Die folgende Abbildung zeigt die Aktivierung von Block Public Access auf der Amazon S3-Konsole für Ihr Konto. Weitere Informationen finden Sie unter Einrichtung von Berechtigungen: Block Public Access im Konsolenbenutzerhandbuch für Amazon Simple Storage Service.


				Screenshot der Konsole mit den Einstellungen für den öffentlichen Zugriff für ein Konto.

Block Public Access-Einstellungen

S3 Block Public Access bietet vier Einstellungen. Sie können diese Einstellungen in beliebiger Kombination auf einzelne Zugriffspunkte, Buckets oder auf ganze AWS-Konten anwenden. Wenn Sie eine Einstellung auf ein Konto anwenden, gilt sie für alle Buckets und Zugriffspunkte, die dem 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 TRUE hat folgende Verhaltensweise zur Folge:

  • "PUT Bucket acl"- und "PUT Object acl"-Aufrufe schlagen fehl, wenn die angegebene Zugriffskontrollliste (ACL) öffentlich ist.

  • "PUT Object"-Aufrufe schlagen fehl, wenn die Anforderung eine öffentliche ACL enthält.

  • Wenn diese Einstellung auf ein Konto angewendet wird, schlagen "PUT Bucket"-Aufrufe fehl, wenn die Anforderung eine öffentliche ACL enthält.

Wen diese Einstellung auf TRUE festgelegt ist, schlagen die angegebenen Operationen fehl (gleich, ob sie über die REST-API, die AWS CLI oder AWS-SDKs erfolgen). Vorhandene Richtlinien und ACLs für Buckets und Objekte werden jedoch nicht geändert. Mit dieser Einstellung können Sie den öffentlichen Zugriff einschränken und gleichzeitig die vorhandenen Richtlinien und ACLs für Ihre Buckets und Objekte prüfen, verbessern oder anderweitig ändern.

Anmerkung

Zugriffspunkten sind keine 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 auf TRUE festlegen, ignoriert Amazon S3 alle öffentlichen ACLs auf einem Bucket und alle darin enthaltenen Objekte. Mit dieser Einstellung können Sie den von ACLs gewährten öffentlichen Zugriff sicher blockieren und gleichzeitig "PUT Object"-Aufrufe zulassen, die eine öffentliche ACL enthalten (im Gegensatz zu BlockPublicAcls, das "PUT Object"-Aufrufe zurückweist, die eine öffentliche ACL enthalten). Die Aktivierung dieser Einstellungen wirkt sich nicht auf die Persistenz von vorhandenen ACLs aus und verhindert nicht, dass neue öffentliche ACLs eingerichtet werden.

Anmerkung

Zugriffspunkten sind keine 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 TRUE für einen Bucket einstellen, lehnt Amazon S3 Aufrufe der PUT-Bucket-Richtlinie ab, wenn die angegebene Bucket-Richtlinie den öffentlichen Zugriff zulässt, sowie Aufrufe der PUT-Zugriffspunkt-Richtlinie für alle Zugriffspunkte des Buckets, wenn die angegebene Richtlinie den öffentlichen Zugriff zulässt. Wenn Sie diese Option für einen Zugriffspunkt auf TRUE einstellen, lehnt Amazon S3 Aufrufe der PUT-Zugriffspunkt-Richtlinie und der PUT-Bucket-Richtlinie ab, die über den Zugriffspunkt vorgenommen werden, wenn die angegebene Richtlinie (für den Zugriffspunkt oder den zugrunde liegenden Bucket) öffentlich ist.

Mit dieser Einstellung können Sie es Benutzern gestatten, Zugriffspunkt- und Bucket-Richtlinien zu verwalten, ohne ihnen die öffentliche Freigabe des Buckets oder der darin enthaltenen Objekte zu erlauben. Die Aktivierung dieser Einstellung hat keine Auswirkungen auf vorhandene Zugriffspunkt- oder Bucket-Richtlinien.

Wichtig

Um 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

Durch das Festlegen dieser Option auf TRUE wird der Zugriff auf einen Zugriffspunkt oder Bucket mit einer öffentlichen Richtlinie auf ausschließlich AWS-Services und autorisierte Benutzer innerhalb des Kontos des Bucket-Eigentümers beschränkt. Diese Einstellung blockiert alle kontenübergreifenden Zugriffe auf den Zugriffspunkt oder Bucket (außer durch AWS-Services) und erlaubt es gleichzeitig Benutzern innerhalb des Kontos, den Zugriffspunkt oder Bucket zu verwalten.

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
  • "GET Bucket acl"- und "GET Object acl"-Aufrufe geben immer die effektiven Berechtigungen für den angegebenen Bucket oder das angegebene Objekt zurück. Nehmen wir als Beispiel an, dass ein Bucket über eine ACL verfügt, die den öffentlichen Zugriff zulässt, dass für den Bucket aber auch die Einstellung IgnorePublicAcls aktiviert ist. In diesem Fall gibt „GET Bucket acl“ statt der ACL, die tatsächlich mit dem Bucket verknüpft ist, eine ACL zurück, die die von Amazon S3 durchgesetzten Zugriffsberechtigungen widerspiegelt.

  • Die Block Public Access-Einstellungen ändern keine vorhandenen Richtlinien oder ACLs. Daher sorgt das Entfernen einer Block Public Access-Einstellung dafür, dass ein Bucket oder ein Objekt mit einer öffentlichen Richtlinie oder ACLs wieder öffentlich zugänglich ist.

Die Bedeutung von „öffentlich“

Buckets

  • ACLs

    • Amazon S3 erachtet eine Bucket- oder Objekt-ACL als öffentlich, wenn sie Mitgliedern der vordefinierten Gruppen AllUsers oder AuthenticatedUsers irgendwelche Berechtigungen erteilt. Weitere Informationen zu vordefinierten Gruppen finden Sie unter Vordefinierte Gruppen in Amazon S3.

  • 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, darf eine Bucket-Richtlinie nur Zugriff für feste Werte (Werte, die keine Platzhalter aufweisen) gewähren, wie einen oder mehrere der folgenden Werte:

      • einen Satz von Classless Inter-Domain Routings (CIDRs), unter Verwendung von aws:SourceIp. Weitere Informationen zu CIDR finden Sie unter RFC 4632 auf der RFC-Editor-Website.

      • Ein AWS-Prinzipal, Benutzer, Rolle, oder Service-Prinzipal (z. B. aws:PrincipalOrgID)

      • aws:SourceArn

      • aws:SourceVpc

      • aws:SourceVpce

      • aws:SourceOwner

      • aws:SourceAccount

      • s3:x-amz-server-side-encryption-aws-kms-key-id

      • 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 Konto 123456789012 in Region us-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

    • Nach diesen Regeln gelten die folgenden Beispielrichtlinien als öffentlich.

      { "Principal": { "Federated": "graph.facebook.com" }, "Resource": "*", "Action": "s3:PutObject", "Effect": "Allow" }
      { "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"}} }
    • Weitere Informationen zu Bucket-Richtlinien finden Sie unter Verwendung von Bucket-Richtlinien und Benutzerrichtlinien.

Beispiel

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. Nur AWS Service-Principals und autorisierten Benutzern des Kontos des Bucket-Eigentümers wird der Zugriff auf den Bucket gewährt.

Nehmen wir beispielsweise an, dass ein Bucket, der „Konto-1“ gehört, eine Richtlinie aufweist, die Folgendes enthält:

  1. eine Anweisung, die AWS CloudTrail (das ein AWS-Service-Prinzipal ist) Zugriff gewährt

  2. eine Anweisung, die Konto "Konto-2" Zugriff gewährt

  3. eine Anweisung, die der Öffentlichkeit Zugriff gewährt, z. B. durch das Festlegen von "Principal": "*" ohne einschränkende Condition

Diese Richtlinie gilt wegen der dritten Anweisung als öffentlich. Wenn diese Richtlinie vorhanden und RestrictPublicBuckets aktiviert ist, gewährt Amazon S3 den Zugriff nur durch CloudTrail. Beachten Sie: Obwohl die zweite Anweisung nicht öffentlich ist, deaktiviert Amazon S3 den Zugriff durch „Konto-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 kontenübergreifenden Zugriff, obwohl die Richtlinie den Zugriff an ein bestimmtes Konto („Konto-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 Zugriffspunkt mit einem VPC-Netzwerkursprung wird unabhängig vom Inhalt seiner Zugriffspunkt-Richtlinie immer als nicht öffentlich betrachtet.

  • 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 auf s3:DataAccessPointArn-Werte gewährt, die arn: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 Access Analyzer for S3 zur Überprüfung öffentlicher Buckets

Sie können Buckets mit Bucket-ACLs, Bucket-Richtlinien oder Zugriffspunkt-Richtlinien, die öffentlichen Zugriff gewähren, mithilfe von Access Analyzer for S3 überprüfen. Access Analyzer for S3 macht Sie auf Buckets aufmerksam, die so konfiguriert sind, dass jedem im Internet oder anderen AWS-Konten, einschließlich AWS-Konten außerhalb Ihrer Organisation, Zugriff gewährt wird. Für jeden öffentlichen oder freigegebenen Bucket erhalten Sie Ergebnisse, die die Quelle und die Ebene des öffentlichen oder freigegebenen Zugriffs melden.

Bewaffnet mit dem Wissen, das in den Ergebnissen präsentiert wird, können Sie sofortige und präzise Korrekturmaßnahmen ergreifen. In 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 kann es sein, dass Access Analyzer for S3 keine Ergebnisse für einen Bucket meldet, der von einer Amazon S3 Block Public Access-Auswertung als öffentlich gemeldet wird. Dies ist der Fall, da Amazon S3 Block Public Access Richtlinien für aktuelle Aktionen und potenzielle Aktionen überprüft, die in Zukunft hinzugefügt werden könnten, blockiert werden, die dazu führen könnten, dass ein Bucket öffentlich wird. Auf der anderen Seite analysiert Access Analyzer for S3 nur die aktuellen Aktionen, die für den Amazon S3-Service in der Bewertung des Zugriffsstatus angegeben werden.

Weitere Informationen zu Access Analyzer for S3 finden Sie unter Verwenden von Access Analyzer for S3 im Konsolenbenutzerhandbuch für Amazon Simple Storage Service.

Berechtigungen

Um die Funktionen von Amazon S3 Block Public Access zu nutzen, benötigen Sie die folgenden Berechtigungen:

Operation Erforderliche Berechtigungen
GET bucket policy status s3:GetBucketPolicyStatus
GET bucket Block Public Access settings s3:GetBucketPublicAccessBlock
PUT bucket Block Public Access settings s3:PutBucketPublicAccessBlock
DELETE bucket Block Public Access settings s3:PutBucketPublicAccessBlock
GET account Block Public Access settings s3:GetAccountPublicAccessBlock
PUT account Block Public Access settings s3:PutAccountPublicAccessBlock
DELETE account Block Public Access settings s3:PutAccountPublicAccessBlock
PUT Zugriffspunkt-Block Public Access-Einstellungen s3:PutAccessPointPublicAccessBlock
Anmerkung

Für die DELETE-Operationen sind dieselben Berechtigungen erforderlich wie für die PUT-Operationen. Es gibt keine separaten Berechtigungen für die DELETE-Operationen.

Beispiele

Verwenden von Block Public Access mit der AWS CLI

Sie können Amazon S3 Block Public Access über die AWS CLI verwenden. Welchen Befehl Sie verwenden, hängt davon ab, ob Sie einen Block Public Access-Aufruf auf einem Zugriffspunkt, einem Bucket oder einem Konto durchführen möchten. Weitere Informationen zum Einrichten und Verwenden der AWS CLI finden Sie unter Was ist die AWS Command Line Interface?

  • Zugriffspunkt

    • Um Block Public Access-Operationen für einen Zugriffspunkt durchzuführen, verwenden Sie den AWS CLI-Service s3control. 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.

  • Bucket

    • Um Block Public Access-Operationen auf einem Bucket durchzuführen, verwenden Sie den AWS CLI-Service s3api. Folgende Operationen auf Bucket-Ebene verwenden diesen Service:

      • PUT PublicAccessBlock (für einen Bucket)

      • GET PublicAccessBlock (für einen Bucket)

      • DELETE PublicAccessBlock (für einen Bucket)

      • GET BucketPolicyStatus

  • Konto

    • Um Block Public Access-Operationen auf einem Konto durchzuführen, verwenden Sie den AWS CLI-Service s3control. Folgende Operationen auf Konto-Ebene verwenden diesen Service:

      • PUT PublicAccessBlock (für ein Konto)

      • GET PublicAccessBlock (für ein Konto)

      • DELETE PublicAccessBlock (für ein Konto)

Verwenden von Block Public Access mit dem AWS SDK for Java

Die folgenden Beispiele zeigen, wie Sie Amazon S3 Block Public Access mit dem AWS SDK for Java verwenden. Anweisungen zum Erstellen und Testen eines funktionierenden Beispiels finden Sie unter Verwendung von AWS SDK for Java.

Beispiel 1

Dieses Beispiel zeigt, wie Sie mit dem AWS SDK for Java eine Block Public Access-Konfiguration auf einem S3-Bucket einrichten.

AmazonS3 client = AmazonS3ClientBuilder.standard() .withCredentials(<credentials>) .build(); client.setPublicAccessBlock(new SetPublicAccessBlockRequest() .withBucketName(<bucket-name>) .withPublicAccessBlockConfiguration(new PublicAccessBlockConfiguration() .withBlockPublicAcls(<value>) .withIgnorePublicAcls(<value>) .withBlockPublicPolicy(<value>) .withRestrictPublicBuckets(<value>)));
Wichtig

Dieses Beispiel trifft nur für Operationen auf Bucket-Ebene zu, die die AmazonS3-Client-Klasse verwenden. Sehen Sie sich für Operationen auf Konto-Ebene das folgende Beispiel an.

Beispiel 2

Dieses Beispiel zeigt, wie Sie eine Block Public Access-Konfiguration auf einem Amazon S3-Konto mit dem AWS SDK for Java einrichten.

AWSS3ControlClientBuilder controlClientBuilder = AWSS3ControlClientBuilder.standard(); controlClientBuilder.setRegion(<region>); controlClientBuilder.setCredentials(<credentials>); AWSS3Control client = controlClientBuilder.build(); client.putPublicAccessBlock(new PutPublicAccessBlockRequest() .withAccountId(<account-id>) .withPublicAccessBlockConfiguration(new PublicAccessBlockConfiguration() .withIgnorePublicAcls(<value>) .withBlockPublicAcls(<value>) .withBlockPublicPolicy(<value>) .withRestrictPublicBuckets(<value>)));
Wichtig

Dieses Beispiel trifft nur für Operationen auf Konto-Ebene zu, die die AWSS3Control-Client-Klasse verwenden. Sehen Sie sich für Operationen auf Bucket-Ebene das vorhergehende Beispiel an.

Verwenden von Block Public Access mit anderen AWS-SDKs

Weitere Informationen zur Verwendung von anderen AWS-SDKs finden Sie unter Verwenden der AWS SDKs, CLI und Explorer.

Verwenden von Block Public Access mit den REST-APIs

Weitere Informationen zum Verwenden von Amazon S3 Block Public Access über REST-APIs finden Sie in den folgenden Themen in der Amazon Simple Storage Service API Reference.