Ich möchte auf eine Warteschlange von Amazon Simple Queue Service (Amazon SQS) zugreifen. Welche SQS-Zugriffsrichtlinie und AWS Identity and Access Management (IAM)-Richtlinienberechtigungen sind erforderlich, um auf die Warteschlange zuzugreifen?
Lösung
Um auf eine Amazon-SQS-Warteschlange zuzugreifen, müssen Sie der SQS-Zugriffsrichtlinie, der IAM-Richtlinie oder beidem, Berechtigungen hinzufügen. Die spezifischen Berechtigungsanforderungen unterscheiden sich je nachdem, ob die SQS-Warteschlange und die IAM-Rolle vom selben Konto stammen.
Gleiches Konto
Eine Anweisung zum Ermöglichen des Zugriffs ist entweder in der SQS-Zugriffsrichtlinie oder in der IAM-Richtlinie erforderlich.
Hinweis: Wenn entweder die SQS-Zugriffsrichtlinie oder die IAM-Richtlinie explizit den Zugriff zulässt, die andere Richtlinie jedoch den Zugriff explizit verweigert, wird der Zugriff auf die Warteschlange verweigert.
| | |
---|
IAM-Benutzerrichtlinie | SQS-Zugriffsrichtlinie | Ergebnis |
Erlauben | Erlauben | Erlauben |
Erlauben | Weder erlauben noch verweigern | Erlauben |
Erlauben | Verweigern | Verweigern |
Weder erlauben noch verweigern | Erlauben | Erlauben |
Weder erlauben noch verweigern | Weder erlauben noch verweigern | Implizite Verweigerung |
Weder erlauben noch verweigern | Verweigern | Verweigern |
Verweigern | Erlauben | Verweigern |
Verweigern | Weder erlauben noch verweigern | Verweigern |
Verweigern | Verweigern | Verweigern |
Anderes Konto
Eine Anweisung zum Ermöglichen des Zugriffs ist sowohl in der SQS-Zugriffsrichtlinie als auch in der IAM-Richtlinie erforderlich.
| | |
---|
IAM-Benutzerrichtlinie | SQS-Zugriffsrichtlinie | Ergebnis |
Erlauben | Erlauben | Erlauben |
Erlauben | Weder erlauben noch verweigern | Implizite Verweigerung |
Erlauben | Verweigern | Verweigern |
Weder erlauben noch verweigern | Erlauben | Implizite Verweigerung |
Weder erlauben noch verweigern | Weder erlauben noch verweigern | Implizite Verweigerung |
Weder erlauben noch verweigern | Verweigern | Verweigern |
Verweigern | Erlauben | Verweigern |
Verweigern | Weder erlauben noch verweigern | Verweigern |
Verweigern | Verweigern | Verweigern |
Beispiel Grundsatzerklärungen
Die folgenden Beispielrichtlinien zeigen die Berechtigungen, die Sie für die IAM-Richtlinie und die SQS-Warteschlangenzugriffsrichtlinie festlegen müssen, um kontenübergreifenden Zugriff für eine SQS-Warteschlange zu ermöglichen.
Die erste Richtlinie gewährt Benutzername1 Berechtigungen zum Senden von Nachrichten an die Ressource arn:aws:sqs:us-east- 1:123456789012:queue_1.
Die zweite Richtlinie ermöglicht es Benutzername1, Nachrichten an die Warteschlange zu senden.
Weitere Informationen zu diesen Richtlinien finden Sie unter IAM-Richtlinientypen: Wie und wann sie verwendet werden.
Beispiel für IAM-Richtlinienanweisung für Benutzername1
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "sqs:SendMessage",
"Resource": "arn:aws:sqs:us-east-1:123456789012:queue_1"
}]
}
Beispiel für eine SQS-Ressourcenrichtlinienanweisung für queue_1
{
"Version": "2012-10-17",
"Id": "Queue1_Policy",
"Statement": [{
"Sid":"Queue1_AllActions",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::111122223333:user/username1"
]
},
"Action": "sqs:SendMessage",
"Resource": "arn:aws:sqs:us-east-1:123456789012:queue_1"
}]
}