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.
Kontoübergreifender Zugriff mit S3 Access Grants
Mit S3 Access Grants können Sie Amazon-S3-Datenzugriff auf Folgendes gewähren:
AWS Identity and Access Management (IAM) -Identitäten innerhalb Ihres Kontos
IAM-Identitäten in anderen Konten AWS
Verzeichnisbenutzer oder -gruppen in Ihrer Instanz AWS IAM Identity Center
Konfigurieren Sie zunächst den kontoübergreifenden Zugriff für das andere Konto. Dazu gehört die Gewährung des Zugriffs auf Ihre S3-Access-Grants-Instance mithilfe einer Ressourcenrichtlinie. Erteilen Sie anschließend mithilfe von Gewährungen Zugriff auf Ihre S3-Daten (Buckets, Präfixe oder Objekte).
Nachdem Sie den kontoübergreifenden Zugriff konfiguriert haben, kann das andere Konto temporäre Anmeldeinformationen für Ihre Amazon-S3-Daten von S3 Access Grants anfordern. Die folgende Abbildung zeigt den Benutzerablauf für den kontoübergreifenden S3-Zugriff über S3 Access Grants:

Benutzer oder Anwendungen in einem zweiten Konto (B) fordern Anmeldeinformationen von der S3-Access-Grants-Instance in Ihrem Konto (A) an, in der die Amazon-S3-Daten gespeichert sind. Weitere Informationen finden Sie unter Anfordern des Zugriffs auf Amazon-S3-Daten über S3 Access Grants.
Die S3-Access-Grants-Instance in Ihrem Konto (A) gibt temporäre Anmeldeinformationen zurück, wenn es eine Gewährung gibt, die dem zweiten Konto Zugriff auf Ihre Amazon-S3-Daten gewährt. Weitere Hinweise zu Zugriffsgewährungen finden Sie unter Arbeiten mit Gewährungen in S3 Access Grants.
Benutzer oder Anwendungen im zweiten Konto (B) verwenden die von S3 Access Grants bereitgestellten Anmeldeinformationen, um auf die S3-Daten in Ihrem Konto (A) zuzugreifen.
Konfigurieren des kontoübergreifenden Zugriffs mit S3 Access Grants
Gehen Sie wie folgt vor, um kontoübergreifenden S3-Zugriff über S3 Access Grants zu gewähren:
Schritt 1: Konfigurieren Sie eine S3-Access-Grants-Instance in Ihrem Konto, z. B. mit der Konto-ID
111122223333
, in der die S3-Daten gespeichert sind.Schritt 2: Konfigurieren Sie die Ressourcenrichtlinie für die S3-Access-Grants-Instance in Ihrem Konto
111122223333
, um Zugriff auf das zweite Konto zu gewähren, z. B. mit der Konto-ID444455556666
.Schritt 3: Konfigurieren Sie die IAM-Berechtigungen für den IAM-Prinzipal im zweiten Konto
444455556666
, um Anmeldeinformationen von der S3-Access-Grants-Instance in Ihrem Konto111122223333
anzufordern.Schritt 4: Erstellen Sie eine Gewährung in Ihrem Konto
111122223333
, die dem IAM-Prinzipal im zweiten Konto444455556666
Zugriff auf einige der S3-Daten in Ihrem Konto111122223333
gewährt.
Schritt 1: Konfigurieren Sie eine S3-Access-Grants-Instance in Ihrem Konto
Zunächst müssen Sie eine S3-Access-Grants-Instance in Ihrem Konto 111122223333
haben, um den Zugriff auf Ihre Amazon-S3-Daten zu verwalten. Sie müssen eine S3-Access-Grants-Instance in jeder AWS-Region erstellen, in der die S3-Daten, die Sie teilen möchten, gespeichert sind. Wenn Sie Daten in mehr als einer Person gemeinsam nutzen AWS-Region, wiederholen Sie jeden dieser Konfigurationsschritte für jede AWS-Region. Wenn Sie bereits über eine S3 Access Grants-Instanz in dem Bereich verfügen, in AWS-Region dem Ihre S3-Daten gespeichert sind, fahren Sie mit dem nächsten Schritt fort. Wenn Sie keine S3-Access-Grants-Instance konfiguriert haben, finden Sie weitere Informationen unter Arbeiten mit S3-Access-Grants-Instances, um diesen Schritt abzuschließen.
Schritt 2: Konfigurieren Sie die Ressourcenrichtlinie für Ihre S3-Access-Grants-Instance, um kontoübergreifenden Zugriff zu gewähren
Nachdem Sie eine S3-Access-Grants-Instance in Ihrem Konto 111122223333
für kontoübergreifenden Zugriff erstellt haben, konfigurieren Sie die ressourcenbasierte Richtlinie für die S3-Access-Grants-Instance in Ihrem Konto 111122223333
, um kontoübergreifenden Zugriff zu gewähren. Die S3-Access-Grants-Instance selbst unterstützt ressourcenbasierte Richtlinien. Mit der richtigen ressourcenbasierten Richtlinie können Sie AWS Identity and Access Management (IAM-) Benutzern oder Rollen von anderen Benutzern Zugriff auf Ihre S3 Access AWS-Konten Grants-Instanz gewähren. Kontoübergreifender Zugriff gewährt nur diese Berechtigungen (Aktionen):
-
s3:GetAccessGrantsInstanceForPrefix
– Der Benutzer, die Rolle oder die Anwendung kann die S3-Access-Grants-Instance abrufen, die ein bestimmtes Präfix enthält. -
s3:ListAccessGrants
-
s3:ListAccessLocations
-
s3:ListCallerAccessGrants
-
s3:GetDataAccess
– Der Benutzer, die Rolle oder die Anwendung kann temporäre Anmeldeinformationen anfordern, basierend auf dem Zugriff, der Ihnen über S3 Access Grants gewährt wurde. Mit diesen Anmeldeinformationen können Sie auf die S3-Daten zugreifen, für die Ihnen Zugriff gewährt wurde.
Sie können auswählen, welche dieser Berechtigungen in die Ressourcenrichtlinie aufgenommen werden sollen. Diese Ressourcenrichtlinie für die S3-Access-Grants-Instance ist eine reguläre ressourcenbasierte Richtlinie und unterstützt alles, was auch die IAM-Richtliniensprache unterstützt. In derselben Richtlinie können Sie spezifischen IAM-Identitäten in Ihrem Konto 111122223333
Zugriff gewähren, zum Beispiel durch die Verwendung der Bedingung aws:PrincipalArn
. Mit S3 Access Grants ist das jedoch nicht erforderlich. Stattdessen können Sie innerhalb Ihrer S3-Access-Grants-Instance Gewährungen für einzelne IAM-Identitäten in Ihrem Konto sowie für das andere Konto erstellen. Da Sie jede Zugriffsgewährung über S3 Access Grants verwalten, können Sie Ihre Berechtigungen skalieren.
Wenn Sie den AWS Resource Access Manager (AWS RAM) bereits verwenden, können Sie damit Ihre s3:AccessGrants
-Ressourcen mit anderen Konten oder innerhalb Ihrer Organisation teilen. Weitere Informationen finden Sie unter Arbeiten mit gemeinsam genutzten AWS Ressourcen. Wenn Sie die Ressourcenrichtlinie nicht verwenden AWS RAM, können Sie die Ressourcenrichtlinie auch mithilfe der API-Operationen S3 Access Grants oder AWS Command Line Interface (AWS CLI) hinzufügen.
Wir empfehlen Ihnen, die Konsole AWS Resource Access Manager (AWS RAM) zu verwenden, um Ihre s3:AccessGrants
Ressourcen mit anderen Konten oder innerhalb Ihrer Organisation zu teilen. Um S3 Access Grants kontoübergreifend zu teilen, gehen Sie wie folgt vor:
So konfigurieren Sie die Ressourcenrichtlinie für eine S3-Access-Grants-Instance:
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/
. Wählen Sie das AWS-Region aus der AWS-Region Auswahl aus.
Wählen Sie im linken Navigationsbereich Zugriffsgewährungen aus.
Wählen Sie auf der Seite „Access-Grants-Instance“ im Abschnitt Instance in diesem Konto die Option Instance teilen aus. Dadurch werden Sie zur AWS RAM Konsole weitergeleitet.
Wählen Sie Ressourcenfreigabe erstellen aus.
Folgen Sie den AWS RAM Schritten, um die Ressourcenfreigabe zu erstellen. Weitere Informationen finden Sie unter Eine Ressourcenfreigabe erstellen in AWS RAM.
Informationen zur AWS CLI Installation von finden Sie unter Installation von AWS CLI im AWS Command Line Interface Benutzerhandbuch.
Sie können die Ressourcenrichtlinie mit dem put-access-grants-instance-resource-policy
CLI-Befehl hinzufügen.
Wenn Sie kontoübergreifenden Zugriff für die S3-Access-Grants-Instance in Ihrem Konto 111122223333
für das zweite Konto 444455556666
gewähren möchten, sollte die Ressourcenrichtlinie für die S3-Access-Grants-Instance in Ihrem Konto 111122223333
dem zweiten Konto 444455556666
die Berechtigung erteilen, die folgenden Aktionen auszuführen:
s3:ListAccessGrants
s3:ListAccessGrantsLocations
s3:GetDataAccess
s3:GetAccessGrantsInstanceForPrefix
Geben Sie in der Ressourcenrichtlinie für die S3-Access-Grants-Instance den ARN Ihrer S3-Access-Grants-Instance als Resource
und das zweite Konto 444455556666
als Principal
an. Wenn Sie das folgende Beispiel verwenden möchten, ersetzen Sie die user input
placeholders
(Platzhalter für Benutzereingaben) durch Ihre eigenen Informationen.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "
444455556666
" }, "Action": [ "s3:ListAccessGrants", "s3:ListAccessGrantsLocations", "s3:GetDataAccess", "s3:GetAccessGrantsInstanceForPrefix" ], "Resource": "arn:aws:s3:us-east-2
:111122223333
:access-grants/default" } ] }
Verwenden Sie den folgenden Befehl, um eine S3-Access-Grants-Ressourcenrichtlinie hinzuzufügen oder zu aktualisieren. Wenn Sie den folgenden Beispielbefehl verwenden möchten, ersetzen Sie
durch Ihre eigenen Informationen.user input
placeholders
Beispiel Hinzufügen oder Aktualisieren einer S3-Access-Grants-Ressourcenrichtlinie
aws s3control put-access-grants-instance-resource-policy \ --account-id
111122223333
\ --policy file://resourcePolicy.json \ --regionus-east-2
{ "Policy": "{\n \"Version\": \"2012-10-17\",\n \"Statement\": [{\n \"Effect\": \"Allow\",\n \"Principal\": {\n \"AWS\": \"444455556666
\"\n },\n \"Action\": [\n \"s3:ListAccessGrants\",\n \"s3:ListAccessGrantsLocations\",\n \"s3:GetDataAccess\",\n \"s3:GetAccessGrantsInstanceForPrefix\",\n \"s3:ListCallerAccessGrants"\n ],\n \"Resource\": \"arn:aws:s3:us-east-2
:111122223333
:access-grants/default\"\n }\n ]\n }\n", "CreatedAt": "2023-06-16T00:07:47.473000+00:00" }
Beispiel Abrufen einer S3-Access-Grants-Ressourcenrichtlinie
Sie können die CLI auch verwenden, um eine Ressourcenrichtlinie für eine S3-Access-Grants-Instance abzurufen oder zu löschen.
Sie können den folgenden Beispielbefehl verwenden, um eine S3-Access-Grants-Ressourcenrichtlinie abzurufen. Wenn Sie diese Beispielbefehl verwenden möchten, ersetzen Sie
durch Ihre Informationen.user input
placeholders
aws s3control get-access-grants-instance-resource-policy \ --account-id
111122223333
\ --regionus-east-2
{ "Policy": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::111122223333
:root\"},\"Action\":[\"s3:ListAccessGrants\",\"s3:ListAccessGrantsLocations\",\"s3:GetDataAccess\",\"s3:GetAccessGrantsInstanceForPrefix\",\"s3:ListCallerAccessGrants\"],\"Resource\":\"arn:aws: s3:us-east-2
:111122223333
:access-grants/default\"}]}", "CreatedAt": "2023-06-16T00:07:47.473000+00:00" }
Beispiel Löschen einer S3-Access-Grants-Ressourcenrichtlinie
Sie können den folgenden Beispielbefehl verwenden, um eine S3-Access-Grants-Ressourcenrichtlinie zu löschen. Wenn Sie diese Beispielbefehl verwenden möchten, ersetzen Sie
durch Ihre Informationen.user input
placeholders
aws s3control delete-access-grants-instance-resource-policy \ --account-id
111122223333
\ --regionus-east-2
// No response body
Sie können die Ressourcenrichtlinie mithilfe der PutAccessGrantsInstanceResourcePolicy API hinzufügen.
Wenn Sie kontoübergreifenden Zugriff für die S3-Access-Grants-Instance in Ihrem Konto 111122223333
für das zweite Konto 444455556666
gewähren möchten, sollte die Ressourcenrichtlinie für die S3-Access-Grants-Instance in Ihrem Konto 111122223333
dem zweiten Konto 444455556666
die Berechtigung erteilen, die folgenden Aktionen auszuführen:
s3:ListAccessGrants
s3:ListAccessGrantsLocations
s3:GetDataAccess
s3:GetAccessGrantsInstanceForPrefix
Geben Sie in der Ressourcenrichtlinie für die S3-Access-Grants-Instance den ARN Ihrer S3-Access-Grants-Instance als Resource
und das zweite Konto 444455556666
als Principal
an. Wenn Sie das folgende Beispiel verwenden möchten, ersetzen Sie die user input
placeholders
(Platzhalter für Benutzereingaben) durch Ihre eigenen Informationen.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "
444455556666
" }, "Action": [ "s3:ListAccessGrants", "s3:ListAccessGrantsLocations", "s3:GetDataAccess", "s3:GetAccessGrantsInstanceForPrefix" ], "Resource": "arn:aws:s3:us-east-2
:111122223333
:access-grants/default" } ] }
Anschließend können Sie die PutAccessGrantsInstanceResourcePolicy API verwenden, um die Richtlinie zu konfigurieren.
Informationen zur REST-API-Unterstützung zum Aktualisieren, Abrufen oder Löschen einer Ressourcenrichtlinie für eine S3-Access-Grants-Instance finden Sie in den folgenden Abschnitten der API-Referenz zum Amazon Simple Storage Service:
In diesem Abschnitt finden Sie AWS SDK-Beispiele zur Konfiguration Ihrer S3 Access Grants-Ressourcenrichtlinie, um einem zweiten AWS Konto Zugriff auf einige Ihrer S3-Daten zu gewähren.
Schritt 3: Erteilen Sie IAM-Identitäten in einem zweiten Konto die Berechtigung, die S3-Access-Grants-Instance in Ihrem Konto aufzurufen
Nachdem der Eigentümer der Amazon-S3-Daten die kontoübergreifende Richtlinie für die S3-Access-Grants-Instance in Konto 111122223333
konfiguriert hat, muss der Eigentümer des zweiten Kontos 444455556666
eine identitätsbasierte Richtlinie für seine IAM-Benutzer oder -Rollen erstellen und diesen Zugriff auf die S3-Access-Grants-Instance gewähren. Nehmen Sie in die identitätsbasierte Richtlinie eine oder mehrere der folgenden Aktionen auf, je nachdem, was in der Ressourcenrichtlinie für die S3-Access-Grants-Instance gewährt wurde und welche Berechtigungen Sie gewähren möchten:
s3:ListAccessGrants
s3:ListAccessGrantsLocations
s3:GetDataAccess
s3:GetAccessGrantsInstanceForPrefix
s3:ListCallerAccessGrants
Gemäß dem kontoübergreifenden AWS
-Zugriffsmuster müssen die IAM-Benutzer oder -Rollen im zweiten Konto 444455556666
explizit über eine oder mehrere dieser Berechtigungen verfügen. Erteilen Sie beispielsweise die s3:GetDataAccess
-Berechtigung, damit der IAM-Benutzer oder die -Rolle die S3-Access-Grants-Instance im Konto 111122223333
aufrufen kann, um Anmeldeinformationen anzufordern.
Wenn Sie diese Beispielbefehl verwenden möchten, ersetzen Sie
durch Ihre Informationen.user input placeholders
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetDataAccess", ], "Resource": "arn:aws:s3:
us-east-2
:111122223333
:access-grants/default" } ] }
Informationen zum Bearbeiten einer identitätsbasierten IAM-Richtlinie finden Sie unter Bearbeiten von IAM-Richtlinien im AWS Identity and Access Management -Handbuch.
Schritt 4: Erstellen Sie eine Gewährung in der S3-Access-Grants-Instance Ihres Kontos, die der IAM-Identität im zweiten Konto Zugriff auf einige Ihrer S3-Daten gewährt
Für den letzten Konfigurationsschritt können Sie in der S3-Access-Grants-Instance in Ihrem Konto 111122223333 eine Gewährung erstellen, die Zugriff auf die IAM-Identität im zweiten Konto 444455556666 auf einige der S3-Daten in Ihrem Konto gewährt. Sie können dies mithilfe der Amazon S3 S3-Konsole, CLI, API und tun SDKs. Weitere Informationen finden Sie unter Erstellen von Gewährungen.
Geben Sie in der Gewährung den AWS ARN der IAM-Identität des zweiten Kontos an und geben Sie an, für welchen Speicherort in Ihren S3-Daten (ein Bucket, ein Präfix oder ein Objekt) Sie Zugriff gewähren. Dieser Speicherort muss bereits in Ihrer S3-Access-Grants-Instance registriert sein. Weitere Informationen finden Sie unter Registrieren eines Speicherorts. Sie können optional ein Unterpräfix angeben. Wenn es sich beim Speicherort, für den Sie Zugriff gewähren, um einen Bucket handelt und Sie den Zugriff weiter auf ein bestimmtes Objekt in diesem Bucket einschränken möchten, übergeben Sie den Objektschlüsselnamen in das S3SubPrefix
-Feld. Oder wenn Sie den Zugriff auf die Objekte im Bucket mit Schlüsselnamen, die mit einem bestimmten Präfix wie 2024-03-research-results/
beginnen, beschränken möchten, dann übergeben Sie S3SubPrefix=2024-03-research-results/
.
Im Folgenden finden Sie ein Beispiel für einen CLI-Befehl zum Erstellen einer Zugriffsgewährung für eine Identität im zweiten Konto. Weitere Informationen finden Sie unter Erstellen von Gewährungen. Wenn Sie diese Beispielbefehl verwenden möchten, ersetzen Sie
durch Ihre Informationen.user input placeholders
aws s3control create-access-grant \ --account-id
111122223333
\ --access-grants-location-id default \ --access-grants-location-configuration S3SubPrefix=prefixA*
\ --permission READ \ --grantee GranteeType=IAM,GranteeIdentifier=arn:aws:iam::444455556666
:role/data-consumer-1
Nach der Konfiguration des kontenübergreifenden Zugriffs kann der Benutzer oder die Rolle im zweiten Konto wie folgt vorgehen:
Ruft
ListAccessGrantsInstances
auf, um die S3-Access-Grants-Instances aufzulisten, die über den AWS RAM freigegeben wurden. Weitere Informationen finden Sie unter Anzeigen der Details einer S3-Access-Grants-Instance.Fordert temporäre Anmeldedaten von S3 Access Grants an. Weitere Informationen dazu, wie Sie diese Anforderungen stellen können, finden Sie unter Anfordern des Zugriffs auf Amazon-S3-Daten über S3 Access Grants.