

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.

# Exemples de base de stratégies Amazon SQS
<a name="sqs-basic-examples-of-sqs-policies"></a>

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
<a name="grant-one-permission-to-one-account"></a>

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).

------
#### [ JSON ]

****  

```
{
   "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
<a name="grant-two-permissions-to-one-account"></a>

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ée`444455556666/queue1`.

------
#### [ JSON ]

****  

```
{
   "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
<a name="grant-all-permissions-to-two-accounts"></a>

L'exemple de politique suivant accorde deux Comptes AWS numéros différents (`111122223333`et`444455556666`) 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).

------
#### [ JSON ]

****  

```
{
   "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
<a name="grant-cross-account-permissions-to-role-and-user-name"></a>

L'exemple de politique suivant accorde`role1`, `username1` sous un Compte AWS numéro`111122223333`, 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 :
+ `[AddPermission](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html)`
+ `[CancelMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CancelMessageMoveTask.html)`
+ `[CreateQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html)`
+ `[DeleteQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteQueue.html)`
+ `[ListMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListMessageMoveTasks.html)`
+ `[ListQueues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueues.html)`
+ `[ListQueueTags](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueueTags.html)`
+ `[RemovePermission](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_RemovePermission.html)`
+ `[SetQueueAttributes](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html)`
+ `[StartMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_StartMessageMoveTask.html)`
+ `[TagQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_TagQueue.html)`
+ `[UntagQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_UntagQueue.html)`

------
#### [ JSON ]

****  

```
{
   "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
<a name="grant-permissions-to-all-users"></a>

L'exemple de stratégie suivant accorde à tous les utilisateurs (anonymes) l'autorisation `ReceiveMessage` pour la file d'attente dénommée `111122223333/queue1`.

------
#### [ JSON ]

****  

```
{
   "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
<a name="grant-time-limited-permission-to-all-users"></a>

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.

------
#### [ JSON ]

****  

```
{
   "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
<a name="grant-all-permissions-to-all-users-in-cidr-range"></a>

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`.

------
#### [ JSON ]

****  

```
{
   "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
<a name="allowlist-blocklist-permissions-for-users-in-different-cidr-ranges"></a>

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 de `192.0.2.188`) l'autorisation d'utiliser l'action `SendMessage` pour la file d'attente dénommée `111122223333`/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.

------
#### [ JSON ]

****  

```
{
   "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"
         }
      }
   }]
}
```

------