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.
Zugriffsverwaltung
AWS In ist eine Ressource eine Entität, mit der Sie arbeiten können. In Amazon Simple Storage Service (S3) sind Buckets und Objekte die ursprünglichen Amazon S3 S3-Ressourcen. Jeder S3-Kunde hat wahrscheinlich Buckets mit Objekten darin. Als S3 um neue Funktionen erweitert wurde, kamen auch zusätzliche Ressourcen hinzu, aber nicht jeder Kunde nutzt diese funktionsspezifischen Ressourcen. Weitere Informationen zu Amazon S3 S3-Ressourcen finden Sie unterS3-Ressourcen.
Standardmäßig werden alle Amazon S3-Ressourcen als privat eingestuft. Standardmäßig können der Root-Benutzer der Ressource AWS-Konto , die die Ressource erstellt hat (Ressourcenbesitzer), und IAM Benutzer innerhalb dieses Kontos mit den erforderlichen Berechtigungen auf eine von ihnen erstellte Ressource zugreifen. Der Besitzer der Ressource entscheidet, wer sonst noch auf die Ressource zugreifen kann und welche Aktionen andere Benutzer an der Ressource ausführen dürfen. S3 verfügt über verschiedene Tools zur Zugriffsverwaltung, mit denen Sie anderen Zugriff auf Ihre S3-Ressourcen gewähren können.
Die folgenden Abschnitte bieten Ihnen einen Überblick über S3-Ressourcen, die verfügbaren S3-Zugriffsverwaltungstools und die besten Anwendungsfälle für die einzelnen Zugriffsverwaltungstools. Die Listen in diesen Abschnitten sollen umfassend sein und alle S3-Ressourcen, Zugriffsverwaltungstools und allgemeine Anwendungsfälle für die Zugriffsverwaltung enthalten. Gleichzeitig sind diese Abschnitte als Verzeichnisse konzipiert, die Sie zu den gewünschten technischen Details führen. Wenn Sie sich mit einigen der folgenden Themen gut auskennen, können Sie zu dem Abschnitt springen, der für Sie relevant ist.
Topics
S3-Ressourcen
Die ursprünglichen Amazon S3 S3-Ressourcen sind Buckets und die Objekte, die sie enthalten. Wenn neue Funktionen zu S3 hinzugefügt werden, kommen auch neue Ressourcen hinzu. Im Folgenden finden Sie eine vollständige Liste der S3-Ressourcen und ihrer jeweiligen Funktionen.
Ressourcentyp | Amazon S3 S3-Funktion | Beschreibung |
---|---|---|
|
Kern-Features |
Ein Bucket ist ein Container für Objekte. Um ein Objekt in S3 zu speichern, erstellen Sie einen Bucket und laden Sie dann ein oder mehrere Objekte in den Bucket hoch. Weitere Informationen finden Sie unter Erstellen, Konfigurieren und Arbeiten mit Amazon S3-Buckets. |
|
Ein Objekt kann eine Datei und alle Metadaten sein, die diese Datei beschreiben. Wenn sich ein Objekt im Bucket befindet, können Sie es öffnen, herunterladen und verschieben. Weitere Informationen finden Sie unter Hochladen, Herunterladen und Arbeiten mit Objekten in Amazon S3. |
|
|
Zugriffspunkte |
Access Points sind benannte Netzwerkendpunkte, die an Buckets angehängt sind, mit denen Sie Amazon S3 S3-Objektoperationen wie |
|
|
Ein Object Lambda Access Point ist ein Access Point für einen Bucket, der auch mit einer Lambda-Funktion verknüpft ist. Mit Object Lambda Access Point können Sie Amazon S3 Ihren eigenen Code und |
|
|
Multi-Region-Access Points bieten einen globalen Endpunkt, über den Anwendungen Anfragen von Amazon S3 S3-Buckets bearbeiten können, die sich in mehreren AWS Regionen befinden. Sie können Multi-Regions Access Points verwenden, um Multi-Regions-Anwendungen mit derselben Architektur zu erstellen, die in einer einzelnen Region verwendet wird, und diese Anwendungen dann überall auf der Welt ausführen. Anstatt Anfragen über das überlastete öffentliche Internet zu senden, werden Anwendungsanfragen an einen globalen Multi-Region-Access Point-Endpunkt automatisch über das AWS globale Netzwerk an den nächstgelegenen Amazon S3 S3-Bucket weitergeleitet. Weitere Informationen finden Sie unter Multi-Regions-Zugriffspunkte in Amazon S3. |
|
S3-BatchVorgänge |
Ein Job ist eine Ressource der S3-Funktion Batch Operations. Sie können S3 Batch Operations verwenden, um umfangreiche Batch-Operationen für Listen von Amazon S3 S3-Objekten durchzuführen, die Sie angeben. Amazon S3 verfolgt den Fortschritt des Batch-Vorgangs, sendet Benachrichtigungen und speichert einen detaillierten Abschlussbericht über alle Aktionen, sodass Sie ein vollständig verwaltetes, überprüfbares und serverloses Erlebnis erhalten. Weitere Informationen finden Sie unter Ausführung umfangreicher Batch-Vorgänge für Amazon S3-Objekte durch.. |
|
S3 Storage Lens |
Eine S3 Storage Lens-Konfiguration erfasst unternehmensweite Speichermetriken und Benutzerdaten für alle Konten. S3 Storage Lens bietet Administratoren eine zentrale Ansicht der Objektspeichernutzung und der Aktivitäten von Hunderten oder sogar Tausenden von Konten in einem Unternehmen mit Details, um Erkenntnisse auf mehreren Aggregationsebenen zu gewinnen. Weitere Informationen finden Sie unter Bewerten Ihrer Speicheraktivität und -nutzung mit Amazon S3 Storage Lens. |
|
Eine S3 Storage Lens-Gruppe aggregiert Metriken mithilfe benutzerdefinierter Filter, die auf Objektmetadaten basieren. Mithilfe von S3 Storage Lens-Gruppen können Sie Merkmale Ihrer Daten untersuchen, z. B. die Verteilung von Objekten nach Alter, Ihre häufigsten Dateitypen und mehr. Weitere Informationen finden Sie unter Arbeiten mit S3-Storage-Lens-Gruppen. |
|
|
S3 Access Grants |
Eine S3 Access Grants-Instanz ist ein Container für die von Ihnen erstellten S3-Grants. Mit S3 Access Grants können Sie Berechtigungen für Ihre Amazon S3 S3-Daten für IAM Identitäten in Ihrem Konto, IAM Identitäten in anderen Konten (kontoübergreifend) und Verzeichnisidentitäten erstellen, die AWS IAM Identity Center aus Ihrem Unternehmensverzeichnis hinzugefügt wurden. Weitere Informationen zu S3 Access Grants finden Sie unter. Verwalten des Zugriffs mit S3-Zugriffsberechtigungen |
|
Ein Access Grants-Standort ist ein Bucket, ein Präfix innerhalb eines Buckets oder ein Objekt, das Sie in Ihrer S3 Access Grants-Instanz registrieren. Sie müssen Standorte innerhalb der S3 Access Grants-Instanz registrieren, bevor Sie einen Zuschuss für diesen Standort erstellen können. Anschließend können Sie mit S3 Access Grants Zugriff auf den Bucket, das Präfix oder das Objekt für IAM Identitäten in Ihrem Konto, IAM Identitäten in anderen Konten (kontoübergreifend) und Verzeichnisidentitäten gewähren, die AWS IAM Identity Center aus Ihrem Unternehmensverzeichnis hinzugefügt wurden. Weitere Informationen zu S3 Access Grants finden Sie unter Verwalten des Zugriffs mit S3-Zugriffsberechtigungen |
|
|
Ein Access Grant ist eine individuelle Gewährung Ihrer Amazon S3 S3-Daten. Mit S3 Access Grants können Sie Berechtigungen für Ihre Amazon S3 S3-Daten für IAM Identitäten in Ihrem Konto, IAM Identitäten in anderen Konten (kontoübergreifend) und Verzeichnisidentitäten erstellen, die AWS IAM Identity Center aus Ihrem Unternehmensverzeichnis hinzugefügt wurden. Weitere Informationen zu S3 Access Grants finden Sie unter Verwalten des Zugriffs mit S3-Zugriffsberechtigungen |
Buckets
Es gibt zwei Arten von Amazon S3 S3-Buckets: Allzweck-Buckets und Verzeichnis-Buckets.
-
Allzweck-Buckets sind der ursprüngliche S3-Bucket-Typ und werden für die meisten Anwendungsfälle und Zugriffsmuster empfohlen. Allzweck-Buckets ermöglichen auch Objekte, die in allen Speicherklassen gespeichert werden, mit Ausnahme von S3 Express One Zone. Weitere Informationen zu S3-Speicherklassen finden Sie unter. Verwenden von Amazon-S3-Speicherklassen
-
Directory-Buckets verwenden die Speicherklasse S3 Express One Zone. Dies wird empfohlen, wenn Ihre Anwendung leistungsempfindlich ist und von einstelligen Millisekunden und Latenzen profitiert.
PUT
GET
Weitere Informationen finden Sie unter Verzeichnis-Buckets, Was ist S3 Express One Zone? und AWS Identity and Access Management (IAM) für S3 Express One Zone.
Kategorisieren von S3-Ressourcen
Amazon S3 bietet Funktionen zur Kategorisierung und Organisation Ihrer S3-Ressourcen. Die Kategorisierung Ihrer Ressourcen ist nicht nur nützlich, um sie zu organisieren, sondern Sie können auch Zugriffsverwaltungsregeln auf der Grundlage der Ressourcenkategorien festlegen. Insbesondere Präfixe und Tagging sind zwei Funktionen zur Speicherorganisation, die Sie bei der Festlegung von Zugriffsverwaltungsberechtigungen verwenden können.
Anmerkung
Die folgenden Informationen beziehen sich auf Allzweck-Buckets. Verzeichnis-Buckets unterstützen kein Tagging und haben Präfixbeschränkungen. Weitere Informationen finden Sie unter AWS Identity and Access Management (IAM) für S3 Express One Zone.
Präfixe — Ein Präfix in Amazon S3 ist eine Zeichenfolge am Anfang eines Objektschlüsselnamens, die verwendet wird, um die Objekte zu organisieren, die in Ihren S3-Buckets gespeichert sind. Sie können ein Trennzeichen verwenden, z. B. einen Schrägstrich (
/
), um das Ende des Präfixes innerhalb des Objektschlüsselnamens anzugeben. Beispielsweise können Sie Objektschlüsselnamen verwenden, die mit demengineering/
Präfix beginnen, oder Objektschlüsselnamen, die mit dem Präfix beginnen.marketing/campaigns/
Die Verwendung eines Trennzeichens am Ende Ihres Präfixes, z. B. eines Schrägstrichs,/
emuliert die Benennungskonventionen für Ordner und Dateien. In S3 ist das Präfix jedoch Teil des Objektschlüsselnamens. In S3-Buckets für allgemeine Zwecke gibt es keine tatsächliche Ordnerhierarchie.Amazon S3 unterstützt das Organisieren und Gruppieren von Objekten mithilfe ihrer Präfixe. Sie können den Zugriff auf Objekte auch anhand ihrer Präfixe verwalten. Sie können beispielsweise den Zugriff auf Objekte beschränken, deren Namen mit einem bestimmten Präfix beginnen.
Weitere Informationen finden Sie unter Organisieren von Objekten mit Präfixen. Die S3-Konsole verwendet das Konzept von Ordnern, bei denen es sich bei Buckets für allgemeine Zwecke im Wesentlichen um Präfixe handelt, die dem Objektschlüsselnamen vorangestellt werden. Weitere Informationen finden Sie unter Organisieren von Objekten in der Amazon S3-Konsole mithilfe von Ordnern.
Tags — Jedes Tag ist ein Schlüssel-Wert-Paar, das Sie Ressourcen zuweisen. Sie können beispielsweise einige Ressourcen mit dem Tag kennzeichnen.
topicCategory=engineering
Sie können Tagging verwenden, um die Kostenzuweisung, Kategorisierung und Organisation sowie die Zugriffskontrolle zu erleichtern. Bucket-Tagging wird nur für die Kostenzuweisung verwendet. Sie können Objekte, S3 Storage Lens, Jobs und S3 Access Grants zu Organisationszwecken oder zur Zugriffskontrolle taggen. In S3 Access Grants können Sie Tagging auch für die Kostenzuweisung verwenden. Als Beispiel für die Steuerung des Zugriffs auf Ressourcen mithilfe ihrer Tags können Sie nur Objekte teilen, die über ein bestimmtes Tag oder eine Kombination von Tags verfügen.Weitere Informationen finden Sie im IAMBenutzerhandbuch unter Steuern des Zugriffs auf AWS Ressourcen mithilfe von Ressourcen-Tags.
Identitäten
In Amazon S3 ist der Ressourcenbesitzer die Identität, die die Ressource erstellt hat, z. B. ein Bucket oder ein Objekt. Standardmäßig können nur der Root-Benutzer des Kontos, das die Ressource erstellt hat, und IAM Identitäten innerhalb des Kontos, die über die erforderlichen Berechtigungen verfügen, auf die S3-Ressource zugreifen. Ressourcenbesitzer können anderen Identitäten Zugriff auf ihre S3-Ressourcen gewähren.
Identitäten, denen eine Ressource nicht gehört, können Zugriff auf diese Ressource beantragen. Anfragen an eine Ressource sind entweder authentifiziert oder nicht authentifiziert. Authentifizierte Anfragen müssen einen Signaturwert enthalten, der den Absender der Anfrage authentifiziert. Für nicht authentifizierte Anfragen ist jedoch keine Signatur erforderlich. Wir empfehlen, dass Sie nur authentifizierten Benutzern Zugriff gewähren. Weitere Informationen über Anforderungsauthentifizierung finden Sie unter Senden von Anforderungen.
Wichtig
Wir empfehlen, dass Sie die AWS-Konto Root-Benutzeranmeldedaten nicht verwenden, um authentifizierte Anfragen zu stellen. Erstellen Sie stattdessen eine IAM Rolle und gewähren Sie dieser Rolle vollen Zugriff. Wir bezeichnen Benutzer mit dieser Rolle als Administratorbenutzer. Sie können die der Administratorrolle zugewiesenen Anmeldeinformationen anstelle von AWS-Konto Root-Benutzeranmeldedaten verwenden, um mit Aufgaben wie dem Erstellen eines Buckets, dem Erstellen von Benutzern AWS und dem Erteilen von Berechtigungen zu interagieren und diese auszuführen. Weitere Informationen finden Sie unter AWS-Konto Root-Benutzeranmeldedaten und IAM Benutzeranmeldedaten im Allgemeine AWS-Referenzund unter Bewährte Sicherheitsmethoden IAM im IAM Benutzerhandbuch.
Es kann sich um eine der folgenden Identitäten handeln, die auf Ihre Daten in Amazon S3 zugreifen:
AWS-Konto owner
AWS-Konto Derjenige, der die Ressource erstellt hat. Zum Beispiel das Konto, das den Bucket erstellt hat. Dieses Konto besitzt die Ressource. Weitere Informationen finden Sie unter AWS Konto Root-Benutzer.
IAMIdentitäten im selben Konto des Besitzers AWS-Konto
Beim Einrichten von Konten für neue Teammitglieder, die S3-Zugriff benötigen, kann der AWS-Konto Besitzer AWS Identity and Access Management (IAM) verwenden, um Benutzer, Gruppen und Rollen zu erstellen. Der AWS-Konto Besitzer kann dann Ressourcen mit diesen IAM Identitäten teilen. Der Kontoinhaber kann auch die Berechtigungen zur Vergabe der IAM Identitäten angeben, mit denen die Aktionen, die mit den gemeinsam genutzten Ressourcen ausgeführt werden können, zugelassen oder verweigert werden.
IAMIdentitäten bieten erweiterte Funktionen, einschließlich der Möglichkeit, von Benutzern die Eingabe von Anmeldeinformationen zu verlangen, bevor sie auf gemeinsam genutzte Ressourcen zugreifen können. Durch die Verwendung von IAM Identitäten können Sie eine Form der IAM Multi-Faktor-Authentifizierung (MFA) implementieren, um eine starke Identitätsbasis zu unterstützen. Eine IAM bewährte Methode besteht darin, Rollen für die Zugriffsverwaltung zu erstellen, anstatt jedem einzelnen Benutzer Berechtigungen zu erteilen. Sie weisen einzelnen Benutzern die entsprechende Rolle zu. Weitere Informationen finden Sie unter Bewährte Sicherheitsmethoden unter IAM.
Andere AWS Kontoinhaber und ihre IAM Identitäten (kontoübergreifender Zugriff)
Der AWS-Konto Inhaber kann auch anderen AWS Kontoinhabern oder IAM Identitäten, die zu einem anderen AWS Konto gehören, Zugriff auf Ressourcen gewähren.
Anmerkung
Delegierung von Berechtigungen — Wenn ein Benutzer AWS-Konto Eigentümer einer Ressource ist, kann er diese Berechtigungen einem anderen AWS-Konto gewähren. Dieses Konto kann dann diese Berechtigungen oder einen Teil davon an Benutzer desselben Kontos delegieren. Dies wird auch als Berechtigungsdelegation bezeichnet. Ein Konto, das Berechtigungen von einem anderen Konto erhält, kann diese Berechtigungen jedoch nicht „kontoübergreifend“ an ein anderes delegieren. AWS-Konto
Anonyme Benutzer (öffentlicher Zugriff)
Der AWS-Konto Besitzer kann Ressourcen öffentlich machen. Wenn eine Ressource veröffentlicht wird, wird die Ressource technisch gesehen mit dem anonymen Benutzer geteilt. Buckets, die seit April 2023 erstellt wurden, blockieren standardmäßig den gesamten öffentlichen Zugriff, sofern Sie diese Einstellung nicht ändern. Wir empfehlen, dass Sie Ihre Buckets so einrichten, dass sie den öffentlichen Zugriff blockieren, und dass Sie nur authentifizierten Benutzern Zugriff gewähren. Weitere Informationen zum Blockieren des öffentlichen Zugriffs finden Sie unter Blockieren des öffentlichen Zugriffs auf Ihren Amazon-S3-Speicher.
AWS -Services
Der Ressourcenbesitzer kann einem anderen AWS Service Zugriff auf eine Amazon S3 S3-Ressource gewähren. Sie können dem AWS CloudTrail Service beispielsweise die s3:PutObject
Erlaubnis erteilen, Protokolldateien in Ihren Bucket zu schreiben. Weitere Informationen finden Sie unter Zugriff auf einen AWS Dienst bereitstellen.
Identitäten im Unternehmensverzeichnis
Der Ressourcenbesitzer kann Benutzern oder Rollen aus Ihrem Unternehmensverzeichnis mithilfe von S3 Access Grants Zugriff auf eine S3-Ressource gewähren. Weitere Informationen zum Hinzufügen Ihres Unternehmensverzeichnisses finden Sie AWS IAM Identity Center unter Was ist IAM Identity Center? .
Besitzer von Buckets oder Ressourcen
Derjenige AWS-Konto , den Sie verwenden, um Buckets zu erstellen und Objekte hochzuladen, besitzt diese Ressourcen. Ein Bucket-Besitzer kann einem anderen Benutzer AWS-Konto (oder Benutzern in einem anderen Konto) kontoübergreifende Berechtigungen zum Hochladen von Objekten gewähren.
Wenn ein Bucket-Besitzer einem anderen Konto erlaubt, Objekte in einen Bucket hochzuladen, besitzt standardmäßig der Bucket-Besitzer alle Objekte, die in seinen Bucket hochgeladen wurden. Wenn jedoch sowohl die Einstellungen für den Bucket Owner erzwungen als auch den AWS-Konto Bucket Preferred Owner deaktiviert sind, besitzt derjenige, der die Objekte hochlädt, diese Objekte, und der Bucket-Besitzer hat keine Berechtigungen für die Objekte, die einem anderen Konto gehören, mit den folgenden Ausnahmen:
-
Der Bucket-Eigentümer zahlt die Rechnungen. Ein Bucket-Eigentümer kann explizit den Zugriff auf Objekte verweigern oder Objekte im Bucket löschen, unabhängig davon, wem sie gehören.
-
Der Bucket-Besitzer kann beliebige Objekte archivieren oder archivierte Objekte wiederherstellen, unabhängig davon, wem sie gehören. Die Archivierung bezieht sich auf die Speicherklasse, die beim Speichern der Objekte verwendet wurde. Weitere Informationen finden Sie unter Verwalten Ihres Speicher-Lebenszyklus.
Tools zur Zugriffsverwaltung
Amazon S3 enthält eine Vielzahl von Sicherheitsfunktionen und -tools. Im Folgenden finden Sie eine umfassende Liste dieser Funktionen und Tools. Sie benötigen nicht alle diese Tools zur Zugriffsverwaltung, aber Sie müssen eines oder mehrere verwenden, um Zugriff auf Ihre Amazon S3 S3-Ressourcen zu gewähren. Durch die richtige Anwendung dieser Tools kann sichergestellt werden, dass Ihre Ressourcen nur den vorgesehenen Benutzern zugänglich sind.
Das am häufigsten verwendete Zugriffsverwaltungstool ist eine Zugriffsrichtlinie. Eine Zugriffsrichtlinie kann eine ressourcenbasierte Richtlinie sein, die an eine AWS Ressource angehängt ist, z. B. eine Bucket-Richtlinie für einen Bucket. Eine Zugriffsrichtlinie kann auch eine identitätsbasierte Richtlinie sein, die mit einer AWS Identity and Access Management (IAM) Identität verknüpft ist, z. B. einem IAM Benutzer, einer Gruppe oder einer Rolle. Schreiben Sie eine Zugriffsrichtlinie, um IAM Benutzern, Gruppen AWS-Konten und Rollen die Erlaubnis zu erteilen, Operationen an einer Ressource auszuführen. Sie können beispielsweise einem anderen Konto die PUT Object
Erlaubnis erteilen, AWS-Konto sodass das andere Konto Objekte in Ihren Bucket hochladen kann.
Eine Zugriffsrichtlinie beschreibt, wer Zugriff auf welche Dinge hat. Wenn Amazon S3 eine Anfrage erhält, muss es alle Zugriffsrichtlinien auswerten, um zu entscheiden, ob die Anfrage autorisiert oder abgelehnt werden soll. Weitere Informationen dazu, wie Amazon S3 diese Richtlinien auswertet, finden Sie unter Wie Amazon S3 eine Anforderung autorisiert.
Im Folgenden sind die in Amazon S3 verfügbaren Zugriffsverwaltungstools aufgeführt.
Eine Amazon S3 S3-Bucket-Richtlinie ist eine JSON -formatierte AWS Identity and Access Management (IAM) ressourcenbasierte Richtlinie, die an einen bestimmten Bucket angehängt ist. Verwenden Sie Bucket-Richtlinien, um anderen Benutzern AWS-Konten oder IAM Identitäten Berechtigungen für den Bucket und die darin enthaltenen Objekte zu gewähren. Viele Anwendungsfälle für die S3-Zugriffsverwaltung können durch die Verwendung einer Bucket-Richtlinie erfüllt werden. Mit Bucket-Richtlinien können Sie den Bucket-Zugriff personalisieren, um sicherzustellen, dass nur die von Ihnen genehmigten Identitäten auf Ressourcen zugreifen und darin Aktionen ausführen können. Weitere Informationen finden Sie unter Bucket-Richtlinien für Amazon S3.
Hier finden Sie ein Beispiel für eine Bucket-Richtlinie. Sie drücken die Bucket-Richtlinie mithilfe einer JSON Datei aus. Diese Beispielrichtlinie gewährt einer IAM Rolle Leseberechtigung für alle Objekte im Bucket. Sie enthält eine Anweisung mit dem NamenBucketLevelReadPermissions
, die die s3:GetObject
Aktion (Leseberechtigung) für Objekte in einem Bucket mit dem Namen ermöglichtamzn-s3-demo-bucket1
. Durch die Principal
Angabe einer IAM Rolle als „gewährt diese Richtlinie jedem IAM Benutzer mit dieser Rolle Zugriff. Wenn Sie diese Beispielrichtlinie verwenden möchten, ersetzen Sie
durch Ihre eigenen Informationen. user
input placeholders
{ "Version":"2012-10-17", "Statement": [ { "Sid":"
BucketLevelReadPermissions
", "Effect":"Allow", "Principal": { "AWS": "arn:aws:iam::123456789101
:role/s3-role
" }, "Action":["s3:GetObject"], "Resource":["arn:aws:s3:::amzn-s3-demo-bucket1/*
"] }] }
Anmerkung
Vermeiden Sie beim Erstellen von Richtlinien die Verwendung von Platzhalterzeichen (*
) im Principal
-Element, da ein Platzhalterzeichen allen Benutzer den Zugriff auf Ihre Amazon-S3-Ressourcen ermöglicht. Führen Sie stattdessen explizit Benutzer oder Gruppen auf, die auf den Bucket zugreifen dürfen, oder führen Sie mithilfe einer Bedingungsklausel in der Richtlinie Bedingungen auf, die erfüllt werden müssen. Erteilen Sie Ihren Benutzern oder Gruppen außerdem gegebenenfalls spezifische Berechtigungen, anstatt Platzhalterzeichen für die Aktionen zu verwenden.
Eine identitätsbasierte Richtlinie oder IAM Benutzerrichtlinie ist eine Art von Richtlinie AWS Identity and Access Management () IAM. Eine identitätsbasierte Richtlinie ist eine JSON -formatierte Richtlinie, die IAM Benutzern, Gruppen oder Rollen in Ihrem Konto zugeordnet ist. AWS Sie können identitätsbasierte Richtlinien verwenden, um einer IAM Identität Zugriff auf Ihre Buckets oder Objekte zu gewähren. Sie können IAM Benutzer, Gruppen und Rollen in Ihrem Konto erstellen und ihnen Zugriffsrichtlinien zuordnen. Sie können dann Zugriff auf AWS Ressourcen gewähren, einschließlich Amazon S3 S3-Ressourcen. Weitere Informationen finden Sie unter Identitätsbasierte Richtlinien für Amazon S3.
Im Folgenden finden Sie ein Beispiel für eine identitätsbasierte Richtlinie. Die Beispielrichtlinie ermöglicht es der zugehörigen IAM Rolle, sechs verschiedene Amazon S3 S3-Aktionen (Berechtigungen) für einen Bucket und die darin enthaltenen Objekte auszuführen. Wenn Sie diese Richtlinie einer IAM Rolle in Ihrem Konto zuordnen und die Rolle einigen Ihrer IAM Benutzer zuweisen, können die Benutzer mit dieser Rolle diese Aktionen mit den in Ihrer Richtlinie angegebenen Ressourcen (Buckets) ausführen. Wenn Sie diese Beispielrichtlinie verwenden möchten, ersetzen Sie
durch Ihre eigenen Informationen.user input placeholders
{ "Version": "2012-10-17", "Statement": [ { "Sid": "
AssignARoleActions
", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:ListBucket", "s3:DeleteObject", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket1/*
", "arn:aws:s3:::amzn-s3-demo-bucket1
" ] }, { "Sid": "AssignARoleActions2
", "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "*" } ] }
Verwenden Sie S3 Access Grants, um Zugriffsberechtigungen für Ihre Amazon S3 S3-Daten für beide Identitäten in Unternehmensidentitätsverzeichnissen wieActive Directory, und für AWS Identity and Access Management (IAM) Identitäten zu erstellen. S3 Access Grants hilft Ihnen dabei, Datenberechtigungen in großem Umfang zu verwalten. Darüber hinaus protokolliert S3 Access Grants die Identität des Endbenutzers und die Anwendung, die für den Zugriff auf die S3-Daten verwendet wurde. AWS CloudTrail Dies bietet einen detaillierten Auditverlauf bis hin zur Endbenutzeridentität für den gesamten Zugriff auf die Daten in Ihren S3-Buckets. Weitere Informationen finden Sie unter Verwalten des Zugriffs mit S3-Zugriffsberechtigungen.
Amazon S3 Access Points vereinfacht die Verwaltung des Datenzugriffs in großem Umfang für Anwendungen, die gemeinsam genutzte Datensätze auf S3 verwenden. Access Points werden als Netzwerkendpunkte bezeichnet, die an einen Bucket angeschlossen sind. Sie können Access Points verwenden, um S3-Objektoperationen in großem Umfang durchzuführen, wie z. B. das Hochladen und Abrufen von Objekten. An einen Bucket können bis zu 10.000 Access Points angeschlossen sein, und für jeden Access Point können Sie eigene Berechtigungen und Netzwerkkontrollen durchsetzen, um den Zugriff auf Ihre S3-Objekte detailliert zu kontrollieren. S3 Access Points können Buckets im selben Konto oder in einem anderen vertrauenswürdigen Konto zugeordnet werden. Bei Access Point-Richtlinien handelt es sich um ressourcenbasierte Richtlinien, die in Verbindung mit der zugrunde liegenden Bucket-Richtlinie bewertet werden. Weitere Informationen finden Sie unter Verwalten des Datenzugriffs mit Amazon S3-Zugangspunkten.
An ACL ist eine Liste von Zuschüssen, in der der Empfänger und die erteilte Genehmigung identifiziert werden. ACLsanderen AWS-Konten Personen grundlegende Lese- oder Schreibberechtigungen gewähren. ACLsverwenden Sie ein Amazon S3 S3-spezifisches SchemaXML. An ACL ist eine Art von Richtlinie AWS Identity and Access Management () IAM. Ein Objekt ACL wird verwendet, um den Zugriff auf ein Objekt zu verwalten, und ein Bucket ACL wird verwendet, um den Zugriff auf einen Bucket zu verwalten. Bei Bucket-Richtlinien gibt es eine einzige Richtlinie für den gesamten Bucket, aber Objekte ACLs werden für jedes Objekt angegeben. Es wird empfohlen, die Option ACLs ausgeschaltet zu lassen, außer in Ausnahmefällen, in denen Sie den Zugriff für jedes Objekt einzeln steuern müssen. Weitere Informationen zur Verwendung finden ACLs Sie unterKontrolle des Besitzes von Objekten und Deaktivierung ACLs für Ihren Bucket.
Warnung
Die meisten modernen Anwendungsfälle in Amazon S3 erfordern nicht die Verwendung vonACLs.
Im Folgenden finden Sie ein Beispiel für einen BucketACL. Der Grant im ACL zeigt einen Bucket-Besitzer, der über Vollzugriff verfügt.
<?xml version="1.0" encoding="UTF-8"?> <AccessControlPolicy xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <Owner> <ID>
Owner-Canonical-User-ID
</ID> <DisplayName>owner-display-name
</DisplayName> </Owner> <AccessControlList> <Grant> <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Canonical User"> <ID>Owner-Canonical-User-ID
</ID> <DisplayName>display-name
</DisplayName> </Grantee> <Permission>FULL_CONTROL</Permission> </Grant> </AccessControlList> </AccessControlPolicy>
Um den Zugriff auf Ihre Objekte zu verwalten, müssen Sie der Eigentümer des Objekts sein. Sie können die Einstellung „Objekteigentum“ auf Bucketebene verwenden, um den Besitz von Objekten zu kontrollieren, die in Ihren Bucket hochgeladen wurden. Verwenden Sie auch „Objekteigentum“, um die Option zu aktivieren. ACLs Standardmäßig ist für Object Ownership die Einstellung Bucket Owner erforced festgelegt und alle Optionen ACLs sind deaktiviert. Wenn ACLs diese Option deaktiviert ist, besitzt der Bucket-Besitzer alle Objekte im Bucket und verwaltet ausschließlich den Zugriff auf Daten. Um den Zugriff zu verwalten, verwendet der Bucket-Besitzer Richtlinien oder ein anderes Zugriffsverwaltungstool, ausgenommenACLs. Weitere Informationen finden Sie unter Kontrolle des Besitzes von Objekten und Deaktivierung ACLs für Ihren Bucket.
Object Ownership verfügt über drei Einstellungen, mit denen Sie sowohl den Besitz von Objekten kontrollieren können, die in Ihren Bucket hochgeladen werden, als auch um sie zu aktivierenACLs:
ACLsausgeschaltet
-
Bucket-Besitzer erzwungen (Standard) — ACLs sind ausgeschaltet, und der Bucket-Besitzer besitzt automatisch jedes Objekt im Bucket und hat die volle Kontrolle darüber. ACLswirken sich nicht auf die Berechtigungen für Daten im S3-Bucket aus. Der Bucket verwendet ausschließlich Richtlinien, um die Zugriffssteuerung zu definieren.
ACLseingeschaltet
-
Bevorzugter Bucket-Besitzer — Der Bucket-Besitzer besitzt und hat die volle Kontrolle über neue Objekte, die andere Accounts in den Bucket mit den gespeicherten Objekten
bucket-owner-full-control
schreibenACL. -
Objekt-Writer — AWS-Konto Derjenige, der ein Objekt hochlädt, besitzt das Objekt, hat die volle Kontrolle darüber und kann anderen Benutzern Zugriff darauf gewähren. ACLs
Weitere bewährte Methoden
Erwägen Sie die Verwendung der folgenden Bucket-Einstellungen und Tools, um Daten während der Übertragung und Speicherung zu schützen. Beide sind entscheidend für die Aufrechterhaltung der Integrität und Zugänglichkeit Ihrer Daten:
Öffentlichen Zugriff blockieren — Deaktivieren Sie nicht die Standardeinstellung „Öffentlichen Zugriff blockieren“ auf Bucket-Ebene. Diese Einstellung blockiert standardmäßig den öffentlichen Zugriff auf Ihre Daten. Weitere Informationen zum Blockieren des öffentlichen Zugriffs finden Sie unter Blockieren des öffentlichen Zugriffs auf Ihren Amazon-S3-Speicher.
S3-Versionierung — Aus Gründen der Datenintegrität können Sie die S3-Versioning-Bucket-Einstellung implementieren, mit der Ihre Objekte bei Aktualisierungen versioniert werden, anstatt sie zu überschreiben. Sie können S3 Versioning verwenden, um bei Bedarf eine frühere Version beizubehalten, abzurufen und wiederherzustellen. Weitere Informationen über S3 Versioning finden Sie unter Verwenden der Versioning in S3-Buckets.
S3 Object Lock — S3 Object Lock ist eine weitere Einstellung, die Sie implementieren können, um Datenintegrität zu erreichen. Diese Funktion kann ein write-once-read-many (WORM) -Modell implementieren, um Objekte unveränderlich zu speichern. Weitere Informationen über die Objektsperre finden Sie unter Verwenden der S3-Objektsperre.
Objektverschlüsselung — Amazon S3 bietet mehrere Objektverschlüsselungsoptionen, die Daten während der Übertragung und Speicherung schützen. Die serverseitige Verschlüsselung verschlüsselt Ihr Objekt, bevor es auf Festplatten in seinen Rechenzentren gespeichert wird, und entschlüsselt es dann, wenn Sie die Objekte herunterladen. Wenn Sie Ihre Anfrage authentifizieren und über Zugriffsberechtigungen verfügen, gibt es keinen Unterschied in der Art und Weise, wie Sie auf verschlüsselte oder unverschlüsselte Objekte zugreifen. Weitere Informationen finden Sie unter Schützen von Daten mit serverseitiger Verschlüsselung. S3 verschlüsselt neu hochgeladene Objekte standardmäßig. Weitere Informationen finden Sie unter Einstellen des Verhaltens der serverseitigen Verschlüsselung für Amazon S3-Buckets. Client-seitige Verschlüsselung ist der Vorgang, bei dem Daten verschlüsselt werden, bevor sie an Amazon S3 gesendet werden. Weitere Informationen finden Sie unter Schützen von Daten mithilfe der clientseitigen Verschlüsselung.
Signaturmethoden — Bei Signature Version 4 werden Authentifizierungsinformationen zu AWS Anfragen hinzugefügt, die von HTTP gesendet wurden. Aus Sicherheitsgründen AWS müssen die meisten Anfragen mit einem Zugriffsschlüssel signiert werden, der aus einer Zugriffsschlüssel-ID und einem geheimen Zugriffsschlüssel besteht. Diese beiden Schlüssel werden in der Regel als Sicherheitsanmeldeinformationen bezeichnet. Weitere Informationen finden Sie unter Authenticating Requests (Authentifizierung von Anforderungen) (AWS Signature Version 4) und Signature Version 4 signing process (Signaturprozess).
Aktionen
Eine vollständige Liste der S3-Berechtigungen und Bedingungsschlüssel finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für Amazon S3 in der Service Authorization Reference.
Aktionen
Die AWS Identity and Access Management (IAM) -Aktionen für Amazon S3 sind die möglichen Aktionen, die für einen S3-Bucket oder ein S3-Objekt ausgeführt werden können. Sie weisen diese Aktionen Identitäten zu, damit sie auf Ihre S3-Ressourcen einwirken können. Beispiele für S3-Aktionen sind s3:GetObject
das Lesen von Objekten in einem Bucket und s3:PutObject
das Schreiben von Objekten in einen Bucket.
Bedingungsschlüssel
Zusätzlich zu Aktionen sind IAM Bedingungsschlüssel darauf beschränkt, Zugriff nur dann zu gewähren, wenn eine Bedingung erfüllt ist. Bedingungsschlüssel sind optional.
Anmerkung
In einer ressourcenbasierten Zugriffsrichtlinie, z. B. einer Bucket-Richtlinie, oder in einer identitätsbasierten Richtlinie können Sie Folgendes angeben:
Eine Aktion oder eine Reihe von Aktionen im
Action
Element der Grundsatzerklärung.Im
Effect
Element der Grundsatzerklärung können Sie angeben, ob die aufgeführten Aktionen gewährt werdenAllow
sollen, oder Sie können angeben,Deny
dass die aufgelisteten Aktionen blockiert werden sollen. Um die Praxis der geringsten Rechte weiter aufrechtzuerhalten, sollten dieDeny
Aussagen imEffect
Element der Zugangsrichtlinie so weit wie möglich und dieAllow
Aussagen so eng wie möglich sein.Deny
Die mit ders3:*
Maßnahme verbundenen Effekte sind eine weitere gute Möglichkeit, bewährte Verfahren für die Zustimmung zu den Identitäten umzusetzen, die in den Erklärungen zu den politischen Bedingungen enthalten sind.Ein Bedingungsschlüssel im
Condition
Element einer Grundsatzerklärung.
Anwendungsfälle für die Zugriffsverwaltung
Amazon S3 bietet Ressourcenbesitzern eine Vielzahl von Tools, mit denen sie Zugriff gewähren können. Welches S3-Zugriffsverwaltungstool Sie verwenden, hängt von den S3-Ressourcen ab, die Sie gemeinsam nutzen möchten, von den Identitäten, denen Sie Zugriff gewähren, und von den Aktionen, die Sie zulassen oder verweigern möchten. Möglicherweise möchten Sie eines oder eine Kombination von S3-Zugriffsverwaltungstools verwenden, um den Zugriff auf Ihre S3-Ressourcen zu verwalten.
In den meisten Fällen können Sie eine Zugriffsrichtlinie verwenden, um Berechtigungen zu verwalten. Eine Zugriffsrichtlinie kann eine ressourcenbasierte Richtlinie sein, die an eine Ressource, z. B. einen Bucket, oder eine andere Amazon S3 S3-Ressource () S3-Ressourcen angehängt ist. Eine Zugriffsrichtlinie kann auch eine identitätsbasierte Richtlinie sein, die einem AWS Identity and Access Management (IAM) Benutzer, einer Gruppe oder einer Rolle in Ihrem Konto zugeordnet ist. Möglicherweise stellen Sie fest, dass eine Bucket-Richtlinie für Ihren Anwendungsfall besser geeignet ist. Weitere Informationen finden Sie unter Bucket-Richtlinien für Amazon S3. Alternativ können Sie mit AWS Identity and Access Management (IAM) IAM Benutzer, Gruppen und Rollen innerhalb Ihres eigenen erstellen und deren Zugriff auf Buckets AWS-Konto und Objekte mithilfe identitätsbasierter Richtlinien verwalten. Weitere Informationen finden Sie unter Identitätsbasierte Richtlinien für Amazon S3.
Um Ihnen den Umgang mit diesen Zugriffsverwaltungsoptionen zu erleichtern, finden Sie im Folgenden allgemeine Anwendungsfälle und Empfehlungen für die einzelnen S3-Zugriffsverwaltungstools von Amazon S3 S3-Kunden.
Alle Tools zur Zugriffsverwaltung können diesen grundlegenden Anwendungsfall erfüllen. Für diesen Anwendungsfall empfehlen wir die folgenden Tools zur Zugriffsverwaltung:
Bucket-Richtlinie — Wenn Sie Zugriff auf einen Bucket oder eine kleine Anzahl von Buckets gewähren möchten oder wenn Ihre Bucket-Zugriffsberechtigungen von Bucket zu Bucket ähnlich sind, verwenden Sie eine Bucket-Richtlinie. Mit Bucket-Richtlinien verwalten Sie eine Richtlinie für jeden Bucket. Weitere Informationen finden Sie unter Bucket-Richtlinien für Amazon S3.
Identitätsbasierte Richtlinie — Wenn Sie eine sehr große Anzahl von Buckets mit unterschiedlichen Zugriffsberechtigungen für jeden Bucket haben und nur wenige Benutzerrollen verwalten müssen, können Sie eine IAM Richtlinie für Benutzer, Gruppen oder Rollen verwenden. IAMRichtlinien sind auch eine gute Option, wenn Sie den Benutzerzugriff auf andere AWS Ressourcen sowie auf Amazon S3 S3-Ressourcen verwalten. Weitere Informationen finden Sie unter Beispiel 1: Bucket-Eigentümer erteilt seinen Benutzern Bucket-Berechtigungen.
S3 Access Grants — Sie können S3 Access Grants verwenden, um Zugriff auf Ihre S3-Buckets, -Präfixe oder Objekte zu gewähren. Mit S3 Access Grants können Sie unterschiedliche Berechtigungen auf Objektebene nach Bedarf festlegen. Bucket-Richtlinien sind dagegen auf eine Größe von 20 KB begrenzt. Weitere Informationen finden Sie unter Erste Schritte mit S3 Access Grants.
Access Points — Sie können Access Points verwenden, bei denen es sich um so genannte Netzwerkendpunkte handelt, die an einen Bucket angeschlossen sind. An einen Bucket können bis zu 10.000 Access Points angeschlossen sein, und für jeden Access Point können Sie eigene Berechtigungen und Netzwerkkontrollen durchsetzen, um Ihnen eine detaillierte Kontrolle über den Zugriff auf Ihre S3-Objekte zu geben. Weitere Informationen finden Sie unter Verwalten des Datenzugriffs mit Amazon S3-Zugangspunkten.
Um einem anderen Benutzer die Erlaubnis zu erteilen AWS-Konto, müssen Sie eine Bucket-Richtlinie oder eines der folgenden empfohlenen Zugriffsverwaltungstools verwenden. Für diesen Anwendungsfall können Sie keine identitätsbasierte Zugriffsrichtlinie verwenden. Weitere Informationen zur Gewährung von kontenübergreifendem Zugriff finden Sie unter Wie stelle ich kontenübergreifenden Zugriff auf Objekte bereit, die sich in Amazon S3 S3-Buckets befinden
Für diesen Anwendungsfall empfehlen wir die folgenden Tools zur Zugriffsverwaltung:
Bucket-Richtlinie — Mit Bucket-Richtlinien verwalten Sie eine Richtlinie für jeden Bucket. Weitere Informationen finden Sie unter Bucket-Richtlinien für Amazon S3.
S3 Access Grants — Sie können S3 Access Grants verwenden, um kontoübergreifende Berechtigungen für Ihre S3-Buckets, -Präfixe oder Objekte zu gewähren. Sie können S3 Access Grants verwenden, um unterschiedliche Berechtigungen auf Objektebene nach Bedarf festzulegen. Bucket-Richtlinien sind dagegen auf eine Größe von 20 KB begrenzt. Weitere Informationen finden Sie unter Erste Schritte mit S3 Access Grants.
Access Points — Sie können Access Points verwenden, bei denen es sich um so genannte Netzwerkendpunkte handelt, die an einen Bucket angeschlossen sind. An einen Bucket können bis zu 10.000 Access Points angeschlossen sein, und für jeden Access Point können Sie eigene Berechtigungen und Netzwerkkontrollen durchsetzen, um Ihnen eine detaillierte Kontrolle über den Zugriff auf Ihre S3-Objekte zu geben. Weitere Informationen finden Sie unter Verwalten des Datenzugriffs mit Amazon S3-Zugangspunkten.
In einer Bucket-Richtlinie können Sie beispielsweise Zugriff auf die Objekte innerhalb eines Buckets gewähren, die ein bestimmtes Schlüsselnamenpräfix oder ein bestimmtes Tag haben. Sie können Leseberechtigungen für Objekte gewähren, die mit dem Schlüsselnamenpräfix beginnenlogs/
. Wenn Ihre Zugriffsberechtigungen jedoch je nach Objekt variieren, ist es möglicherweise nicht praktikabel, einzelnen Objekten mithilfe einer Bucket-Richtlinie Berechtigungen zu gewähren, zumal Bucket-Richtlinien auf eine Größe von 20 KB begrenzt sind.
Für diesen Anwendungsfall empfehlen wir die folgenden Tools zur Zugriffsverwaltung:
S3 Access Grants — Sie können S3 Access Grants verwenden, um Berechtigungen auf Objekt- oder Präfix-Ebene zu verwalten. Im Gegensatz zu Bucket-Richtlinien können Sie S3 Access Grants verwenden, um unterschiedliche Berechtigungen auf Objektebene nach Bedarf festzulegen. Bucket-Richtlinien sind auf eine Größe von 20 KB beschränkt. Weitere Informationen finden Sie unter Erste Schritte mit S3 Access Grants.
Access Points — Sie können Access Points verwenden, um Berechtigungen auf Objekt- oder Präfix-Ebene zu verwalten. Access Points werden als Netzwerkendpunkte bezeichnet, die an einen Bucket angeschlossen sind. An einen Bucket können bis zu 10.000 Access Points angeschlossen sein, und für jeden Access Point können Sie eigene Berechtigungen und Netzwerkkontrollen durchsetzen, um eine detaillierte Kontrolle über den Zugriff auf Ihre S3-Objekte zu erhalten. Weitere Informationen finden Sie unter Verwalten des Datenzugriffs mit Amazon S3-Zugangspunkten.
ACLs— Wir raten davon ab, Zugriffskontrolllisten (ACLs) zu verwenden, vor allem, weil sie auf 100 Grants pro Objekt begrenzt ACLs sind. Wenn Sie sich jedoch dafür entscheiden, diese Option zu aktivierenACLs, setzen Sie in Ihren Bucket-Einstellungen die Option Objekteigentum auf „Bevorzugter und ACLs aktivierter Bucket Owner“. Mit dieser Einstellung gehören neue Objekte, die mit dem gespeicherten Objekt
bucket-owner-full-control
geschrieben ACL werden, automatisch dem Bucket-Besitzer und nicht dem Objektschreiber. Sie können dann Objekt verwendenACLs, bei dem es sich um eine Zugriffsrichtlinie im XML -Format handelt, um anderen Benutzern Zugriff auf das Objekt zu gewähren. Weitere Informationen finden Sie unter Übersicht über die Zugriffskontrollliste (ACL).
Für diesen Anwendungsfall empfehlen wir die folgenden Tools zur Zugriffsverwaltung:
Bucket-Richtlinie — Mit Bucket-Richtlinien verwalten Sie eine Richtlinie für jeden Bucket. Weitere Informationen finden Sie unter Bucket-Richtlinien für Amazon S3.
Access Points — Access Points werden als Netzwerkendpunkte bezeichnet, die an einen Bucket angeschlossen sind. An einen Bucket können bis zu 10.000 Access Points angeschlossen sein, und für jeden Access Point können Sie eigene Berechtigungen und Netzwerkkontrollen durchsetzen, um eine detaillierte Kontrolle über den Zugriff auf Ihre S3-Objekte zu erhalten. Weitere Informationen finden Sie unter Verwalten des Datenzugriffs mit Amazon S3-Zugangspunkten.
Für diesen Anwendungsfall empfehlen wir das folgende Zugriffsverwaltungstool:
Access Points — Access Points werden als Netzwerkendpunkte bezeichnet, die an einen Bucket angeschlossen sind. An einen Bucket können bis zu 10.000 Access Points angeschlossen sein, und für jeden Access Point können Sie eigene Berechtigungen und Netzwerkkontrollen durchsetzen, um eine detaillierte Kontrolle über den Zugriff auf Ihre S3-Objekte zu erhalten. Jeder Zugriffspunkt erzwingt eine benutzerdefinierte Zugriffspunktrichtlinie, die in Verbindung mit der Bucket-Richtlinie funktioniert, die dem zugrunde liegenden Bucket zugeordnet ist. Weitere Informationen finden Sie unter Verwalten des Datenzugriffs mit Amazon S3-Zugangspunkten.
Virtual Private Cloud (VPC) -Endpunkte für Amazon S3 sind logische Entitäten innerhalb einerVPC, die nur Konnektivität zu S3 ermöglichen. Für diesen Anwendungsfall empfehlen wir die folgenden Tools zur Zugriffsverwaltung:
Buckets in einer VPC Einstellung — Sie können eine Bucket-Richtlinie verwenden, um zu kontrollieren, wer auf Ihre Buckets zugreifen darf und auf welche VPC Endpunkte sie zugreifen können. Weitere Informationen finden Sie unter Steuern des Zugriffs von VPC Endpunkten aus mit Bucket-Richtlinien.
Access Points — Wenn Sie Access Points einrichten möchten, können Sie eine Zugriffspunkt-Richtlinie verwenden. Sie können jeden Access Point so konfigurieren, dass er nur Anfragen von einer virtuellen privaten Cloud (VPC) akzeptiert, um den Amazon S3 S3-Datenzugriff auf ein privates Netzwerk einzuschränken. Sie können auch benutzerdefinierte Block Public Access-Einstellungen für jeden Zugriffspunkt konfigurieren. Weitere Informationen finden Sie unter Verwalten des Datenzugriffs mit Amazon S3-Zugangspunkten.
Mit S3 können Sie eine statische Website hosten und jedem ermöglichen, den Inhalt der Website anzusehen, die von einem S3-Bucket aus gehostet wird.
Für diesen Anwendungsfall empfehlen wir die folgenden Tools zur Zugriffsverwaltung:
Amazon CloudFront — Mit dieser Lösung können Sie eine statische Amazon S3 S3-Website für die Öffentlichkeit hosten und gleichzeitig den gesamten öffentlichen Zugriff auf den Inhalt eines Buckets blockieren. Wenn Sie alle vier S3 Block Public Access-Einstellungen aktiviert lassen und eine statische S3-Website hosten möchten, können Sie Amazon CloudFront Origin Access Control (OAC) verwenden. Amazon CloudFront bietet die Funktionen, die für die Einrichtung einer sicheren statischen Website erforderlich sind. Außerdem können statische Amazon S3 S3-Websites, die diese Lösung nicht verwenden, nur HTTP Endgeräte unterstützen. CloudFront verwendet den dauerhaften Speicher von Amazon S3 und bietet gleichzeitig zusätzliche Sicherheitsheader, wie HTTPS z. HTTPSerhöht die Sicherheit, indem es eine normale HTTP Anfrage verschlüsselt und vor häufigen Cyberangriffen schützt.
Weitere Informationen finden Sie unter Erste Schritte mit einer sicheren statischen Website im Amazon CloudFront Developer Guide.
Ihren Amazon S3 S3-Bucket öffentlich zugänglich machen — Sie können einen Bucket so konfigurieren, dass er als öffentlich zugängliche statische Website verwendet wird.
Warnung
Wir empfehlen diese Methode nicht. Stattdessen empfehlen wir Ihnen, statische Amazon S3 S3-Websites als Teil von Amazon zu verwenden CloudFront. Weitere Informationen finden Sie in der vorherigen Option oder unter Erste Schritte mit einer sicheren statischen Website.
Um eine statische Amazon S3 S3-Website ohne Amazon CloudFront zu erstellen, müssen Sie zunächst alle Block Public Access-Einstellungen deaktivieren. Wenn Sie die Bucket-Richtlinie für Ihre statische Website schreiben, achten Sie darauf, nur
s3:GetObject
-Aktionen und keineListObject
- oderPutObject
-Berechtigungen zuzulassen. Dadurch wird sichergestellt, dass Benutzer nicht alle Objekte in Ihrem Bucket anzeigen oder eigene Inhalte hinzufügen können. Weitere Informationen finden Sie unter Festlegen von Berechtigungen für den Website-Zugriff.
Wenn Sie einen neuen Amazon S3 S3-Bucket erstellen, ist die Einstellung Block Public Access standardmäßig aktiviert. Weitere Informationen zum Blockieren des öffentlichen Zugriffs finden Sie unter Blockieren des öffentlichen Zugriffs auf Ihren Amazon-S3-Speicher.
Wir empfehlen nicht, öffentlichen Zugriff auf Ihren Bucket zu gewähren. Wenn Sie dies jedoch für einen bestimmten Anwendungsfall tun müssen, empfehlen wir das folgende Zugriffsverwaltungstool für diesen Anwendungsfall:
Einstellung „Öffentlichen Zugriff blockieren“ deaktivieren — Ein Bucket-Besitzer kann nicht authentifizierte Anfragen an den Bucket zulassen. Nicht authentifizierte PUTObjektanforderungen sind beispielsweise zulässig, wenn für einen Bucket eine öffentliche Bucket-Richtlinie gilt oder wenn ein Bucket öffentlichen Zugriff gewährt. ACL Alle nicht authentifizierten Anfragen werden von anderen beliebigen AWS Benutzern oder sogar von nicht authentifizierten, anonymen Benutzern gestellt. Dieser Benutzer wird durch die spezifische ACLs kanonische Benutzer-ID repräsentiert.
65a011a29cdf8ec533ec3d1ccaae921c
Wenn ein Objekt in einWRITE
oder hochgeladen wirdFULL_CONTROL
, gewährt dies ausdrücklich Zugriff auf die Gruppe „Alle Benutzer“ oder den anonymen Benutzer. Weitere Informationen zu öffentlichen Bucket-Richtlinien und öffentlichen Zugriffskontrolllisten (ACLs) finden Sie unterDie Bedeutung von „öffentlich“.
Sowohl für Bucket-Richtlinien als auch für identitätsbasierte Richtlinien gilt eine Größenbeschränkung von 20 KB. Wenn Ihre Anforderungen an Zugriffsberechtigungen komplex sind, überschreiten Sie möglicherweise diese Größenbeschränkung.
Wir haben für diesen Anwendungsfall die folgenden Tools zur Zugriffsverwaltung empfohlen:
Access Points — Verwenden Sie Access Points, wenn dies für Ihren Anwendungsfall funktioniert. Bei Access Points hat jeder Bucket mehrere benannte Netzwerkendpunkte, von denen jeder seine eigene Zugriffspunktrichtlinie hat, die mit der zugrunde liegenden Bucket-Richtlinie funktioniert. Access Points können jedoch nur auf Objekte, nicht auf Buckets, einwirken und unterstützen keine regionsübergreifende Replikation. Weitere Informationen finden Sie unter Verwalten des Datenzugriffs mit Amazon S3-Zugangspunkten.
S3 Access Grants — Verwenden Sie S3 Access Grants, das eine sehr große Anzahl von Zugriffen unterstützt, die Zugriff auf Buckets, Präfixe oder Objekte gewähren. Weitere Informationen finden Sie unter Erste Schritte mit S3 Access Grants.
Anstatt Benutzer, Gruppen und Rollen über AWS Identity and Access Management (IAM) zu verwalten, können Sie Ihr Unternehmensverzeichnis zu hinzufügen AWS IAM Identity Center. Weitere Informationen finden Sie unter Was ist IAM Identity Center? .
Nachdem Sie Ihr Unternehmensverzeichnis hinzugefügt haben, empfehlen wir Ihnen AWS IAM Identity Center, das folgende Zugriffsverwaltungstool zu verwenden, um den Identitäten des Unternehmensverzeichnisses Zugriff auf Ihre S3-Ressourcen zu gewähren:
S3 Access Grants — Verwenden Sie S3 Access Grants, das die Gewährung von Zugriff für Benutzer oder Rollen in Ihrem Unternehmensverzeichnis unterstützt. Weitere Informationen finden Sie unter Erste Schritte mit S3 Access Grants.
Für diesen Anwendungsfall haben wir das folgende Zugriffsverwaltungstool empfohlen:
Bucket ACL — Der einzig empfohlene Anwendungsfall für Bucket ACLs besteht darin AWS -Services, bestimmten Personen Berechtigungen zu gewähren, z. B. dem CloudFront
awslogsdelivery
Amazon-Konto. Wenn Sie eine Distribution erstellen oder aktualisieren und die CloudFront Protokollierung aktivieren, wird der Bucket CloudFront aktualisiert, ACL sodass dasawslogsdelivery
KontoFULL_CONTROL
berechtigt ist, Logs in Ihren Bucket zu schreiben. Weitere Informationen finden Sie unter Erforderliche Berechtigungen für die Konfiguration der Standardprotokollierung und für den Zugriff auf Ihre Protokolldateien im Amazon CloudFront Developer Guide. Wenn der Bucket, in dem die Logs gespeichert werden, die Einstellung Bucket Ownerforced für die Deaktivierung von S3 Object Ownership verwendetACLs, CloudFront können keine Logs in den Bucket geschrieben werden. Weitere Informationen finden Sie unter Kontrolle des Besitzes von Objekten und Deaktivierung ACLs für Ihren Bucket.
Sie können anderen Konten Zugriff gewähren, um Objekte in Ihren Bucket hochzuladen, indem Sie eine Bucket-Richtlinie, einen Access Point oder S3 Access Grants verwenden. Wenn Sie kontoübergreifenden Zugriff auf Ihren Bucket gewährt haben, können Sie sicherstellen, dass Sie weiterhin die volle Kontrolle über alle in Ihren Bucket hochgeladenen Objekte haben.
Für diesen Anwendungsfall haben wir das folgende Zugriffsverwaltungstool empfohlen:
Object Ownership — Behalten Sie für die Einstellung Object Ownership auf Bucket-Ebene die Standardeinstellung Bucket Ownerforced bei.
Fehlerbehebung bei der Zugriffsverwaltung
Die folgenden Ressourcen können Ihnen bei der Behebung von Problemen mit der S3-Zugriffsverwaltung helfen:
Beheben von Fehlern aufgrund einer Zugriffsverweigerung (403 Forbidden)
Wenn Sie auf Probleme mit der Zugriffsverweigerung stoßen, überprüfen Sie die Einstellungen auf Konto- und Bucket-Ebene. Überprüfen Sie außerdem die Zugriffsverwaltungsfunktion, mit der Sie den Zugriff gewähren, um sicherzustellen, dass die Richtlinie, Einstellung oder Konfiguration korrekt ist. Weitere Informationen zu den häufigsten Ursachen für den Fehler „Zugriff verweigert“ (403 Forbidden) in Amazon S3 finden Sie unter Beheben von Fehlern aufgrund einer Zugriffsverweigerung (403 Forbidden) in Amazon S3.
IAMAccess Analyzer für S3
Wenn Sie keine Ihrer Ressourcen öffentlich zugänglich machen oder den öffentlichen Zugriff auf Ihre Ressourcen einschränken möchten, können Sie IAM Access Analyzer für S3 verwenden. Verwenden Sie IAM Access Analyzer for S3 auf der Amazon S3-Konsole, um alle Buckets zu überprüfen, die über Bucket-Zugriffskontrolllisten (ACLs), Bucket-Richtlinien oder Zugriffspunktrichtlinien verfügen, die öffentlichen oder gemeinsamen 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 AWS-Konten, auch AWS-Konten außerhalb Ihrer Organisation, Zugriff gewähren. 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 einer einzigen Aktion blockieren. Wir empfehlen Ihnen, den gesamten öffentlichen Zugriff auf Ihre Buckets zu blockieren, es sei denn, Sie benötigen öffentlichen Zugriff, um einen bestimmten Anwendungsfall zu unterstützen. Bevor Sie den gesamten öffentlichen Zugriff blockieren, stellen Sie sicher, dass Ihre Anwendungen auch ohne öffentlichen Zugriff ordnungsgemäß funktionieren. Weitere Informationen finden Sie unter Blockieren des öffentlichen Zugriffs auf Ihren Amazon-S3-Speicher.
Sie können auch Ihre Berechtigungseinstellungen auf Bucket-Ebene überprüfen, 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. Diese Bucket-Konfigurationen sind jederzeit aufrufbar und änderbar. Sie können Ihre Ergebnisse zu Prüfungszwecken auch als CSV Bericht herunterladen.
IAMAccess Analyzer for S3 ist ohne zusätzliche Kosten auf der Amazon S3 S3-Konsole verfügbar. IAMAccess Analyzer für S3 wird von AWS Identity and Access Management (IAM) IAM Access Analyzer unterstützt. Um IAM Access Analyzer for S3 auf der Amazon S3 S3-Konsole zu verwenden, müssen Sie die IAMKonsole aufrufen
Weitere Informationen zu IAM Access Analyzer for S3 finden Sie unter. Überprüfung des Bucket-Zugriffs mit IAM Access Analyzer für S3
Protokollierung und Überwachung
Die Überwachung ist ein wichtiger Bestandteil der Aufrechterhaltung der Zuverlässigkeit, Verfügbarkeit und Leistung Ihrer Amazon S3 S3-Lösungen, sodass Sie einen Zugriffsfehler einfacher debuggen können. Die Protokollierung kann Aufschluss darüber geben, welche Fehler Benutzer erhalten und wann und welche Anfragen gestellt werden. AWS bietet verschiedene Tools zur Überwachung Ihrer Amazon S3 S3-Ressourcen, wie z. B. die folgenden:
-
AWS CloudTrail
-
Amazon-S3-Zugriffsprotokolle
-
AWS Trusted Advisor
-
Amazon CloudWatch
Weitere Informationen finden Sie unter Protokollierung und Überwachung in Amazon S3.
Themen
- Identity and Access Management für Amazon S3
- Verwalten des Zugriffs mit S3-Zugriffsberechtigungen
- Verwaltung des Zugriffs mit ACLs
- Blockieren des öffentlichen Zugriffs auf Ihren Amazon-S3-Speicher
- Überprüfung des Bucket-Zugriffs mit IAM Access Analyzer für S3
- Überprüfen der Bucket-Eigentümerschaft mit Bucket-Eigentümer-Bedingung
- Kontrolle des Besitzes von Objekten und Deaktivierung ACLs für Ihren Bucket