Beispiele für eine benutzerdefinierte Sprache der Zugriffsrichtlinie von Amazon SQS - Amazon Simple Queue Service

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.

Beispiele für eine benutzerdefinierte Sprache der Zugriffsrichtlinie von Amazon SQS

Nachfolgend sind Beispiele typischer Amazon-SQS-Zugriffsrichtlinien aufgeführt.

Beispiel 1: Einem Konto eine Berechtigung erteilen

Das folgende Beispiel für eine Amazon-SQS-Richtlinie gewährt AWS-Konto 111122223333 die Berechtigung zum Senden an und zum Empfangen von queue2, in Eigentümerschaft von AWS-Konto 444455556666.

{ "Version": "2012-10-17", "Id": "UseCase1", "Statement" : [{ "Sid": "1", "Effect": "Allow", "Principal": { "AWS": [ "111122223333" ] }, "Action": [ "sqs:SendMessage", "sqs:ReceiveMessage" ], "Resource": "arn:aws:sqs:us-east-2:444455556666:queue2" }] }

Beispiel 2: Einem oder mehreren Konten eine Berechtigung erteilen

Das folgende Beispiel für eine Amazon-SQS-Richtlinie erteilt einem oder mehreren AWS-Konten Zugriff auf Warteschlangen, deren Eigentümer Ihr Konto für einen bestimmten Zeitraum ist. Es ist erforderlich, diese Richtlinie zu erstellen und mit der Aktion SetQueueAttributes zu Amazon SQS hochzuladen, da die Aktion AddPermission bei der Zugriffserteilung für eine Warteschlange keine Angabe einer Zeitbeschränkung erlaubt.

{ "Version": "2012-10-17", "Id": "UseCase2", "Statement" : [{ "Sid": "1", "Effect": "Allow", "Principal": { "AWS": [ "111122223333", "444455556666" ] }, "Action": [ "sqs:SendMessage", "sqs:ReceiveMessage" ], "Resource": "arn:aws:sqs:us-east-2:444455556666:queue2", "Condition": { "DateLessThan": { "AWS:CurrentTime": "2009-06-30T12:00Z" } } }] }

Beispiel 3: Berechtigung für Anforderungen von Amazon-EC2-Instances erteilen

Das folgende Beispiel für eine Amazon-SQS-Richtlinie erteilt den Zugriff für Anforderungen, die von Amazon-EC2-Instances stammen. Dieses Beispiel basiert auf dem Beispiel "Beispiel 2: Einem oder mehreren Konten eine Berechtigung erteilen": Es beschränkt den Zugriff auf die Zeit vor dem 30. Juni 2009 12.00 Uhr (UTC) und auf den IP-Adressbereich 203.0.113.0/24. Es ist erforderlich, diese Richtlinie zu erstellen und mit der Aktion SetQueueAttributes in Amazon SQS hochzuladen, da die Aktion AddPermission bei der Zugriffserteilung für eine Warteschlange keine Angabe einer IP-Adressbeschränkung erlaubt.

{ "Version": "2012-10-17", "Id": "UseCase3", "Statement" : [{ "Sid": "1", "Effect": "Allow", "Principal": { "AWS": [ "111122223333" ] }, "Action": [ "sqs:SendMessage", "sqs:ReceiveMessage" ], "Resource": "arn:aws:sqs:us-east-2:444455556666:queue2", "Condition": { "DateLessThan": { "AWS:CurrentTime": "2009-06-30T12:00Z" }, "IpAddress": { "AWS:SourceIp": "203.0.113.0/24" } } }] }

Beispiel 4: Zugriff für ein bestimmtes Konto verweigern

Das folgende Beispiel für eine Amazon-SQS-Richtlinie verweigert einem bestimmten AWS-Konto den Zugriff auf Ihre Warteschlange. Dieses Beispiel basiert auf dem „Beispiel 1: Einem Konto eine Berechtigung erteilen“-Beispiel: Es verweigert den Zugriff für das angegebene AWS-Konto. Es ist erforderlich, diese Richtlinie zu erstellen und mit der Aktion SetQueueAttributes zu Amazon SQS hochzuladen, da die Aktion AddPermission keine Zugriffsverweigerung für eine Warteschlange erlaubt (sie lässt nur die Erteilung des Zugriffs auf eine Warteschlange zu).

{ "Version": "2012-10-17", "Id": "UseCase4", "Statement" : [{ "Sid": "1", "Effect": "Deny", "Principal": { "AWS": [ "111122223333" ] }, "Action": [ "sqs:SendMessage", "sqs:ReceiveMessage" ], "Resource": "arn:aws:sqs:us-east-2:444455556666:queue2" }] }

Beispiel 5: Verweigerung des Zugriffs, wenn dieser nicht von einem VPC-Endpunkt aus erfolgt

Das folgende Beispiel für eine Amazon-SQS-Richtlinie beschränkt den Zugriff auf queue1: 111122223333 kann die Aktionen SendMessage und ReceiveMessage nur von der VPC-Endpunkt-ID vpce-1a2b3c4d aus durchführen (angegeben mit der aws:sourceVpce-Bedingung). Weitere Informationen finden Sie unter Endpunkte von Amazon Virtual Private Cloud für Amazon SQS.

Anmerkung
  • Die aws:sourceVpce-Bedingung benötigt keine ARN für die VPC-Endpunkt-Ressource, sondern nur die VPC-Endpunkt-ID.

  • Sie können das folgende Beispiel so abändern, dass alle Aktionen auf einen spezifischen VPC-Endpunkt eingeschränkt werden, indem Sie in der zweiten Anweisung alle Amazon-SQS-Aktionen (sqs:*) verweigern. Durch eine solche Richtlinienanweisung würde jedoch festgelegt, dass alle Aktionen (einschließlich von zum Ändern von Warteschlangen-Berechtigungen erforderlichen administrativen Aktionen) über den spezifischen, in der Richtlinie definierten VPC-Endpunkt erfolgen müssen; hierdurch würde dem Benutzer in der Zukunft das Ändern von Warteschlangen-Berechtigungen unmöglich gemacht.

{ "Version": "2012-10-17", "Id": "UseCase5", "Statement": [{ "Sid": "1", "Effect": "Allow", "Principal": { "AWS": [ "111122223333" ] }, "Action": [ "sqs:SendMessage", "sqs:ReceiveMessage" ], "Resource": "arn:aws:sqs:us-east-2:111122223333:queue1" }, { "Sid": "2", "Effect": "Deny", "Principal": "*", "Action": [ "sqs:SendMessage", "sqs:ReceiveMessage" ], "Resource": "arn:aws:sqs:us-east-2:111122223333:queue1", "Condition": { "StringNotEquals": { "aws:sourceVpce": "vpce-1a2b3c4d" } } } ] }