Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Cette section présente des exemples de stratégies pour les cas d'utilisation Amazon SQS les plus courants.
Vous pouvez utiliser la console pour vérifier les effets de chaque politique lorsque vous les associez à l'utilisateur. Au départ, l'utilisateur n'a pas les autorisations requises et ne peut donc effectuer aucune action dans la console. A mesure que vous lui associez des stratégies, vous pouvez vérifier que l'utilisateur peut exécuter diverses actions dans la console.
Note
Nous vous recommandons d'utiliser deux fenêtres de navigateur : l'une pour accorder des autorisations et l'autre pour vous connecter à l' AWS Management Console aide des informations d'identification de l'utilisateur afin de vérifier les autorisations que vous lui accordez.
Exemple 1 : accorder une autorisation à une Compte AWS
L'exemple de politique suivant accorde à Compte AWS number 111122223333
l'SendMessage
autorisation pour la file d'attente nommée 444455556666/queue1
dans la région USA Est (Ohio).
{
"Version": "2012-10-17",
"Id": "Queue1_Policy_UUID",
"Statement": [{
"Sid":"Queue1_SendMessage",
"Effect": "Allow",
"Principal": {
"AWS": [
"111122223333"
]
},
"Action": "sqs:SendMessage",
"Resource": "arn:aws:sqs:us-east-2:444455556666:queue1"
}]
}
Exemple 2 : accorder deux autorisations à une Compte AWS
L'exemple de politique suivant accorde à la 111122223333
fois le Compte AWS numéro SendMessage
et l'ReceiveMessage
autorisation pour la file d'attente nommée444455556666/queue1
.
{
"Version": "2012-10-17",
"Id": "Queue1_Policy_UUID",
"Statement": [{
"Sid":"Queue1_Send_Receive",
"Effect": "Allow",
"Principal": {
"AWS": [
"111122223333"
]
},
"Action": [
"sqs:SendMessage",
"sqs:ReceiveMessage"
],
"Resource": "arn:aws:sqs:*:444455556666:queue1"
}]
}
Exemple 3 : accorder toutes les autorisations à deux Comptes AWS
L'exemple de politique suivant accorde deux Comptes AWS numéros différents (111122223333
et444455556666
) l'autorisation d'utiliser toutes les actions auxquelles Amazon SQS autorise un accès partagé pour la file d'attente nommée 123456789012/queue1
dans la région USA Est (Ohio).
{
"Version": "2012-10-17",
"Id": "Queue1_Policy_UUID",
"Statement": [{
"Sid":"Queue1_AllActions",
"Effect": "Allow",
"Principal": {
"AWS": [
"111122223333",
"444455556666"
]
},
"Action": "sqs:*",
"Resource": "arn:aws:sqs:us-east-2:123456789012:queue1"
}]
}
Exemple 4 : Accorder des autorisations inter-comptes à un rôle et à un nom d'utilisateur
L'exemple de politique suivant accorderole1
, username1
sous un Compte AWS numéro111122223333
, l'autorisation entre comptes d'utiliser toutes les actions auxquelles Amazon SQS autorise un accès partagé pour la file d'attente 123456789012/queue1
nommée dans la région USA Est (Ohio).
Les autorisations intercompte ne s'appliquent pas aux actions suivantes :
{
"Version": "2012-10-17",
"Id": "Queue1_Policy_UUID",
"Statement": [{
"Sid":"Queue1_AllActions",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::111122223333:role/role1",
"arn:aws:iam::111122223333:user/username1"
]
},
"Action": "sqs:*",
"Resource": "arn:aws:sqs:us-east-2:123456789012:queue1"
}]
}
Exemple 5 : Accorder une autorisation à tous les utilisateurs
L'exemple de stratégie suivant accorde à tous les utilisateurs (anonymes) l'autorisation ReceiveMessage
pour la file d'attente dénommée 111122223333/queue1
.
{
"Version": "2012-10-17",
"Id": "Queue1_Policy_UUID",
"Statement": [{
"Sid":"Queue1_AnonymousAccess_ReceiveMessage",
"Effect": "Allow",
"Principal": "*",
"Action": "sqs:ReceiveMessage",
"Resource": "arn:aws:sqs:*:111122223333:queue1"
}]
}
Exemple 6 : Accorder une autorisation limitée dans le temps à tous les utilisateurs
L'exemple de stratégie suivant accorde à tous les utilisateurs (anonymes) l'autorisation ReceiveMessage
pour la file d'attente dénommée 111122223333/queue1
, mais seulement entre 12 h (midi) et 15 h le 31 janvier 2009.
{
"Version": "2012-10-17",
"Id": "Queue1_Policy_UUID",
"Statement": [{
"Sid":"Queue1_AnonymousAccess_ReceiveMessage_TimeLimit",
"Effect": "Allow",
"Principal": "*",
"Action": "sqs:ReceiveMessage",
"Resource": "arn:aws:sqs:*:111122223333:queue1",
"Condition" : {
"DateGreaterThan" : {
"aws:CurrentTime":"2009-01-31T12:00Z"
},
"DateLessThan" : {
"aws:CurrentTime":"2009-01-31T15:00Z"
}
}
}]
}
Exemple 7 : Accorder toutes les autorisations à tous les utilisateurs d'une plage d'adresses CIDR
L'exemple de stratégie suivant accorde à tous les utilisateurs (anonymes) l'autorisation d'utiliser toutes les actions Amazon SQS qui peuvent être partagées pour la file d'attente nommée 111122223333/queue1
, mais uniquement si la demande provient de la plage d'adresses CIDR 192.0.2.0/24
.
{
"Version": "2012-10-17",
"Id": "Queue1_Policy_UUID",
"Statement": [{
"Sid":"Queue1_AnonymousAccess_AllActions_AllowlistIP",
"Effect": "Allow",
"Principal": "*",
"Action": "sqs:*",
"Resource": "arn:aws:sqs:*:111122223333:queue1",
"Condition" : {
"IpAddress" : {
"aws:SourceIp":"192.0.2.0/24"
}
}
}]
}
Exemple 8 : Ajouter les utilisateurs de différentes plages d'adresses CIDR à une liste d'autorisations ou à une liste de blocage pour leur permettre ou les empêcher d'effectuer une action
L'exemple de stratégie suivant comporte deux instructions :
-
La première instruction accorde à tous les utilisateurs (anonymes) de la plage d'adresses CIDR
192.0.2.0/24
(à l'exception de192.0.2.188
) l'autorisation d'utiliser l'actionSendMessage
pour la file d'attente dénommée111122223333
/queue1. -
La deuxième instruction empêche tous les utilisateurs (anonymes) de la plage d'adresses CIDR
12.148.72.0/23
d'utiliser la file d'attente en les ajoutant à une liste de blocage.
{
"Version": "2012-10-17",
"Id": "Queue1_Policy_UUID",
"Statement": [{
"Sid":"Queue1_AnonymousAccess_SendMessage_IPLimit",
"Effect": "Allow",
"Principal": "*",
"Action": "sqs:SendMessage",
"Resource": "arn:aws:sqs:*:111122223333:queue1",
"Condition" : {
"IpAddress" : {
"aws:SourceIp":"192.0.2.0/24"
},
"NotIpAddress" : {
"aws:SourceIp":"192.0.2.188/32"
}
}
}, {
"Sid":"Queue1_AnonymousAccess_AllActions_IPLimit_Deny",
"Effect": "Deny",
"Principal": "*",
"Action": "sqs:*",
"Resource": "arn:aws:sqs:*:111122223333:queue1",
"Condition" : {
"IpAddress" : {
"aws:SourceIp":"12.148.72.0/23"
}
}
}]
}