

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.

# Comment AWS IoT fonctionne avec IAM
<a name="security_iam_service-with-iam"></a>

Avant d'utiliser IAM pour gérer l'accès à AWS IoT, vous devez connaître les fonctionnalités IAM disponibles. AWS IoT Pour obtenir une vue d'ensemble de la façon dont AWS IoT les autres AWS services fonctionnent avec IAM, consultez la section [AWS Services qui fonctionnent avec IAM](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_aws-services-that-work-with-iam.html) dans le Guide de l'utilisateur d'*IAM*.

**Topics**
+ [AWS IoT politiques basées sur l'identité](#security_iam_service-with-iam-id-based-policies)
+ [AWS IoT politiques basées sur les ressources](#security_iam_service-with-iam-resource-based-policies)
+ [Autorisation basée sur les AWS IoT tags](#security_iam_service-with-iam-tags)
+ [AWS IoT Rôles IAM](#security_iam_service-with-iam-roles)

## AWS IoT politiques basées sur l'identité
<a name="security_iam_service-with-iam-id-based-policies"></a>

Avec les politiques basées sur l'identité IAM, vous pouvez spécifier des actions et ressources autorisées ou refusées, ainsi que les conditions dans lesquelles les actions sont autorisées ou refusées. AWS IoT prend en charge des actions, ressources et clés de condition spécifiques. Pour en savoir plus sur tous les éléments que vous utilisez dans une politique JSON, consultez [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*.

### Actions
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel **principal** peut effectuer **des actions** sur quelles **ressources** et dans quelles **conditions**.

L’élément `Action` d’une politique JSON décrit les actions que vous pouvez utiliser pour autoriser ou refuser l’accès à une politique. Intégration d’actions dans une politique afin d’accorder l’autorisation d’exécuter les opérations associées.

Le tableau suivant répertorie les actions IAM IoT, l' AWS IoT API associée et la ressource manipulée par l'action.


****  

| Actions de politique | AWS IoT API | Ressources | 
| --- | --- | --- | 
| IoT : AcceptCertificateTransfer | AcceptCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  Le compte Compte AWS spécifié dans l'ARN doit être le compte vers lequel le certificat est transféré.   | 
| IoT : AddThingToThingGroup | AddThingToThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : AssociateTargetsWithJob | AssociateTargetsWithJob | Aucune  | 
| IoT : AttachPolicy | AttachPolicy |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` or `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : AttachPrincipalPolicy | AttachPrincipalPolicy |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : AttachSecurityProfile | AttachSecurityProfile |  `arn:aws:iot:region:account-id:securityprofile/security-profile-name` `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT : AttachThingPrincipal | AttachThingPrincipal |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : CancelCertificateTransfer | CancelCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  Le compte Compte AWS spécifié dans l'ARN doit être le compte vers lequel le certificat est transféré.   | 
| IoT : CancelJob | CancelJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT : CancelJobExecution | CancelJobExecution |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : ClearDefaultAuthorizer | ClearDefaultAuthorizer | Aucune | 
| IoT : CreateAuthorizer | CreateAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name`  | 
| IoT : CreateCertificateFromCsr | CreateCertificateFromCsr | \$1 | 
| IoT : CreateDimension | CreateDimension | `arn:aws:iot:region:account-id:dimension/dimension-name` | 
| IoT : CreateJob | CreateJob |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name` `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT : CreateJobTemplate | CreateJobTemplate |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT : CreateKeysAndCertificate | CreateKeysAndCertificate | \$1 | 
| IoT : CreatePolicy | CreatePolicy | `arn:aws:iot:region:account-id:policy/policy-name` | 
| IoT : CreatePolicyVersion | CreatePolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  Il doit s'agir d'une AWS IoT politique et non d'une politique IAM.   | 
| IoT : CreateRoleAlias | CreateRoleAlias |  (paramètre : roleAlias) `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT : CreateSecurityProfile | CreateSecurityProfile |  `arn:aws:iot:region:account-id:securityprofile/security-profile-name` `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT : CreateThing | CreateThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : CreateThingGroup | CreateThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` pour le groupe en cours de création et pour le groupe parent, si utilisé  | 
| IoT : CreateThingType | CreateThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT : CreateTopicRule | CreateTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : DeleteAuthorizer | DeleteAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-name`  | 
| IoT : Supprimer CACertificate | Supprimer CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT : DeleteCertificate | DeleteCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : DeleteDimension | DeleteDimension |  `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT : DeleteJob | DeleteJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT : DeleteJobTemplate | DeleteJobTemplate |  `arn:aws:iot:region:account-id:job/job-template-id`  | 
| IoT : DeleteJobExecution | DeleteJobExecution |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : DeletePolicy | DeletePolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : DeletePolicyVersion | DeletePolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : DeleteRegistrationCode | DeleteRegistrationCode | \$1 | 
| IoT : DeleteRoleAlias | DeleteRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT : DeleteSecurityProfile | DeleteSecurityProfile |  `arn:aws:iot:region:account-id:securityprofile/security-profile-name` `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT : DeleteThing | DeleteThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : DeleteThingGroup | DeleteThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : DeleteThingType | DeleteThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT : DeleteTopicRule | DeleteTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : DeleteV2 LoggingLevel | Supprimer la version 2 LoggingLevel |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : DeprecateThingType | DeprecateThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT : DescribeAuthorizer | DescribeAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name` (paramètre : authorizerName) Aucune  | 
| IoT : décrire CACertificate | Décrivez CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT : DescribeCertificate | DescribeCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : DescribeDefaultAuthorizer | DescribeDefaultAuthorizer | Aucune  | 
| IoT : DescribeEndpoint | DescribeEndpoint | \$1 | 
| IoT : DescribeEventConfigurations | DescribeEventConfigurations | Aucune  | 
| IoT : DescribeIndex | DescribeIndex |  `arn:aws:iot:region:account-id:index/index-name`  | 
| IoT : DescribeJob | DescribeJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT : DescribeJobExecution | DescribeJobExecution | Aucune | 
| IoT : DescribeJobTemplate | DescribeJobTemplate |  `arn:aws:iot:region:account-id:job/job-template-id`  | 
| IoT : DescribeRoleAlias | DescribeRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT : DescribeThing | DescribeThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : DescribeThingGroup | DescribeThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : DescribeThingRegistrationTask | DescribeThingRegistrationTask | Aucune | 
| IoT : DescribeThingType | DescribeThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT : DetachPolicy | DetachPolicy |  `arn:aws:iot:region:account-id:cert/cert-id` or `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : DetachPrincipalPolicy | DetachPrincipalPolicy |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : DetachSecurityProfile | DetachSecurityProfile |  `arn:aws:iot:region:account-id:securityprofile/security-profile-name` `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT : DetachThingPrincipal | DetachThingPrincipal |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : DisableTopicRule | DisableTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : EnableTopicRule | EnableTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : GetEffectivePolicies | GetEffectivePolicies |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : GetIndexingConfiguration | GetIndexingConfiguration | Aucune | 
| IoT : GetJobDocument | GetJobDocument |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT : GetLoggingOptions | GetLoggingOptions | \$1 | 
| IoT : GetPolicy | GetPolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : GetPolicyVersion | GetPolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : GetRegistrationCode | GetRegistrationCode | \$1 | 
| IoT : GetTopicRule | GetTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : ListAttachedPolicies | ListAttachedPolicies |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` or `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : ListAuthorizers | ListAuthorizers | Aucune | 
| IoT : liste CACertificates | Liste CACertificates | \$1 | 
| IoT : ListCertificates | ListCertificates | \$1 | 
| Lieu : ListCertificatesBy CA | ListCertificatesByCA | \$1 | 
| IoT : ListIndices | ListIndices | Aucune | 
| IoT : ListJobExecutionsForJob | ListJobExecutionsForJob | Aucune | 
| IoT : ListJobExecutionsForThing | ListJobExecutionsForThing | Aucune | 
| IoT : ListJobs | ListJobs |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` si le thingGroupName paramètre est utilisé  | 
| IoT : ListJobTemplates | ListJobs | Aucune | 
| IoT : ListOutgoingCertificates | ListOutgoingCertificates | \$1 | 
| IoT : ListPolicies | ListPolicies | \$1 | 
| IoT : ListPolicyPrincipals | ListPolicyPrincipals | \$1 | 
| IoT : ListPolicyVersions | ListPolicyVersions |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : ListPrincipalPolicies | ListPrincipalPolicies |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : ListPrincipalThings | ListPrincipalThings |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : ListRoleAliases | ListRoleAliases | Aucune | 
| IoT : ListTargetsForPolicy | ListTargetsForPolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : ListThingGroups | ListThingGroups | Aucune | 
| IoT : ListThingGroupsForThing | ListThingGroupsForThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : ListThingPrincipals | ListThingPrincipals |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : ListThingRegistrationTaskReports | ListThingRegistrationTaskReports | Aucune | 
| IoT : ListThingRegistrationTasks | ListThingRegistrationTasks | Aucune | 
| IoT : ListThingTypes | ListThingTypes | \$1 | 
| IoT : ListThings | ListThings | \$1 | 
| IoT : ListThingsInThingGroup | ListThingsInThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : ListTopicRules | ListTopicRules | \$1 | 
| IoT : Liste V2 LoggingLevels | Liste V2 LoggingLevels | Aucune | 
| IoT : S'inscrire CACertificate | S'inscrire CACertificate | \$1 | 
| IoT : RegisterCertificate | RegisterCertificate | \$1 | 
| IoT : RegisterThing | RegisterThing | Aucune | 
| IoT : RejectCertificateTransfer | RejectCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : RemoveThingFromThingGroup | RemoveThingFromThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : ReplaceTopicRule | ReplaceTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : SearchIndex | SearchIndex |  `arn:aws:iot:region:account-id:index/index-id`  | 
| IoT : SetDefaultAuthorizer | SetDefaultAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name`  | 
| IoT : SetDefaultPolicyVersion | SetDefaultPolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : SetLoggingOptions | SetLoggingOptions |  `arn:aws:iot:region:account-id:role/role-name`  | 
| IoT : SetV2 LoggingLevel | Set V2 LoggingLevel |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : SetV2 LoggingOptions | Set V2 LoggingOptions |  `arn:aws:iot:region:account-id:role/role-name`  | 
| IoT : StartThingRegistrationTask | StartThingRegistrationTask | Aucune | 
| IoT : StopThingRegistrationTask | StopThingRegistrationTask | Aucune | 
| IoT : TestAuthorization | TestAuthorization |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : TestInvokeAuthorizer | TestInvokeAuthorizer | Aucune | 
| IoT : TransferCertificate | TransferCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : UpdateAuthorizer | UpdateAuthorizer |  `arn:aws:iot:region:account-id:authorizerfunction/authorizer-function-name`  | 
| IoT : mise à jour CACertificate | Mettre à jour CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT : UpdateCertificate | UpdateCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : UpdateDimension | UpdateDimension |  `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT : UpdateEventConfigurations | UpdateEventConfigurations | Aucune | 
| IoT : UpdateIndexingConfiguration | UpdateIndexingConfiguration | Aucune | 
| IoT : UpdateRoleAlias | UpdateRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT : UpdateSecurityProfile | UpdateSecurityProfile |  `arn:aws:iot:region:account-id:securityprofile/security-profile-name` `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT : UpdateThing | UpdateThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : UpdateThingGroup | UpdateThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : UpdateThingGroupsForThing | UpdateThingGroupsForThing |  `arn:aws:iot:region:account-id:thing/thing-name` `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 

Les actions de politique en AWS IoT cours utilisent le préfixe suivant avant l'action :`iot:`. Par exemple, pour autoriser une personne à répertorier tous les objets IoT enregistrés dans son Compte AWS `ListThings` API, vous devez inclure l'`iot:ListThings`action dans sa politique. Les déclarations de politique doivent inclure un `NotAction` élément `Action` ou. AWS IoT définit son propre ensemble d'actions décrivant les tâches que vous pouvez effectuer avec ce service.

Pour spécifier plusieurs actions dans une seule déclaration, séparez-les par des virgules comme suit :

```
"Action": [
      "ec2:action1",
      "ec2:action2"
```

Vous pouvez aussi spécifier plusieurs actions à l’aide de caractères génériques (\$1). Par exemple, pour spécifier toutes les actions qui commencent par le mot `Describe`, incluez l’action suivante :

```
"Action": "iot:Describe*"
```

Pour consulter la liste des AWS IoT actions, reportez-vous à la section [Actions définies par AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) dans le *guide de l'utilisateur IAM*.

#### Actions du Device Advisor
<a name="security_iam_service-actions-device-advisor"></a>

Le tableau suivant répertorie les actions IAM IoT Device Advisor, l'API Device Advisor AWS IoT associée et la ressource manipulée par l'action.


****  

| Actions de politique | AWS IoT API | Ressources | 
| --- | --- | --- | 
| conseiller pour appareils IoT : CreateSuiteDefinition | CreateSuiteDefinition |  Aucune  | 
| conseiller pour appareils IoT : DeleteSuiteDefinition | DeleteSuiteDefinition |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`  | 
| conseiller pour appareils IoT : GetSuiteDefinition | GetSuiteDefinition |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`  | 
| conseiller pour appareils IoT : GetSuiteRun | GetSuiteRun |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-run-id`  | 
| conseiller pour appareils IoT : GetSuiteRunReport | GetSuiteRunReport |  `arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`  | 
| conseiller pour appareils IoT : ListSuiteDefinitions | ListSuiteDefinitions | Aucune | 
| conseiller pour appareils IoT : ListSuiteRuns | ListSuiteRuns |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`  | 
| conseiller pour appareils IoT : ListTagsForResource | ListTagsForResource |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id` `arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`  | 
| conseiller pour appareils IoT : StartSuiteRun | StartSuiteRun |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`  | 
| conseiller pour appareils IoT : TagResource | TagResource |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id` `arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`  | 
| conseiller pour appareils IoT : UntagResource | UntagResource |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id` `arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`  | 
| conseiller pour appareils IoT : UpdateSuiteDefinition | UpdateSuiteDefinition |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`  | 
| conseiller pour appareils IoT : StopSuiteRun | StopSuiteRun |  `arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`  | 

Les actions de politique dans AWS IoT Device Advisor utilisent le préfixe suivant avant l'action :`iotdeviceadvisor:`. Par exemple, pour autoriser quelqu'un à répertorier toutes les définitions de suites enregistrées dans son Compte AWS ListSuiteDefinitions API, vous devez inclure l'`iotdeviceadvisor:ListSuiteDefinitions`action dans sa politique.

### Ressources
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel **principal** peut effectuer **des actions** sur quelles **ressources** et dans quelles **conditions**.

L’élément de politique JSON `Resource` indique le ou les objets auxquels l’action s’applique. Il est recommandé de définir une ressource à l’aide de son [Amazon Resource Name (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). Pour les actions qui ne sont pas compatibles avec les autorisations de niveau ressource, utilisez un caractère générique (\$1) afin d’indiquer que l’instruction s’applique à toutes les ressources.

```
"Resource": "*"
```


**AWS IoT ressources**  

| Actions de politique | AWS IoT API | Ressources | 
| --- | --- | --- | 
| IoT : AcceptCertificateTransfer | AcceptCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  Le compte Compte AWS spécifié dans l'ARN doit être le compte vers lequel le certificat est transféré.   | 
| IoT : AddThingToThingGroup | AddThingToThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : AssociateTargetsWithJob | AssociateTargetsWithJob | Aucune  | 
| IoT : AttachPolicy | AttachPolicy | `arn:aws:iot:region:account-id:thinggroup/thing-group-name` or `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : AttachPrincipalPolicy | AttachPrincipalPolicy |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : AttachThingPrincipal | AttachThingPrincipal |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : CancelCertificateTransfer | CancelCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  Le compte Compte AWS spécifié dans l'ARN doit être le compte vers lequel le certificat est transféré.   | 
| IoT : CancelJob | CancelJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT : CancelJobExecution | CancelJobExecution |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : ClearDefaultAuthorizer | ClearDefaultAuthorizer | Aucune | 
| IoT : CreateAuthorizer | CreateAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name`  | 
| IoT : CreateCertificateFromCsr | CreateCertificateFromCsr | \$1 | 
| IoT : CreateJob | CreateJob |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name` `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT : CreateJobTemplate | CreateJobTemplate |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT : CreateKeysAndCertificate | CreateKeysAndCertificate | \$1 | 
| IoT : CreatePolicy | CreatePolicy | `arn:aws:iot:region:account-id:policy/policy-name` | 
| CreatePolicyVersion | IoT : CreatePolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  Il doit s'agir d'une AWS IoT politique et non d'une politique IAM.   | 
| IoT : CreateRoleAlias | CreateRoleAlias |  (paramètre : roleAlias) `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT : CreateThing | CreateThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : CreateThingGroup | CreateThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` pour le groupe en cours de création et pour le groupe parent, si utilisé  | 
| IoT : CreateThingType | CreateThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT : CreateTopicRule | CreateTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : DeleteAuthorizer | DeleteAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-name`  | 
| IoT : Supprimer CACertificate | Supprimer CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT : DeleteCertificate | DeleteCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : DeleteJob | DeleteJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT : DeleteJobExecution | DeleteJobExecution |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : DeleteJobTemplate | DeleteJobTemplate |  `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT : DeletePolicy | DeletePolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : DeletePolicyVersion | DeletePolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : DeleteRegistrationCode | DeleteRegistrationCode | \$1 | 
| IoT : DeleteRoleAlias | DeleteRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT : DeleteThing | DeleteThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : DeleteThingGroup | DeleteThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : DeleteThingType | DeleteThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT : DeleteTopicRule | DeleteTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : DeleteV2 LoggingLevel | Supprimer la version 2 LoggingLevel |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : DeprecateThingType | DeprecateThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT : DescribeAuthorizer | DescribeAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name` (paramètre : authorizerName) Aucune  | 
| IoT : décrire CACertificate | Décrivez CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT : DescribeCertificate | DescribeCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : DescribeDefaultAuthorizer | DescribeDefaultAuthorizer | Aucune  | 
| IoT : DescribeEndpoint | DescribeEndpoint | \$1 | 
| IoT : DescribeEventConfigurations | DescribeEventConfigurations | Aucune  | 
| IoT : DescribeIndex | DescribeIndex |  `arn:aws:iot:region:account-id:index/index-name`  | 
| IoT : DescribeJob | DescribeJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT : DescribeJobExecution | DescribeJobExecution | Aucune | 
| IoT : DescribeJobTemplate | DescribeJobTemplate |  `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT : DescribeRoleAlias | DescribeRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT : DescribeThing | DescribeThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : DescribeThingGroup | DescribeThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : DescribeThingRegistrationTask | DescribeThingRegistrationTask | Aucune | 
| IoT : DescribeThingType | DescribeThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT : DetachPolicy | DetachPolicy |  `arn:aws:iot:region:account-id:cert/cert-id` or `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : DetachPrincipalPolicy | DetachPrincipalPolicy |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : DetachThingPrincipal | DetachThingPrincipal |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : DisableTopicRule | DisableTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : EnableTopicRule | EnableTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : GetEffectivePolicies | GetEffectivePolicies |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : GetIndexingConfiguration | GetIndexingConfiguration | Aucune | 
| IoT : GetJobDocument | GetJobDocument |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT : GetLoggingOptions | GetLoggingOptions | \$1 | 
| IoT : GetPolicy | GetPolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : GetPolicyVersion | GetPolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : GetRegistrationCode | GetRegistrationCode | \$1 | 
| IoT : GetTopicRule | GetTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : ListAttachedPolicies | ListAttachedPolicies |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` or `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : ListAuthorizers | ListAuthorizers | Aucune | 
| IoT : liste CACertificates | Liste CACertificates | \$1 | 
| IoT : ListCertificates | ListCertificates | \$1 | 
| Lieu : ListCertificatesBy CA | ListCertificatesByCA | \$1 | 
| IoT : ListIndices | ListIndices | Aucune | 
| IoT : ListJobExecutionsForJob | ListJobExecutionsForJob | Aucune | 
| IoT : ListJobExecutionsForThing | ListJobExecutionsForThing | Aucune | 
| IoT : ListJobs | ListJobs |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` si le thingGroupName paramètre est utilisé  | 
| IoT : ListJobTemplates | ListJobTemplates | Aucune | 
| IoT : ListOutgoingCertificates | ListOutgoingCertificates | \$1 | 
| IoT : ListPolicies | ListPolicies | \$1 | 
| IoT : ListPolicyPrincipals | ListPolicyPrincipals |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : ListPolicyVersions | ListPolicyVersions |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : ListPrincipalPolicies | ListPrincipalPolicies |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : ListPrincipalThings | ListPrincipalThings |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : ListRoleAliases | ListRoleAliases | Aucune | 
| IoT : ListTargetsForPolicy | ListTargetsForPolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : ListThingGroups | ListThingGroups | Aucune | 
| IoT : ListThingGroupsForThing | ListThingGroupsForThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : ListThingPrincipals | ListThingPrincipals |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : ListThingRegistrationTaskReports | ListThingRegistrationTaskReports | Aucune | 
| IoT : ListThingRegistrationTasks | ListThingRegistrationTasks | Aucune | 
| IoT : ListThingTypes | ListThingTypes | \$1 | 
| IoT : ListThings | ListThings | \$1 | 
| IoT : ListThingsInThingGroup | ListThingsInThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : ListTopicRules | ListTopicRules | \$1 | 
| IoT : Liste V2 LoggingLevels | Liste V2 LoggingLevels | Aucune | 
| IoT : S'inscrire CACertificate | S'inscrire CACertificate | \$1 | 
| IoT : RegisterCertificate | RegisterCertificate | \$1 | 
| IoT : RegisterThing | RegisterThing | Aucune | 
| IoT : RejectCertificateTransfer | RejectCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : RemoveThingFromThingGroup | RemoveThingFromThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : ReplaceTopicRule | ReplaceTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT : SearchIndex | SearchIndex |  `arn:aws:iot:region:account-id:index/index-id`  | 
| IoT : SetDefaultAuthorizer | SetDefaultAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name`  | 
| IoT : SetDefaultPolicyVersion | SetDefaultPolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT : SetLoggingOptions | SetLoggingOptions | \$1 | 
| IoT : SetV2 LoggingLevel | Set V2 LoggingLevel | \$1 | 
| IoT : SetV2 LoggingOptions | Set V2 LoggingOptions | \$1 | 
| IoT : StartThingRegistrationTask | StartThingRegistrationTask | Aucune | 
| IoT : StopThingRegistrationTask | StopThingRegistrationTask | Aucune | 
| IoT : TestAuthorization | TestAuthorization |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : TestInvokeAuthorizer | TestInvokeAuthorizer | Aucune | 
| IoT : TransferCertificate | TransferCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : UpdateAuthorizer | UpdateAuthorizer |  `arn:aws:iot:region:account-id:authorizerfunction/authorizer-function-name`  | 
| IoT : mise à jour CACertificate | Mettre à jour CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT : UpdateCertificate | UpdateCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT : UpdateEventConfigurations | UpdateEventConfigurations | Aucune | 
| IoT : UpdateIndexingConfiguration | UpdateIndexingConfiguration | Aucune | 
| IoT : UpdateRoleAlias | UpdateRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT : UpdateThing | UpdateThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT : UpdateThingGroup | UpdateThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT : UpdateThingGroupsForThing | UpdateThingGroupsForThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 

Pour plus d'informations sur le format de ARNs, consultez [Amazon Resource Names (ARNs) et AWS Service Namespaces](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html).

Certaines AWS IoT actions, telles que celles relatives à la création de ressources, ne peuvent pas être effectuées sur une ressource spécifique. Dans ces cas-là, vous devez utiliser le caractère générique (\$1).

```
"Resource": "*"
```

Pour consulter la liste des types de AWS IoT ressources et leurs caractéristiques ARNs, reportez-vous à la section [Ressources définies par AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-resources-for-iam-policies) dans le *guide de l'utilisateur IAM*. Pour savoir grâce à quelles actions vous pouvez spécifier l’ARN de chaque ressource, consultez [Actions définies par AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions).

#### ressources Device Advisor
<a name="security_iam_service-device-advisor-resources"></a>

Pour définir des restrictions au niveau des ressources pour les politiques IAM de AWS IoT Device Advisor, utilisez les formats ARN des ressources suivants pour les définitions et les exécutions de suites.

Format ARN de la ressource de définition de suite  
`arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`

Format ARN de la ressource d'exécution de la suite  
`arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`

### Clés de condition
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel **principal** peut effectuer **des actions** sur quelles **ressources** et dans quelles **conditions**.

L’élément `Condition` indique à quel moment les instructions s’exécutent en fonction de critères définis. Vous pouvez créer des expressions conditionnelles qui utilisent des [opérateurs de condition](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), tels que les signes égal ou inférieur à, pour faire correspondre la condition de la politique aux valeurs de la demande. Pour voir toutes les clés de condition AWS globales, voir les clés de [contexte de condition AWS globales](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) dans le *guide de l'utilisateur IAM*.

AWS IoT définit son propre ensemble de clés de condition et prend également en charge l'utilisation de certaines clés de condition globales. Pour voir toutes les clés de condition AWS globales, consultez la section [Clés contextuelles de condition AWS globale](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_condition-keys.html) dans le *guide de l'utilisateur IAM*. 


**AWS IoT clés de condition**  

| AWS IoT clés de condition | Description | Type | 
| --- | --- | --- | 
| aws:RequestTag/\$1\$1tag-key\$1 | Clé de balise présente dans la demande envoyée par l'utilisateur à AWS IoT. | String | 
| aws:ResourceTag/\$1\$1tag-key\$1 | Le composant clé d'une balise attachée à une AWS IoT ressource. | String | 
| aws:TagKeys | Liste de tous les noms de clés de balise associés à la ressource de la demande. | String | 

Pour consulter la liste des clés de AWS IoT condition, reportez-vous à la section [Clés de AWS IoT condition](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-policy-keys) du *guide de l'utilisateur IAM*. Pour savoir avec quelles actions et ressources vous pouvez utiliser une clé de condition, voir [Actions définies par AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions).

### Exemples
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



Pour consulter des exemples de politiques AWS IoT basées sur l'identité, consultez. [AWS IoT exemples de politiques basées sur l'identité](security_iam_id-based-policy-examples.md)

## AWS IoT politiques basées sur les ressources
<a name="security_iam_service-with-iam-resource-based-policies"></a>

Les politiques basées sur les ressources sont des documents de politique JSON qui spécifient les actions qu'un principal spécifié peut effectuer sur la AWS IoT ressource et dans quelles conditions.

AWS IoT ne prend pas en charge les politiques basées sur les ressources IAM. Il soutient toutefois les politiques AWS IoT basées sur les ressources. Pour de plus amples informations, veuillez consulter [AWS IoT Core politiques](iot-policies.md).

## Autorisation basée sur les AWS IoT tags
<a name="security_iam_service-with-iam-tags"></a>

Vous pouvez associer des balises aux AWS IoT ressources ou transmettre des balises dans une demande à AWS IoT. Pour contrôler l’accès basé sur des étiquettes, vous devez fournir les informations d’étiquette dans l’[élément de condition](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_elements_condition.html) d’une politique utilisant les clés de condition `iot:ResourceTag/key-name`, `aws:RequestTag/key-name` ou `aws:TagKeys`. Pour de plus amples informations, veuillez consulter [Utilisation des balises avec des politiques IAM](tagging-iot-iam.md). Pour plus d'informations sur le balisage AWS IoT des ressources, consultez[Marquer vos ressources AWS IoT](tagging-iot.md).

Pour afficher un exemple de stratégie basée sur l'identité permettant de limiter l'accès à une ressource basée sur les balises de cette ressource, veuillez consulter [Afficher AWS IoT les ressources en fonction des balises](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-view-thing-tags).

## AWS IoT Rôles IAM
<a name="security_iam_service-with-iam-roles"></a>

Un [rôle IAM](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles.html) est une entité au sein de vous Compte AWS qui possède des autorisations spécifiques.

### Utilisation d'informations d'identification temporaires avec AWS IoT
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

Vous pouvez utiliser des informations d’identification temporaires pour vous connecter à l’aide de la fédération, endosser un rôle IAM ou encore pour endosser un rôle intercompte. Vous obtenez des informations d'identification de sécurité temporaires en appelant des opérations d' AWS STS API telles que [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)ou [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html). 

AWS IoT prend en charge l'utilisation d'informations d'identification temporaires. 

### Rôles liés à un service
<a name="security_iam_service-with-iam-roles-service-linked"></a>

Les [rôles liés aux](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles_terms-and-concepts.html#iam-term-service-linked-role) AWS services permettent aux services d'accéder aux ressources d'autres services pour effectuer une action en votre nom. Les rôles liés à un service s’affichent dans votre compte IAM et sont la propriété du service. Un administrateur IAM peut consulter, mais ne peut pas modifier, les autorisations concernant les rôles liés à un service.

AWS IoT ne prend pas en charge les rôles liés à un service.

### Rôles du service
<a name="security_iam_service-with-iam-roles-service"></a>

Cette fonction permet à un service d’endosser une [fonction du service](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles_terms-and-concepts.html#iam-term-service-role) en votre nom. Ce rôle autorise le service à accéder à des ressources d’autres services pour effectuer une action en votre nom. Les rôles de service s’affichent dans votre compte IAM et sont la propriété du compte. Cela signifie qu’un administrateur IAM peut modifier les autorisations associées à ce rôle. Toutefois, une telle action peut perturber le bon fonctionnement du service.