Festlegen von Object Ownership beim Erstellen eines Buckets - Amazon Simple Storage Service

Festlegen von Object Ownership beim Erstellen eines Buckets

Wenn Sie einen Bucket erstellen, können Sie S3 Object Ownership konfigurieren. Informationen zum Festlegen von Object Ownership für einen vorhandenen Bucket finden Sie unter Einstellung für Object Ownership für einen vorhandenen Bucket.

S3 Object Ownership ist eine Einstellung auf Amazon-S3-Bucket-Ebene, mit der Sie Zugriffskontrolllisten (ACLs) deaktivieren und das Eigentum an jedem Objekt in Ihrem Bucket übernehmen können, wodurch die Zugriffsverwaltung für in Amazon S3 gespeicherte Daten vereinfacht wird. Standardmäßig ist S3 Object Ownership auf die Einstellung „Von Bucket-Besitzer erzwungen“ festgelegt und ACLs sind für neue Buckets deaktiviert. Wenn ACLs deaktiviert sind, besitzt der Bucket-Eigentümer jedes Objekt im Bucket und verwaltet den Datenzugriff ausschließlich mithilfe von Zugriffsverwaltungsrichtlinien. Wir empfehlen Ihnen daher, ACLs zu deaktivieren, außer unter ungewöhnlichen Umständen, in denen Sie den Zugriff für jedes Objekt einzeln steuern müssen.

Object Ownership verfügt über drei Einstellungen, mit denen Sie die Eigentümerschaft von Objekten, die in Ihren Bucket hochgeladen werden, steuern und ACLs deaktivieren oder aktivieren können:

Deaktivierte ACLs
  • Bucket-Eigentümer erzwungen (Standard) – ACLs sind deaktiviert und der Bucket-Eigentümer besitzt automatisch jedes Objekt im Bucket und hat die volle Kontrolle darüber. ACLs haben keine Auswirkungen mehr auf Berechtigungen für Daten im S3-Bucket. Der Bucket verwendet Richtlinien, um die Zugriffssteuerung zu definieren.

Aktivierte ACLs
  • Bucket-Eigentümer bevorzugt – Der Bucket-Eigentümer besitzt und hat die volle Kontrolle über neue Objekte, die andere Konten mit der bucket-owner-full-control-vordefinierten ACL.

  • Objekt-Writer – Das AWS-Konto, das ein Objekt hochlädt, besitzt das Objekt, hat die volle Kontrolle darüber und kann anderen Benutzern über ACLs Zugriff darauf gewähren.

Berechtigungen: Um die Einstellung Bucket-Eigentümer erzwungen oder Bucket-Eigentümer bevorzugt anzuwenden, müssen Sie über die folgenden Berechtigungen verfügen: s3:CreateBucket und s3:PutBucketOwnershipControls. Wenn Sie einen Bucket mit aktivierter Einstellung Object writer (Objektschreiber), sind keine zusätzlichen Berechtigungen erforderlich. Weitere Informationen zu Amazon-S3-Berechtigungen finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für Amazon S3 in der Service-Authorization-Referenz.

Weitere Informationen zu den Berechtigungen für S3-API-Operationen nach S3-Ressourcentypen finden Sie unter Erforderliche Berechtigungen für Amazon-S3-API-Operationen.

Wichtig

Die meisten modernen Anwendungsfälle in Amazon S3 erfordern keine ACLs mehr, und wir empfehlen Ihnen, ACLs zu deaktivieren, außer unter Umständen, in denen Sie den Zugriff für jedes Objekt einzeln steuern müssen. Mit Object Ownership können Sie ACLs deaktivieren und sich auf Richtlinien für die Zugriffssteuerung verlassen. Wenn Sie ACLs deaktivieren, können Sie einfach einen Bucket mit Objekten verwalten, die von verschiedenen AWS-Konten hochgeladen wurden. Sie als Bucket-Eigentümer besitzen alle Objekte im Bucket und können den Zugriff darauf mithilfe von Richtlinien verwalten.

  1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-S3-Konsole unter https://console.aws.amazon.com/s3/.

  2. Wählen Sie in der Navigationsleiste oben auf der Seite den Namen der aktuell angezeigten AWS-Region aus. Wählen Sie anschließend die Region aus, in der Sie einen Bucket erstellen möchten.

    Anmerkung
    • Die Region einmal erstellter Buckets kann nicht nachträglich geändert werden.

    • Wählen Sie eine Region in der Nähe aus, um Latenz und Kosten gering zu halten und behördliche Vorschriften zu erfüllen. In einer Region gespeicherte Objekte verbleiben so lange in der Region, bis sie explizit in eine andere Region verschoben werden. Eine Liste der AWS-Regionen von Amazon S3 finden Sie unter AWS-Service-Endpunkte im Allgemeine Amazon Web Services-Referenz.

  3. Wählen Sie im linken Navigationsbereich Allzweck-Buckets aus.

  4. Wählen Sie Create Bucket (Bucket erstellen) aus. Die Seite Bucket erstellen wird geöffnet.

  5. Geben Sie unter Bucket Name (Bucket-Name) einen Namen für den Bucket ein.

    Der Bucket-Name ...:

    • Muss innerhalb einer Partition einzigartig sein. Eine Partition ist eine Gruppierung von Regionen. AWS verfügt derzeit über drei Partitionen: aws (kommerzielle Regionen), aws-cn (China-Regionen) und aws-us-gov (AWS GovCloud (US) Regions).

    • Muss zwischen 3 und 63 Zeichen lang sein.

    • Bestehen Sie ausschließlich aus Kleinbuchstaben, Zahlen, Punkten (.) und Bindestrichen (-). Aus Gründen der besten Kompatibilität empfehlen wir, Punkte (.) in Bucket-Namen zu vermeiden, mit Ausnahme von Buckets, die nur für statisches Website-Hosting verwendet werden.

    • Muss mit einer Zahl oder einem Buchstaben beginnen und enden.

    • Eine vollständige Liste der Bucket-Benennungsregeln finden Sie unter Benennungsregeln für Allzweck-Buckets.

    Wichtig
    • Der Name eines einmal erstellten Buckets kann nicht nachträglich geändert werden.

    • Geben Sie im Bucket-Namen keine sensiblen Informationen an. Der Bucket-Name wird in der URL angezeigt, die auf die Objekte im Bucket verweist.

  6. (Optional) Unter Allgemeine Konfiguration können Sie die Einstellungen eines vorhandenen Buckets in Ihren neuen Bucket kopieren. Wenn Sie die Einstellungen eines vorhandenen Buckets nicht kopieren möchten, fahren Sie mit dem nächsten Schritt fort.

    Anmerkung

    Diese Option:

    • ist in der AWS CLI nicht verfügbar und ist nur in der Amazon-S3-Konsole verfügbar

    • Kopiert die Bucket-Richtlinie nicht aus dem vorhandenen Bucket in den neuen Bucket

    Um die Einstellungen eines vorhandenen Buckets zu kopieren, wählen Sie unter Einstellungen aus vorhandenem Bucket kopieren die Option Bucket auswählen aus. Das Fenster Bucket auswählen wird geöffnet. Suchen Sie den Bucket mit den Einstellungen, die Sie kopieren möchten, und wählen Sie Bucket auswählen aus. Das Fenster Bucket auswählen wird geschlossen, und das Fenster Bucket erstellen wird erneut geöffnet.

    Unter Einstellungen aus vorhandenem Bucket kopieren wird nun der Name des ausgewählten Buckets angezeigt. Die Einstellungen Ihres neuen Buckets stimmen jetzt mit den Einstellungen des von Ihnen ausgewählten Buckets überein. Wenn Sie die kopierten Einstellungen entfernen möchten, wählen Sie Standardwerte wiederherstellen. Überprüfen Sie die verbleibenden Bucket-Einstellungen auf der Seite Bucket erstellen. Wenn Sie keine Änderungen vornehmen möchten, können Sie mit dem letzten Schritt fortfahren.

  7. Wählen Sie unter Object Ownership eine der folgenden Einstellungen aus, um ACLs zu deaktivieren oder zu aktivieren und den Besitz von Objekten zu steuern, die in Ihren Bucket hochgeladen wurden:

    Deaktivierte ACLs
    • Bucket-Eigentümer erzwungen (Standard) – ACLs sind deaktiviert und der Bucket-Eigentümer besitzt automatisch jedes Objekt im Allzweck-Bucket und hat die volle Kontrolle darüber. ACLs haben keine Auswirkungen mehr auf Zugriffsberechtigungen für Daten im S3-Allzweck-Bucket. Der Bucket verwendet ausschließlich Richtlinien, um die Zugriffssteuerung zu definieren.

      Standardmäßig sind ACLs deaktiviert. Die meisten modernen Anwendungsfälle in Amazon S3 erfordern keine ACLs mehr. Wir empfehlen Ihnen daher, ACLs zu deaktivieren, außer unter Umständen, in denen Sie den Zugriff für jedes Objekt einzeln steuern müssen. Weitere Informationen finden Sie unter Weitere Informationen finden Sie unter Steuern des Eigentums an Objekten und Deaktivieren von ACLs für Ihren Bucket..

    Aktivierte ACLs
    • Bucket-Eigentümer bevorzugt – Der Bucket-Eigentümer besitzt und hat die volle Kontrolle über neue Objekte, die andere Konten mit der bucket-owner-full-control-vordefinierten ACL.

      Wenn Sie die Einstellung Bucket-Eigentümer bevorzugt anwenden, damit alle Amazon-S3-Uploads die von bucket-owner-full-control vordefinierte ACL enthalten, können Sie eine Bucket-Richtlinie hinzufügen, die nur Objekt-Uploads zulässt, die diese ACL verwenden.

    • Objekt-Writer – Das AWS-Konto, das ein Objekt hochlädt, besitzt das Objekt, hat die volle Kontrolle darüber und kann anderen Benutzern über ACLs Zugriff darauf gewähren.

    Anmerkung

    Die Standardeinstellung ist Bucket-Eigentümer erzwungen. Um die Standardeinstellung anzuwenden und ACLs deaktiviert zu lassen, ist nur die s3:CreateBucket-Berechtigung erforderlich. Sie müssen über die s3:PutBucketOwnershipControls-Berechtigung verfügen, um ACLs zu aktivieren.

  8. Wählen Sie unter Einstellungen "Öffentlichen Zugriff beschränken" für diesen Bucket die Einstellungen zum Beschränken des öffentlichen Zugriffs aus, die Sie auf den Bucket anwenden möchten.

    Alle vier Einstellungen zum Blockieren des öffentlichen Zugriffs sind standardmäßig aktiviert. Es wird empfohlen, alle Einstellungen aktiviert zu lassen, es sei denn, Sie wissen, dass Sie eine oder mehrere dieser Einstellungen für Ihren Anwendungsfall deaktivieren müssen. Weitere Informationen zum Blockieren des öffentlichen Zugriffs finden Sie unter Blockieren des öffentlichen Zugriffs auf Ihren Amazon-S3-Speicher.

    Anmerkung

    Zum Aktivieren aller Einstellungen zum Blockieren des öffentlichen Zugriffs ist nur die s3:CreateBucket-Berechtigung erforderlich. Wenn Sie eine der Einstellungen zum Blockieren des öffentlichen Zugriffs deaktivieren möchten, benötigen Sie die s3:PutBucketPublicAccessBlock-Berechtigung.

  9. (Optional) Bucket-Versionsverwaltung ist standardmäßig deaktiviert. Das Versioning ermöglicht Ihnen, mehrere Versionen eines Objekts im selben Bucket aufzubewahren. Sie können Versioning verwenden, um sämtliche Versionen aller Objekte in Ihrem Bucket zu speichern, abzurufen oder wiederherzustellen. Daten lassen sich dank Versioning nach unbeabsichtigten Benutzeraktionen und Anwendungsfehlern leichter wiederherstellen. Weitere Informationen über das Versioning finden Sie unter Beibehalten mehrerer Versionen von Objekten mit der S3-Versionsverwaltung.

    Wenn Sie die Versionsverwaltung in Ihrem Bucket aktivieren möchten, wählen Sie Aktivieren aus.

  10. (Optional) Unter Tags können Sie auswählen, ob Sie Ihrem Bucket Tags hinzufügen möchten. Mit der AWS-Kostenzuordnung können Sie Bucket-Tags verwenden, um Kommentare zur Rechnungsstellung für Ihre Verwendung eines Buckets anzubringen. Ein Tag ist ein Schlüssel-Wert-Paar, das eine Bezeichnung repräsentiert, die Sie einem Bucket zuweisen. Weitere Informationen finden Sie unter Verwenden von Kostenzuordnungs-Markierungen für S3-Buckets.

    Wenn Sie ein Bucket-Tag hinzuzufügen, geben Sie einen Key (Schlüssel) und optional einen Value (Wert) ein. Wählen Sie dann Add Tag (Tag hinzufügen) aus.

  11. Wählen Sie eine der folgenden Optionen unter Verschlüsselungstyp aus, um die Standardverschlüsselung zu konfigurieren:

    • Serverseitige Verschlüsselung mit von Amazon S3 verwalteten Schlüsseln (SSE-S3)

    • Serverseitige Verschlüsselung mit AWS Key Management Service-Schlüsseln (SSE-KMS)

    • Zweistufige serverseitige Verschlüsselung mit den Schlüsseln von AWS Key Management Service (AWS KMS) (DSSE-KMS)

      Wichtig

      Wenn Sie die Option SSE-KMS oder DSSE-KMS für die Standardverschlüsselungskonfiguration verwenden, unterliegen Sie dem Kontingent der Anforderungen pro Sekunde (RPS) von AWS KMS. Weitere Informationen zu AWS KMS-Kontingenten und zum Anfordern einer Kontingenterhöhung finden Sie unter Kontingente im Entwicklerhandbuch zu AWS Key Management Service.

    Buckets und neue Objekte werden mit serverseitiger Verschlüsselung verschlüsselt. Dabei ist ein Von Amazon S3 verwalteter Schlüssel (SSE-S3) die Grundebene der Verschlüsselungskonfiguration. Weitere Informationen zur Standard-Verschlüsselung finden Sie unter Einstellen des Verhaltens der serverseitigen Verschlüsselung für Amazon S3-Buckets. Weitere Informationen zu SSE-S3 finden Sie unter Verwenden serverseitiger Verschlüsselung mit von Amazon S3 verwalteten Schlüsseln (SSE-S3).

    Weitere Informationen zum Verwenden der serverseitigen Verschlüsselung zum Verschlüsseln Ihrer Daten finden Sie im Datenschutz durch Verschlüsselung.

  12. Wenn Sie die serverseitige Verschlüsselung mit AWS Key Management Service-Schlüsseln (SSE-KMS) oder die serverseitige Dual-Layer-Verschlüsselung mit AWS Key Management Service (AWS KMS)-Schlüsseln (DSSE-KMS) gewählt haben, gehen Sie wie folgt vor:

    1. Geben Sie unter AWS KMS-Schlüssel Ihren KMS-Schlüssel auf eine der folgenden Arten an:

      • Wenn Sie aus einer Liste verfügbarer KMS-Schlüssel auswählen möchten, wählen Sie Aus Ihren AWS KMS keys wählen und anschließend den KMS-Schlüssel in der Liste der verfügbaren Schlüssel aus.

        Sowohl der Von AWS verwalteter Schlüssel (aws/s3) als auch Ihre vom Kunden verwalteten Schlüssel werden in dieser Liste angezeigt. Weitere Informationen über vom Kunden verwaltete Schlüssel finden Sie unter Kundenschlüssel und AWS-Schlüssel im Entwicklerhandbuch zu AWS Key Management Service.

      • Wählen Sie zum Eingeben des KMS-Schlüssel-ARN AWS KMS key-ARN eingeben aus und geben Sie Ihren KMS-Schlüssel-ARN in das angezeigte Feld ein.

      • Wählen Sie zum Erstellen eines neuen vom Kunden verwalteten Schlüssels in der AWS KMS-Konsole Erstellen eines KMS-Schlüssels aus.

        Weitere Informationen zum Erstellen eines AWS KMS key finden Sie unter Creating Keys (Schlüssel erstellen) im AWS Key Management Service-Entwicklerhandbuch.

      Wichtig

      Sie können nur KMS-Schlüssel verwenden, die in derselben AWS-Region wie der Bucket verfügbar sind. Die Amazon-S3-Konsole führt nur die ersten 100 KMS-Schlüssel auf, die in derselben Region wie der Bucket verfügbar sind. Wenn Sie einen KMS-Schlüssel verwenden möchten, der nicht aufgeführt ist, müssen Sie den KMS-Schlüssel-ARN eingeben. Wenn Sie einen KMS-Schlüssel verwenden möchten, der sich im Besitz eines anderen Kontos befindet, müssen Sie über die Berechtigung zum Verwenden des Schlüssels verfügen und Sie müssen den KMS-Schlüssel-ARN eingeben. Weitere Informationen zu kontoübergreifenden Berechtigungen für KMS-Schlüssel finden Sie unter Erstellen von KMS-Schlüsseln, die von anderen Konten verwendet werden können im Entwicklerhandbuch zu AWS Key Management Service. Weitere Informationen zu SSE-KMS finden Sie unter Angeben der serverseitigen Verschlüsselung mit AWS KMS-(SSE-KMS). Weitere Informationen zu DSSE-KMS finden Sie unter Verwenden serverseitiger Dual-Layer-Verschlüsselung mit AWS KMS-Schlüsseln (DSSE-KMS).

      Wenn Sie einen AWS KMS key für serverseitige Verschlüsselung in Amazon S3 verwenden, müssen Sie einen symmetrischen KMS-Verschlüsselungsschlüssel wählen. Amazon S3 unterstützt nur KMS-Schlüssel mit symmetrischer Verschlüsselung und keine asymmetrischen KMS-Schlüssel. Weitere Informationen finden Sie unter Erkennen von symmetrischen und asymmetrischen KMS-Schlüsseln im Entwicklerhandbuch zu AWS Key Management Service.

    2. Wenn Sie Ihren Bucket für die Verwendung der Standardverschlüsselung mit SSE-KMS konfigurieren, können Sie auch S3-Bucket-Schlüssel aktivieren. S3-Bucket-Schlüssel verringern den Anforderungsverkehr von Amazon S3 zu AWS KMS und senken die Verschlüsselungskosten. Weitere Informationen finden Sie unter Reduzieren des Preises von SSE-KMS mit Amazon-S3-Bucket-Schlüsseln. S3-Bucket-Schlüssel werden für DSSE-KMS nicht unterstützt.

      Standardmäßig sind die S3-Bucket-Schlüssel in der Amazon-S3-Konsole aktiviert. Wir empfehlen, S3-Bucket-Schlüssel aktiviert zu lassen, um Ihre Kosten zu senken. Um S3-Bucket-Schlüssel für Ihren Bucket zu deaktivieren, wählen Sie unter Bucket-Schlüssel die Option Deaktivieren aus.

  13. (Optional) S3 Object Lock schützt neue Objekte vor dem Löschen oder Überschreiben. Weitere Informationen finden Sie unter Sperren von Objekten mit Object Lock. Wenn Sie die S3-Object Lock aktivieren möchten, gehen Sie wie folgt vor:

    1. Wählen Sie Erweiterte Einstellungen aus.

      Wichtig

      Durch Aktivieren von Object Lock wird auch die Versionsverwaltung für den Bucket automatisch aktiviert. Nachdem Sie den Bucket aktiviert und erfolgreich erstellt haben, müssen Sie auch die Standardeinstellungen für die Object Lock im Bereich Eigenschaften des Buckets konfigurieren.

    2. Wenn Sie die Objektsperre aktivieren möchten, wählen Sie Enable (Aktivieren) aus, lesen Sie die angezeigte Warnung und bestätigen Sie sie.

    Anmerkung

    Wenn Sie einen Bucket mit aktivierter Object Lock erstellen möchten, benötigen Sie die folgenden Berechtigungen: s3:CreateBucket, s3:PutBucketVersioning und s3:PutBucketObjectLockConfiguration.

  14. Wählen Sie Create Bucket (Bucket erstellen) aus.

Um beim Erstellen eines neuen Buckets den Objektbesitz festzulegen, verwenden Sie den create-bucket-Befehl AWS CLI mit dem Parameter --object-ownership.

In diesem Beispiel wird die Einstellung „Bucket-Eigentümer erzwungen“ für einen neuen Bucket mithilfe der AWS CLI angewendet:

aws s3api create-bucket --bucket amzn-s3-demo-bucket --region us-east-1 --object-ownership BucketOwnerEnforced
Wichtig

Wenn Sie die Objekteigentümerschaft nicht festlegen, wenn Sie einen Bucket mit der AWS CLI erstellen, ist die Standardeinstellung ObjectWriter (ACLs aktiviert).

In diesem Beispiel wird die Einstellung „Bucket-Eigentümer erzwungen“ für einen neuen Bucket mithilfe von AWS SDK für Java festgelegt:

// Build the ObjectOwnership for CreateBucket CreateBucketRequest createBucketRequest = CreateBucketRequest.builder() .bucket(bucketName) .objectOwnership(ObjectOwnership.BucketOwnerEnforced) .build() // Send the request to Amazon S3 s3client.createBucket(createBucketRequest);

Um die CloudFormation-Ressource AWS::S3::Bucket zum Festlegen der Objekteigentümerschaft beim Erstellen eines neuen Buckets zu verwenden, finden Sie die weitere Informationen unter OwnershipControls in AWS::S3::Bucket im AWS CloudFormation-Benutzerhandbuch.

Wenn Sie die Einstellung „Bucket-Eigentümer erzwungen“ für S3 Object Ownership anwenden möchten, verwenden Sie die API-Operation CreateBucket, wobei der x-amz-object-ownership-Anforderungsheader auf BucketOwnerEnforced festgelegt ist. Weitere Informationen und Beispiele finden Sie unter CreateBucket in der API-Referenz zu Amazon Simple Storage Service.

Nächste Schritte: Nach der Anwendung der Einstellungen „Von Bucket-Besitzer erzwungen“ oder „Von Bucket-Besitzer bevorzugt“ auf den Objektbesitz können Sie die folgenden Schritte ausführen:

  • Bucket-Eigentümer erzwungen – Erfordert, dass alle neuen Buckets mit deaktivierten ACLs erstellt werden, indem eine IAM- oder Organisationsrichtlinie verwendet wird.

  • Bucket-Eigentümer bevorzugt- Fügen Sie eine S3-Bucket-Richtlinie hinzu, um die bucket-owner-full-control vordefinierte ACL für alle Objekt-Uploads in Ihren Bucket anzufordern.