Je veux accéder à une file d'attente Amazon Simple Queue Service (Amazon SQS). Quelles sont les stratégies d'accès SQS et les autorisations de stratégie AWS Identity and Access Management (IAM) requises pour accéder à la file d'attente ?
Résolution
Pour accéder à une file d'attente Amazon SQS, vous devez ajouter des autorisations à la stratégie d'accès SQS, à la stratégie IAM ou aux deux. Les exigences relatives aux autorisations spécifiques varient si la file d'attente SQS et le rôle IAM proviennent du même compte ou non.
Même compte
Une déclaration permettant l'accès est requise dans la stratégie d'accès SQS ou dans la stratégie IAM.
Remarque : si la stratégie d'accès SQS ou la stratégie IAM autorise explicitement l'accès, mais que l'autre stratégie le refuse explicitement, l'accès à la file d'attente est refusé.
| | |
---|
Stratégie d'utilisateur IAM | Stratégie d'accès SQS | Résultat |
Autorisé | Autorisé | Autorisé |
Autorisé | Ni Autorisé ni Refusé | Autorisé |
Autorisé | Refusé | Refusé |
Ni Autorisé ni Refusé | Autorisé | Autorisé |
Ni Autorisé ni Refusé | Ni Autorisé ni Refusé | Refusé implicitement |
Ni Autorisé ni Refusé | Refusé | Refusé |
Refusé | Autorisé | Refusé |
Refusé | Ni Autorisé ni Refusé | Refusé |
Refusé | Refusé | Refusé |
Différents comptes
Une déclaration permettant l'accès est requise dans la stratégie d'accès SQS et dans la stratégie IAM.
| | |
---|
Stratégie d'utilisateur IAM | Stratégie d'accès SQS | Résultat |
Autorisé | Autorisé | Autorisé |
Autorisé | Ni Autorisé ni Refusé | Refusé implicitement |
Autorisé | Refusé | Refusé |
Ni Autorisé ni Refusé | Autorisé | Refusé implicitement |
Ni Autorisé ni Refusé | Ni Autorisé ni Refusé | Refusé implicitement |
Ni Autorisé ni Refusé | Refusé | Refusé |
Refusé | Autorisé | Refusé |
Refusé | Ni Autorisé ni Refusé | Refusé |
Refusé | Refusé | Refusé |
Exemple de déclarations de stratégie
Les exemples de stratégies suivants présentent les autorisations que vous devez définir sur la stratégie IAM et la stratégie d'accès à la file d'attente SQS pour autoriser l'accès inter-comptes à une file d'attente SQS.
La première stratégie accorde des autorisations à username1 pour envoyer des messages à la ressource arn:aws:sqs:us-east-1:123456789012:queue_1.
La deuxième politique autorise username1 à envoyer des messages à la file d'attente.
Pour plus d'informations sur ces politiques, consultez Types de politiques IAM : comment et quand les utiliser.
Exemple de déclaration de politique IAM pour username1
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "sqs:SendMessage",
"Resource": "arn:aws:sqs:us-east-1:123456789012:queue_1"
}]
}
Exemple de déclaration de stratégie de ressource SQS pour 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"
}]
}