IAM-JSON-Richtlinienelemente: Resource - AWS Identitäts- und Zugriffsverwaltung

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.

IAM-JSON-Richtlinienelemente: Resource

Das Element Resource definiert das Objekt oder die Objekte, die von der Anweisung abgedeckt sind. Anweisungen müssen entweder ein Resource- oder ein NotResource-Element enthalten. Geben Sie eine Ressource mit einem ARN an. Weitere Informationen zum Format von ARNs finden Sie unter IAM-ARNs.

Jeder Service verfügt über seine eigenen Ressourcen. Obwohl Sie immer zur Angabe einer Ressource einen ARN verwenden, hängen die ARN-Details für eine Ressource vom Service und der Ressource ab. Weitere Informationen zur Angabe einer Ressource finden Sie in der Dokumentation für den Service, für dessen Ressourcen Sie eine Anweisung definieren.

Anmerkung

Bei einigen Services können Sie keine Aktionen für einzelne Ressourcen angeben. Stattdessen gelten alle Aktionen, die Sie im Element Action oder NotAction auflisten, für sämtliche Ressourcen im jeweiligen Service. In diesem Fall nutzen Sie den Platzhalter * im Resource-Element.

Das folgende Beispiel bezieht sich auf eine bestimmte Amazon SQS-Warteschlange.

"Resource": "arn:aws:sqs:us-east-2:account-ID-without-hyphens:queue1"

Das folgende Beispiel bezieht sich auf den IAM-Benutzer mit dem Namen Bob in einem AWS-Konto.

Anmerkung

Im Resource-Element ist für den IAM-Benutzernamen die Groß- und Kleinschreibung zu beachten.

"Resource": "arn:aws:iam::account-ID-without-hyphens:user/Bob"

Verwenden von Platzhaltern in Ressourcen-ARNs

Sie können im ARN der Ressource Platzhalter verwenden. Sie können Platzhalterzeichen (* und?) innerhalb von ARN-Segmenten (die durch Doppelpunkte getrennten Teile) verwenden, um eine beliebige Kombination von Zeichen mit einem Asterisk (*) und einem beliebigen einzelnen Buchstaben mit einem Fragezeichen (?) darzustellen. Sie können mehrere * oder? -Zeichen in jedem Segment. Wenn der Platzhalter (*) das letzte Zeichen eines Ressourcen-ARN-Segments ist, kann er erweitert werden, sodass er über die Doppelpunktgrenzen hinaus übereinstimmt. Wir empfehlen die Verwendung von Platzhaltern (* und ?) innerhalb von ARN-Segmenten, die durch einen Doppelpunkt getrennt sind.

Anmerkung

Sie können keine Platzhalterzeichen in dem Servicesegment verwenden, welches das AWS-Produkt identifiziert. Weitere Informationen zu ARN-Segmenten finden Sie unter Amazon-Ressourcennamen (ARNs).

Das folgende Beispiel bezieht sich auf alle IAM-Benutzer, deren Pfad /accounting lautet.

"Resource": "arn:aws:iam::account-ID-without-hyphens:user/accounting/*"

Das folgende Beispiel bezieht sich auf alle Elemente in einem spezifischen Amazon S3-Bucket.

"Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*"

Das Sternchen (*) kann erweitert werden, um alles innerhalb eines Segments zu ersetzen, einschließlich Zeichen wie ein Schrägstrich (/), die andernfalls ein Trennzeichen innerhalb eines bestimmten Dienstnamespace zu sein scheinen. Betrachten Sie beispielsweise den folgenden Amazon S3 ARN, da dieselbe Platzhaltererweiterungslogik für alle Dienste gilt.

"Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*/test/*"

Die Platzhalter im ARN gelten für alle folgenden Objekte im Bucket, nicht nur für das erste aufgelistete Objekt.

DOC-EXAMPLE-BUCKET/1/test/object.jpg DOC-EXAMPLE-BUCKET/1/2/test/object.jpg DOC-EXAMPLE-BUCKET/1/2/test/3/object.jpg DOC-EXAMPLE-BUCKET/1/2/3/test/4/object.jpg DOC-EXAMPLE-BUCKET/1///test///object.jpg DOC-EXAMPLE-BUCKET/1/test/.jpg DOC-EXAMPLE-BUCKET//test/object.jpg DOC-EXAMPLE-BUCKET/1/test/

Betrachten Sie die letzten beiden Objekte in der vorherigen Liste. Ein Amazon S3 Objektname kann gültig mit dem herkömmlichen Trennzeichen Schrägstrich (/) beginnen oder enden. Während „/“ als Trennzeichen fungiert, gibt es keine spezifische Bedeutung, wenn dieses Zeichen innerhalb eines Ressourcen-ARN verwendet wird. Es wird wie jedes andere gültige Zeichen behandelt. Der ARN würde nicht mit den folgenden Objekten übereinstimmen:

DOC-EXAMPLE-BUCKET/1-test/object.jpg DOC-EXAMPLE-BUCKET/test/object.jpg DOC-EXAMPLE-BUCKET/1/2/test.jpg

Angabe mehrerer Aktionen oder Ressourcen

Sie können mehrere Ressourcen angeben. Das folgende Beispiel bezieht sich auf zwei DynamoDB-Tabellen.

"Resource": [ "arn:aws:dynamodb:us-east-2:account-ID-without-hyphens:table/books_table", "arn:aws:dynamodb:us-east-2:account-ID-without-hyphens:table/magazines_table" ]

Verwenden von Richtlinienvariablen in Ressourcen-ARNs

Im Resource-Element können Sie JSON-Richtlinienvariablen in dem Teil des ARN verwenden, der die Ressource angibt (d. h. im abschließenden Teil des ARN). Beispielsweise können Sie den Schlüssel {aws:username} als Teil einer Ressourcen-ARN verwenden, damit der aktuelle Benutzername als Teil des Ressourcennamens aufgenommen wird. Das folgende Beispiel zeigt, wie Sie den Schlüssel {aws:username} in einem Resource-Element verwenden können. Die Richtlinie gewährt Zugriff auf eine Amazon DynamoDB-Tabelle, die den Namen des aktuellen Benutzers enthält.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "dynamodb:*", "Resource": "arn:aws:dynamodb:us-east-2:account-id:table/${aws:username}" } }

Weitere Informationen zu JSON-Richtlinienvariablen finden Sie unter IAM-Richtlinienelemente: Variablen und Tags.