

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.

# Autoriser vos appareils à utiliser AWS IoT Jobs en toute sécurité sur le plan de données
<a name="iot-data-plane-jobs"></a>

Pour autoriser vos appareils à interagir en toute sécurité avec AWS IoT Jobs sur le plan de données, vous devez utiliser AWS IoT Core des politiques. AWS IoT Core les politiques pour les tâches sont des documents JSON contenant des déclarations de politique. Ces politiques utilisent également des éléments *Effet*, *Action* et *Ressource*, et suivent une convention similaire à celle des politiques IAM. Pour de plus amples informations sur les éléments, veuillez consulter [Références des éléments de politique JSON IAM](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_elements.html) dans le *Guide de l’utilisateur IAM*.

Les politiques peuvent être utilisées avec les protocoles MQTT et HTTPS et doivent utiliser l’authentification mutuelle TCP ou TLS pour authentifier les appareils. L’exemple suivant montre comment utiliser ces politiques dans les différents protocoles de communication.

**Avertissement**  
Nous vous recommandons de ne pas utiliser d'autorisations génériques, comme `"Action": ["iot:*"]` dans vos politiques ou AWS IoT Core politiques IAM. L’utilisation d’autorisations génériques n’est pas une bonne pratique de sécurité recommandée. Pour plus d'informations, consultez [AWS IoT la politique trop permissive](https://docs.aws.amazon.com/iot-device-defender/latest/devguide/audit-chk-iot-policy-permissive.html). 

## AWS IoT Core politiques pour le protocole MQTT
<a name="iot-jobs-data-mqtt"></a>

AWS IoT Core les politiques du protocole MQTT vous accordent l'autorisation d'utiliser les actions de l'API MQTT du dispositif de tâches. Les opérations de l’API MQTT sont utilisées pour travailler avec des rubriques MQTT réservées aux commandes de tâches. Pour plus d'informations sur ces opérations d’API, veuillez consulter [Opérations de l’API MQTT de l’appareil des tâches](jobs-mqtt-api.md).

Les politiques MQTT utilisent des actions politiques telles que `iot:Connect`, `iot:Publish`, `iot:Subscribe` et `iot:Receieve` pour travailler avec les rubriques des tâches. Ces politiques vous permettent de vous connecter à l’agent de messages, de vous abonner aux sujets MQTT des jobs et d’envoyer et de recevoir des messages MQTT entre vos appareils et le cloud. Pour plus d'informations sur ces actions, consultez [AWS IoT Core actions politiques](iot-policy-actions.md).

Pour plus d'informations sur les rubriques relatives aux AWS IoT emplois, consultez[Rubriques de tâche](reserved-topics.md#reserved-topics-job).

### Exemple de politique MQTT de base
<a name="iot-jobs-mqtt-example"></a>

L’exemple suivant montre comment vous pouvez utiliser `iot:Publish` et `iot:Subscribe` pour publier et vous abonner à des tâches et à des exécutions de tâches.

Dans l’exemple, remplacez :
+ *region*avec votre Région AWS, par exemple`us-east-1`.
+ *account-id*avec votre Compte AWS numéro, par exemple`57EXAMPLE833`.
+ *thing-name*avec le nom de l'objet IoT pour lequel vous ciblez des emplois, par exemple`MyIoTThing`.

****  

```
{
    "Version":"2012-10-17",		 	 	 

    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iot:Publish",
                "iot:Subscribe"
            ],
            "Resource": [
            "arn:aws:iot:us-east-1:123456789012:topic/$aws/events/job/*",
    "arn:aws:iot:us-east-1:123456789012:topic/$aws/events/jobExecution/*",
    "arn:aws:iot:us-east-1:123456789012:topic/$aws/things/thing-123/jobs/*"
            ]
        }
    ]
}
```

## AWS IoT Core politiques pour le protocole HTTPS
<a name="iot-jobs-data-http"></a>

AWS IoT Core les politiques du plan de données peuvent également utiliser le protocole HTTPS avec le mécanisme d'authentification TLS pour autoriser vos appareils. Sur le plan de données, les politiques utilisent le préfixe `iotjobsdata:` pour autoriser les opérations d’API de tâches que vos appareils peuvent effectuer. Par exemple, l’action de politique `iotjobsdata:DescribeJobExecution` accorde à l’utilisateur l’autorisation d’utiliser l’API [https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_DescribeJobExecution.html](https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_DescribeJobExecution.html).

**Note**  
Les actions de politique du plan de données doivent utiliser le préfixe `iotjobsdata:`. Sur le plan de contrôle, les actions doivent utiliser le préfixe `iot:`. Pour un exemple de politique IAM lorsque des actions de politique du plan de contrôle et du plan de données sont utilisées à la fois, veuillez consulter [Exemple de politique IAM pour le plan de contrôle et le plan de données](iam-policy-users-jobs.md#iam-data-plane-example2). 

### Actions de politique
<a name="iot-data-plane-actions"></a>

Le tableau suivant présente une liste des actions AWS IoT Core politiques et des autorisations permettant d'autoriser les appareils à utiliser les actions de l'API. Pour obtenir la liste des opérations d’API que vous pouvez effectuer dans le plan de données, veuillez consulter [API HTTP de l’appareil de tâches](jobs-http-device-api.md).

**Note**  
Ces actions de stratégie d’exécution de tâche s’appliquent uniquement pour le point de terminaison HTTP TLS. Si vous utilisez le point de terminaison MQTT, vous devez utiliser les actions de politique MQTT précédemment.


**AWS IoT Core actions politiques sur le plan de données**  

| Actions de politique | Opération API | Types de ressources | Description | 
| --- | --- | --- | --- | 
| iotjobsdata:DescribeJobExecution | [https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_DescribeJobExecution.html](https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_DescribeJobExecution.html) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/iot/latest/developerguide/iot-data-plane-jobs.html)  | Représente l’autorisation de récupérer une exécution de tâch. L'autorisation iotjobsdata:DescribeJobExecution est vérifiée chaque fois qu'une demande est faite de récupérer une exécution de tâche. | 
| iotjobsdata:GetPendingJobExecutions | [https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_GetPendingJobExecutions.html](https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_GetPendingJobExecutions.html) | thing | Représente l'autorisation de récupérer la liste des tâches qui ne sont pas à un statut terminal pour un objet. L'autorisation iotjobsdata:GetPendingJobExecutions est vérifiée chaque fois qu'une demande est faite de récupérer la liste. | 
| iotjobsdata:StartNextPendingJobExecution | [https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_GetPendingJobExecutions.html](https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_GetPendingJobExecutions.html) | thing | Représente l'autorisation d'obtenir et de démarrer l'exécution de tâche en attente suivante pour un objet. C’est-à-dire de mettre à jour une exécution de tâche en la faisant passer du statut QUEUED au statut IN\$1PROGRESS.) L'autorisation iotjobsdata:StartNextPendingJobExecution est vérifiée chaque fois qu'une demande est faite de démarrer l'exécution de tâche en attente suivante. | 
| iotjobsdata:UpdateJobExecution | [https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_UpdateJobExecution.html](https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_UpdateJobExecution.html) | thing | Représente l'autorisation de mettre à jour une exécution de tâche. L'autorisation iotjobsdata:UpdateJobExecution est vérifiée chaque fois qu'une demande est faite de mettre à jour l'état d'une exécution de tâche. | 

### Exemple de politique de base
<a name="iot-data-plane-example"></a>

Voici un exemple de AWS IoT Core politique qui autorise l'exécution des actions sur les opérations de l'API du plan de données pour n'importe quelle ressource. Vous pouvez étendre votre politique à une ressource spécifique, telle qu’un objet IoT. Dans votre exemple, remplacez :
+ *region*avec votre Région AWS tel que`us-east-1`.
+ *account-id*avec votre Compte AWS numéro, par exemple`57EXAMPLE833`.
+ *thing-name*avec le nom de l'IoT, tel que`MyIoTthing`.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "iotjobsdata:GetPendingJobExecutions",
                "iotjobsdata:StartNextPendingJobExecution",
                "iotjobsdata:DescribeJobExecution",
                "iotjobsdata:UpdateJobExecution"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:iot:us-east-1:123456789012:thing/thing-123"
        }
    ]
}
```

Par exemple, vous devez utiliser ces politiques lorsque vos appareils IoT utilisent une politique AWS IoT Core pour accéder à l’une de ces opérations d’API, comme dans l’exemple d’API `DescribeJobExecution` suivant :

```
GET /things/thingName/jobs/jobId?executionNumber=executionNumber&includeJobDocument=includeJobDocument&namespaceId=namespaceId HTTP/1.1
```