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.
Beispiel 1: Bucket-Eigentümer erteilt seinen Benutzern Bucket-Berechtigungen
Wichtig
Das Erteilen von Berechtigungen für IAM Rollen ist eine bessere Methode als das Erteilen von Berechtigungen für einzelne Benutzer. Weitere Informationen darüber, wie Sie IAM Rollen Berechtigungen gewähren, finden Sie unter. Grundlegendes zu kontoübergreifenden Berechtigungen und zur Verwendung von Rollen IAM
Themen
In dieser exemplarischen Vorgehensweise AWS-Konto besitzt einen Bucket, und das Konto umfasst einen IAM Benutzer. Standardmäßig hat der Benutzer keine Berechtigungen. Damit der Benutzer alle Aufgaben ausführen kann, muss das übergeordnete Konto ihm Berechtigungen erteilen. Der Bucket-Eigentümer und das übergeordnete Konto sind identisch. Um dem Benutzer also Berechtigungen für den Bucket zu gewähren, muss AWS-Konto kann eine Bucket-Richtlinie, eine Benutzerrichtlinie oder beides verwenden. Der Kontobesitzer gewährt einige Berechtigungen unter Verwendung einer Bucket-Richtlinie und andere Berechtigungen unter Verwendung einer Benutzerrichtlinie.
Die folgenden Schritte fasen das detaillierte Beispiel zusammen:
-
Der Kontoadministrator erstellt eine Bucket-Richtlinie, die dem Benutzer verschiedene Berechtigungen erteilt.
-
Der Kontoadministrator weist dem Benutzer eine Benutzerrichtlinie zu, die ihm zusätzliche Berechtigungen erteilt.
-
Anschließend probiert der Benutzer Berechtigungen aus, die über die Bucket-Richtlinie und die Benutzerrichtlinie erteilt wurden.
Für dieses Beispiel benötigen Sie eine AWS-Konto. Anstatt die Root-Benutzeranmeldedaten des Kontos zu verwenden, erstellen Sie einen Administratorbenutzer (sieheInformationen zur Verwendung eines Administratorbenutzers zum Erstellen von Ressourcen und Erteilen von Berechtigungen). Wir beziehen uns auf AWS-Konto und den Administratorbenutzer, wie in der folgenden Tabelle dargestellt.
Konto-ID | Konto bezeichnet als | Administratorbenutzer im Konto |
---|---|---|
|
Konto A |
AccountAadmin |
Anmerkung
Der Administratorbenutzer in diesem Beispiel ist AccountAadmin, was sich auf Konto A bezieht, und nicht AccountAdmin.
Alle Aufgaben zum Erstellen von Benutzern und zum Erteilen von Berechtigungen werden im AWS Management Console. Um die Berechtigungen zu überprüfen, werden in der exemplarischen Vorgehensweise die Befehlszeilentools verwendet. AWS Command Line Interface (AWS CLI) und AWS Tools for Windows PowerShell, sodass Sie keinen Code schreiben müssen.
Vorbereitung auf den Walkthrough
-
Stellen Sie sicher, dass Sie eine haben AWS-Konto und dass es einen Benutzer mit Administratorrechten hat.
-
Melde dich an für ein AWS-Konto, falls erforderlich. Wir bezeichnen dieses Konto als Konto A.
-
Gehe zu https://aws.amazon.com/s3
und wähle Create an AWS Konto. -
Folgen Sie den Anweisungen auf dem Bildschirm.
AWS wird Sie per E-Mail benachrichtigen, wenn Ihr Konto aktiv und für Sie verfügbar ist.
-
-
Erstellen Sie in Konto A einen Administratorbenutzer
AccountAadmin
. Melden Sie sich mit den Anmeldeinformationen von Konto A bei der IAMKonsolean und gehen Sie wie folgt vor: -
Erstellen Sie einen Benutzer
AccountAadmin
und notieren Sie sich die Sicherheitsanmeldedaten des Benutzers.Anweisungen finden Sie unter Einen IAM Benutzer erstellen in Ihrem AWS-Konto im IAM-Benutzerhandbuch.
-
Gewähren Sie Administratorrechte, AccountAadminindem Sie eine Benutzerrichtlinie anhängen, die vollen Zugriff gewährt.
Anweisungen finden Sie im IAMBenutzerhandbuch unter IAMRichtlinien verwalten.
-
Notieren Sie sich die IAMBenutzeranmeldung URL für AccountAadmin. Sie müssen dies verwenden, URL wenn Sie sich bei der AWS Management Console. Weitere Informationen darüber, wo Sie die Anmeldung findenURL, finden Sie unter Anmelden bei AWS Management Console als IAM Benutzer im IAMBenutzerhandbuch. Beachten Sie die URL für jedes Konto.
-
-
-
Richten Sie entweder AWS CLI oder das AWS Tools for Windows PowerShell. Stellen Sie sicher, dass Sie die Administrator-Benutzeranmeldedaten wie folgt speichern:
-
Wenn Sie das verwenden AWS CLI, erstellen Sie ein Profil,
AccountAadmin
, in der Konfigurationsdatei. -
Wenn Sie das verwenden AWS Tools for Windows PowerShell, stellen Sie sicher, dass Sie die Anmeldeinformationen für die Sitzung als speichern
AccountAadmin
.
Detaillierte Anweisungen finden Sie unter Einrichtung der Tools für die exemplarischen Vorgehensweisen.
-
Schritt 1: Erstellen Sie Ressourcen in Konto A und gewähren Sie Berechtigungen
Melden Sie sich mit den Anmeldeinformationen des Benutzers AccountAadmin
in Konto A und der speziellen IAM Benutzeranmeldung URL bei AWS Management Console und gehen Sie wie folgt vor:
-
Erstellen Sie Ressourcen für einen Bucket und einen IAM Benutzer
-
Erstellen Sie in der Amazon-S3-Konsole einen Bucket. Beachten Sie den AWS-Region in dem Sie den Bucket erstellt haben. Detaillierte Anweisungen finden Sie unter Erstellen eines Buckets.
-
Gehen Sie in der IAMKonsole
wie folgt vor: -
Erstellen Sie einen Benutzer mit dem Namen Dave.
step-by-step Anweisungen finden Sie im Benutzerhandbuch unter IAMBenutzer erstellen (Konsole). IAM
-
Notieren Sie sich die
UserDave
Anmeldeinformationen. -
Notieren Sie sich den Amazon-Ressourcennamen (ARN) für den Benutzer Dave. Wählen Sie in der IAMKonsole
den Benutzer aus, und auf der Registerkarte Zusammenfassung wird der Benutzer angezeigtARN.
-
-
-
Erteilen Sie Berechtigungen.
Da der Bucket-Besitzer und das übergeordnete Konto, zu dem der Benutzer gehört, identisch sind AWS-Konto kann Benutzerberechtigungen mithilfe einer Bucket-Richtlinie, einer Benutzerrichtlinie oder beidem gewähren. In diesem Beispiel machen Sie beides. Wenn das Objekt auch demselben Konto gehört, kann der Bucket-Besitzer Objektberechtigungen in der Bucket-Richtlinie (oder einer IAM Richtlinie) gewähren.
-
Fügen Sie in der Amazon S3 S3-Konsole die folgende Bucket-Richtlinie hinzu
awsexamplebucket1
.Die Richtlinie enthält zwei Anweisungen.
-
Die erste Anweisung erteilt Dave Berechtigungen für die Bucket-Operationen
s3:GetBucketLocation
unds3:ListBucket
. -
Die zweite Anweisung erteilt die
s3:GetObject
-Berechtigung. Konto A gehört auch das Objekt, deshalb kann der Kontoadministrator dies3:GetObject
-Berechtigung erteilen.
In der
Principal
Erklärung wird Dave von seinem Benutzer identifiziertARN. Weitere Informationen zu Richtlinienelementen finden Sie unter Richtlinien und Berechtigungen in Amazon S3.{ "Version": "2012-10-17", "Statement": [ { "Sid": "statement1", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
AccountA-ID
:user/Dave" }, "Action": [ "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::awsexamplebucket1
" ] }, { "Sid": "statement2", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::AccountA-ID
:user/Dave" }, "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::awsexamplebucket1
/*" ] } ] } -
-
Erstellen Sie mithilfe der folgenden Richtlinie eine Inlinerichtlinie für den Benutzer Dave. Die Richtlinie erteilt dem Benutzer Dave die
s3:PutObject
-Berechtigung. Sie müssen die Richtlinie aktualisieren, indem Sie Ihren Bucket-Namen angeben.{ "Version": "2012-10-17", "Statement": [ { "Sid": "PermissionForObjectOperations", "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::
awsexamplebucket1
/*" ] } ] }Eine Anleitung dazu finden Sie IAMpolicies im IAMBenutzerhandbuch unter Verwalten. Beachten Sie, dass Sie sich mit den Anmeldeinformationen von Konto A an der Konsole anmelden müssen.
-
Schritt 2: Testen der Berechtigungen
Überprüfen Sie unter Verwendung der Anmeldeinformationen von Dave, ob die Berechtigungen funktionieren. Sie haben die Wahl zwischen den folgenden beiden Verfahren.
Testen Sie die Berechtigungen mit dem AWS CLI
-
Aktualisieren Sie das AWS CLI Konfigurationsdatei, indem Sie das folgende
UserDaveAccountA
Profil hinzufügen. Weitere Informationen finden Sie unter Einrichtung der Tools für die exemplarischen Vorgehensweisen.[profile UserDaveAccountA] aws_access_key_id =
access-key
aws_secret_access_key =secret-access-key
region =us-east-1
-
Überprüfen Sie, ob Dave Vorgänge ausführen kann, für die ihm in der Benutzerrichtlinie Berechtigungen erteilt wurden. Laden Sie ein Beispielobjekt hoch, indem Sie Folgendes verwenden AWS CLI
put-object
Befehl.Der Parameter
--body
im Befehl identifiziert die hochzuladende Quelldatei. Befindet sich die Datei beispielsweise im Stammverzeichnis des Laufwerks C: auf einem Windows Maschine, die Sie angebenc:\HappyFace.jpg
. Der Parameter--key
gibt den Schlüsselnamen für das Objekt an.aws s3api put-object --bucket
awsexamplebucket1
--keyHappyFace.jpg
--bodyHappyFace.jpg
--profile UserDaveAccountAFühren Sie Folgendes aus AWS CLI Befehl, um das Objekt abzurufen.
aws s3api get-object --bucket awsexamplebucket1 --key
HappyFace.jpg
OutputFile.jpg
--profile UserDaveAccountA
Testen Sie die Berechtigungen mit dem AWS Tools for Windows PowerShell
-
Speichern Sie Daves Anmeldeinformationen als
AccountADave
. Anschließend verwenden Sie diese Anmeldeinformationen, umPUT
GET
ein Objekt zu erstellen.set-awscredentials -AccessKey
AccessKeyID
-SecretKeySecretAccessKey
-storeas AccountADave -
Laden Sie ein Beispielobjekt hoch, indem Sie AWS Tools for Windows PowerShell
Write-S3Object
Befehl, der die gespeicherten Anmeldeinformationen von Benutzer Dave verwendet.Write-S3Object -bucketname
awsexamplebucket1
-keyHappyFace.jpg
-fileHappyFace.jpg
-StoredCredentials AccountADaveLaden Sie das zuvor hochgeladene Objekt herunter.
Read-S3Object -bucketname
awsexamplebucket1
-keyHappyFace.jpg
-fileOutput.jpg
-StoredCredentials AccountADave