

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Come AWS IoT funziona con IAM
<a name="security_iam_service-with-iam"></a>

Prima di utilizzare IAM per gestire l'accesso a AWS IoT, è necessario comprendere con quali funzionalità IAM è disponibile l'uso AWS IoT. Per avere una visione di alto livello di come AWS IoT e altri AWS servizi funzionano con IAM, consulta [AWS Services That Work with IAM nella IAM](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_aws-services-that-work-with-iam.html) *User Guide*.

**Topics**
+ [AWS IoT politiche basate sull'identità](#security_iam_service-with-iam-id-based-policies)
+ [AWS IoT politiche basate sulle risorse](#security_iam_service-with-iam-resource-based-policies)
+ [Autorizzazione basata su tag AWS IoT](#security_iam_service-with-iam-tags)
+ [AWS IoT Ruoli IAM](#security_iam_service-with-iam-roles)

## AWS IoT politiche basate sull'identità
<a name="security_iam_service-with-iam-id-based-policies"></a>

Con le policy basate su identità IAM, puoi specificare operazioni e risorse consentite o rifiutate, nonché le condizioni in base alle quali le operazioni sono consentite o rifiutate. AWS IoT supporta operazioni, risorse e chiavi di condizione specifiche. Per informazioni su tutti gli elementi utilizzati in una policy JSON, consulta [Documentazione di riferimento degli elementi delle policy JSON IAM](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_elements.html) nella *Guida per l'utente IAM*.

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

Gli amministratori possono utilizzare le policy AWS JSON per specificare chi ha accesso a cosa. In altre parole, quale **entità principale** può eseguire **operazioni** su quali **risorse** e in quali **condizioni**.

L’elemento `Action` di una policy JSON descrive le operazioni che è possibile utilizzare per consentire o negare l’accesso in una policy. Includere le operazioni in una policy per concedere le autorizzazioni di eseguire l’operazione associata.

La tabella seguente elenca le azioni IAM IoT, l' AWS IoT API associata e la risorsa manipolata dall'azione.


****  

| Operazioni di policy | AWS IoT API | Resources | 
| --- | --- | --- | 
| IoT: AcceptCertificateTransfer | AcceptCertificateTransfer | `arn:aws:iot:{{region}}:{{account-id}}:cert/{{cert-id}}` Il Account AWS valore specificato nell'ARN deve essere l'account su cui viene trasferito il certificato.  | 
| IoT: AddThingToThingGroup | AddThingToThingGroup | `arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:thing/{{thing-name}}` | 
| IoT: AssociateTargetsWithJob | AssociateTargetsWithJob | nessuno  | 
| IoT: AttachPolicy | AttachPolicy | `arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}`<br />or<br />`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}}`<br />`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}}` Il Account AWS valore specificato nell'ARN deve essere l'account su cui viene trasferito il certificato.  | 
| IoT: CancelJob | CancelJob | `arn:aws:iot:{{region}}:{{account-id}}:job/{{job-id}}` | 
| IoT: CancelJobExecution | CancelJobExecution | `arn:aws:iot:{{region}}:{{account-id}}:job/{{job-id}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:thing/{{thing-name}}` | 
| IoT: ClearDefaultAuthorizer | ClearDefaultAuthorizer | Nessuno | 
| IoT: CreateAuthorizer | CreateAuthorizer | `arn:aws:iot:{{region}}:{{account-id}}:authorizer/{{authorizer-function-name}}` | 
| IoT: CreateCertificateFromCsr | CreateCertificateFromCsr | \* | 
| IoT: CreateDimension | CreateDimension | `arn:aws:iot:{{region}}:{{account-id}}:dimension/{{dimension-name}}` | 
| IoT: CreateJob | CreateJob | `arn:aws:iot:{{region}}:{{account-id}}:job/{{job-id}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:thing/{{thing-name}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:jobtemplate/{{job-template-id}}` | 
| IoT: CreateJobTemplate | CreateJobTemplate | `arn:aws:iot:{{region}}:{{account-id}}:job/{{job-id}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:jobtemplate/{{job-template-id}}` | 
| IoT: CreateKeysAndCertificate | CreateKeysAndCertificate | \* | 
| IoT: CreatePolicy | CreatePolicy | `arn:aws:iot:{{region}}:{{account-id}}:policy/{{policy-name}}` | 
| IoT: CreatePolicyVersion | CreatePolicyVersion | `arn:aws:iot:{{region}}:{{account-id}}:policy/{{policy-name}}` Questa deve essere una AWS IoT politica, non una politica IAM.  | 
| IoT: CreateRoleAlias | CreateRoleAlias | (parametro: roleAlias)<br />`arn:aws:iot:{{region}}:{{account-id}}:rolealias/{{role-alias-name}}` | 
| IoT: CreateSecurityProfile | CreateSecurityProfile | `arn:aws:iot:{{region}}:{{account-id}}:securityprofile/{{security-profile-name}}`<br />`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}}`<br />Per il gruppo in fase di creazione e per il gruppo padre, se usato | 
| 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: elimina CACertificate | Eliminare 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}}`<br />`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 | \* | 
| 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}}`<br />`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: elimina V2 LoggingLevel | Elimina V2 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}}`<br />(parametro: authorizerName) nessuno  | 
| IoT: descrivi CACertificate | Descriva 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 | Nessuno  | 
| IoT: DescribeEndpoint | DescribeEndpoint | \* | 
| IoT: DescribeEventConfigurations | DescribeEventConfigurations | nessuno  | 
| 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 | Nessuno | 
| 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 | Nessuno | 
| 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}}`<br />or<br />`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}}`<br />`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 | Nessuno | 
| IoT: GetJobDocument | GetJobDocument | `arn:aws:iot:{{region}}:{{account-id}}:job/{{job-id}}` | 
| IoT: GetLoggingOptions | GetLoggingOptions | \* | 
| 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 | \* | 
| 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}}`<br />or<br />`arn:aws:iot:{{region}}:{{account-id}}:cert/{{cert-id}}` | 
| IoT: ListAuthorizers | ListAuthorizers | Nessuno | 
| IoT: elenco CACertificates | Elenco CACertificates | \* | 
| IoT: ListCertificates | ListCertificates | \* | 
| iot: ListCertificatesBy CA | ListCertificatesByCA | \* | 
| IoT: ListIndices | ListIndices | Nessuno | 
| IoT: ListJobExecutionsForJob | ListJobExecutionsForJob | Nessuno | 
| IoT: ListJobExecutionsForThing | ListJobExecutionsForThing | Nessuno | 
| IoT: ListJobs | ListJobs | `arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}`<br />se il thingGroupName parametro è usato | 
| iot: ListJobTemplates | ListJobs | Nessuno | 
| IoT: ListOutgoingCertificates | ListOutgoingCertificates | \* | 
| IoT: ListPolicies | ListPolicies | \* | 
| IoT: ListPolicyPrincipals | ListPolicyPrincipals | \* | 
| 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 | Nessuno | 
| IoT: ListTargetsForPolicy | ListTargetsForPolicy | `arn:aws:iot:{{region}}:{{account-id}}:policy/{{policy-name}}` | 
| IoT: ListThingGroups | ListThingGroups | Nessuno | 
| 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 | Nessuno | 
| IoT: ListThingRegistrationTasks | ListThingRegistrationTasks | Nessuno | 
| IoT: ListThingTypes | ListThingTypes | \* | 
| IoT: ListThings | ListThings | \* | 
| IoT: ListThingsInThingGroup | ListThingsInThingGroup | `arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}` | 
| IoT: ListTopicRules | ListTopicRules | \* | 
| IoT: listv2 LoggingLevels | Elenco V2 LoggingLevels | Nessuno | 
| IoT: registrazione CACertificate | Registrati CACertificate | \* | 
| IoT: RegisterCertificate | RegisterCertificate | \* | 
| IoT: RegisterThing | RegisterThing | Nessuno | 
| 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}}`<br />`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 | Impostare V2 LoggingLevel | `arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}` | 
| IoT: setV2 LoggingOptions | Impostare V2 LoggingOptions | `arn:aws:iot:{{region}}:{{account-id}}:role/{{role-name}}` | 
| IoT: StartThingRegistrationTask | StartThingRegistrationTask | Nessuno | 
| IoT: StopThingRegistrationTask | StopThingRegistrationTask | Nessuno | 
| IoT: TestAuthorization | TestAuthorization | `arn:aws:iot:{{region}}:{{account-id}}:cert/{{cert-id}}` | 
| IoT: TestInvokeAuthorizer | TestInvokeAuthorizer | Nessuno | 
| 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: aggiornamento CACertificate | Aggiorna 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 | Nessuno | 
| IoT: UpdateIndexingConfiguration | UpdateIndexingConfiguration | Nessuno | 
| 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}}`<br />`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}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}` | 

Le azioni politiche AWS IoT utilizzano il seguente prefisso prima dell'azione:`iot:`. Ad esempio, per concedere a qualcuno l'autorizzazione a elencare tutti gli oggetti IoT registrati nell'`ListThings`API, includi l'`iot:ListThings`azione nella sua policy. Account AWS Le dichiarazioni politiche devono includere un `NotAction` elemento `Action` or. AWS IoT definisce il proprio set di azioni che descrivono le attività che è possibile eseguire con questo servizio.

Per specificare più azioni in una sola istruzione, separa ciascuna di esse con una virgola come mostrato di seguito:

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

È possibile specificare più azioni tramite caratteri jolly (\*). Ad esempio, per specificare tutte le azioni che iniziano con la parola `Describe`, includi la seguente azione:

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

Per visualizzare un elenco di AWS IoT azioni, consulta [Actions Defined by AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) nella *IAM User Guide*.

#### Operazioni di Device Advisor
<a name="security_iam_service-actions-device-advisor"></a>

Nella tabella seguente sono elencate le operazioni di IAM IoT Device Advisor, ovvero l'API AWS IoT Device Advisor associata e la risorsa manipolata dall'operazione.


****  

| Operazioni di policy | AWS IoT API | Resources | 
| --- | --- | --- | 
| consulente per dispositivi IoT: CreateSuiteDefinition | CreateSuiteDefinition | Nessuno | 
| consulente per dispositivi IoT: DeleteSuiteDefinition | DeleteSuiteDefinition | `arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suitedefinition/{{suite-definition-id}}` | 
| consulente per dispositivi IoT: GetSuiteDefinition | GetSuiteDefinition | `arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suitedefinition/{{suite-definition-id}}` | 
| consulente per dispositivi IoT: GetSuiteRun | GetSuiteRun | `arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suitedefinition/{{suite-run-id}}` | 
| consulente per dispositivi IoT: GetSuiteRunReport | GetSuiteRunReport | `arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suiterun/{{suite-definition-id}}/{{suite-run-id}}` | 
| consulente per dispositivi IoT: ListSuiteDefinitions | ListSuiteDefinitions | Nessuno | 
| consulente per dispositivi IoT: ListSuiteRuns | ListSuiteRuns | `arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suitedefinition/{{suite-definition-id}}` | 
| consulente per dispositivi IoT: ListTagsForResource | ListTagsForResource | `arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suitedefinition/{{suite-definition-id}}`<br />`arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suiterun/suite-definition-id/{{suite-run-id}}` | 
| consulente per dispositivi IoT: StartSuiteRun | StartSuiteRun | `arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suitedefinition/{{suite-definition-id}}` | 
| consulente per dispositivi IoT: TagResource | TagResource | `arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suitedefinition/{{suite-definition-id}}`<br />`arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suiterun/suite-definition-id/{{suite-run-id}}` | 
| consulente per dispositivi IoT: UntagResource | UntagResource | `arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suitedefinition/{{suite-definition-id}}`<br />`arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suiterun/suite-definition-id/{{suite-run-id}}` | 
| consulente per dispositivi IoT: UpdateSuiteDefinition | UpdateSuiteDefinition | `arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suitedefinition/{{suite-definition-id}}` | 
| consulente per dispositivi IoT: StopSuiteRun | StopSuiteRun | `arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suiterun/suite-definition-id/{{suite-run-id}}` | 

Le azioni politiche in AWS IoT Device Advisor utilizzano il seguente prefisso prima dell'azione:. `iotdeviceadvisor:` Ad esempio, per concedere a qualcuno il permesso di elencare tutte le definizioni di suite registrate nella sua Account AWS ListSuiteDefinitions API, includi l'`iotdeviceadvisor:ListSuiteDefinitions`azione nella sua politica.

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

Gli amministratori possono utilizzare le policy AWS JSON per specificare chi ha accesso a cosa. In altre parole, quale **entità principale** può eseguire **operazioni** su quali **risorse** e in quali **condizioni**.

L’elemento JSON `Resource` della policy specifica l’oggetto o gli oggetti ai quali si applica l’operazione. Come best practice, specifica una risorsa utilizzando il suo [nome della risorsa Amazon (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). Per le azioni che non supportano le autorizzazioni a livello di risorsa, si utilizza un carattere jolly (\*) per indicare che l’istruzione si applica a tutte le risorse.

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


**AWS IoT risorse**  

| Operazioni di policy | AWS IoT API | Resources | 
| --- | --- | --- | 
| IoT: AcceptCertificateTransfer | AcceptCertificateTransfer | `arn:aws:iot:{{region}}:{{account-id}}:cert/{{cert-id}}` Il Account AWS valore specificato nell'ARN deve essere l'account su cui viene trasferito il certificato.  | 
| IoT: AddThingToThingGroup | AddThingToThingGroup | `arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:thing/{{thing-name}}` | 
| IoT: AssociateTargetsWithJob | AssociateTargetsWithJob | Nessuno  | 
| IoT: AttachPolicy | AttachPolicy | `arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}`<br />or<br />`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}}` Il Account AWS valore specificato nell'ARN deve essere l'account su cui viene trasferito il certificato.  | 
| IoT: CancelJob | CancelJob | `arn:aws:iot:{{region}}:{{account-id}}:job/{{job-id}}` | 
| IoT: CancelJobExecution | CancelJobExecution | `arn:aws:iot:{{region}}:{{account-id}}:job/{{job-id}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:thing/{{thing-name}}` | 
| IoT: ClearDefaultAuthorizer | ClearDefaultAuthorizer | Nessuno | 
| IoT: CreateAuthorizer | CreateAuthorizer | `arn:aws:iot:{{region}}:{{account-id}}:authorizer/{{authorizer-function-name}}` | 
| IoT: CreateCertificateFromCsr | CreateCertificateFromCsr | \* | 
| IoT: CreateJob | CreateJob | `arn:aws:iot:{{region}}:{{account-id}}:job/{{job-id}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:thing/{{thing-name}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:jobtemplate/{{job-template-id}}` | 
| IoT: CreateJobTemplate | CreateJobTemplate | `arn:aws:iot:{{region}}:{{account-id}}:job/{{job-id}}`<br />`arn:aws:iot:{{region}}:{{account-id}}:jobtemplate/{{job-template-id}}` | 
| IoT: CreateKeysAndCertificate | CreateKeysAndCertificate | \* | 
| IoT: CreatePolicy | CreatePolicy | `arn:aws:iot:{{region}}:{{account-id}}:policy/{{policy-name}}` | 
| CreatePolicyVersion | IoT: CreatePolicyVersion | `arn:aws:iot:{{region}}:{{account-id}}:policy/{{policy-name}}` Questa deve essere una AWS IoT politica, non una politica IAM.  | 
| IoT: CreateRoleAlias | CreateRoleAlias | (parametro: roleAlias)<br />`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}}`<br />Per il gruppo in fase di creazione e per il gruppo padre, se usato | 
| 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: elimina CACertificate | Eliminare 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}}`<br />`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 | \* | 
| 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: elimina V2 LoggingLevel | Elimina V2 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}}`<br />(parametro: authorizerName) nessuno  | 
| IoT: descrivi CACertificate | Descriva 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 | Nessuno  | 
| IoT: DescribeEndpoint | DescribeEndpoint | \* | 
| IoT: DescribeEventConfigurations | DescribeEventConfigurations | nessuno  | 
| 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 | Nessuno | 
| 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 | Nessuno | 
| 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}}`<br />or<br />`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 | Nessuno | 
| IoT: GetJobDocument | GetJobDocument | `arn:aws:iot:{{region}}:{{account-id}}:job/{{job-id}}` | 
| IoT: GetLoggingOptions | GetLoggingOptions | \* | 
| 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 | \* | 
| 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}}`<br />or<br />`arn:aws:iot:{{region}}:{{account-id}}:cert/{{cert-id}}` | 
| IoT: ListAuthorizers | ListAuthorizers | Nessuno | 
| IoT: elenco CACertificates | Elenco CACertificates | \* | 
| IoT: ListCertificates | ListCertificates | \* | 
| iot: ListCertificatesBy CA | ListCertificatesByCA | \* | 
| IoT: ListIndices | ListIndices | Nessuno | 
| IoT: ListJobExecutionsForJob | ListJobExecutionsForJob | Nessuno | 
| IoT: ListJobExecutionsForThing | ListJobExecutionsForThing | Nessuno | 
| IoT: ListJobs | ListJobs | `arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}`<br />se il thingGroupName parametro è usato | 
| iot: ListJobTemplates | ListJobTemplates | Nessuno | 
| IoT: ListOutgoingCertificates | ListOutgoingCertificates | \* | 
| IoT: ListPolicies | ListPolicies | \* | 
| 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 | Nessuno | 
| IoT: ListTargetsForPolicy | ListTargetsForPolicy | `arn:aws:iot:{{region}}:{{account-id}}:policy/{{policy-name}}` | 
| IoT: ListThingGroups | ListThingGroups | Nessuno | 
| 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 | Nessuno | 
| IoT: ListThingRegistrationTasks | ListThingRegistrationTasks | Nessuno | 
| IoT: ListThingTypes | ListThingTypes | \* | 
| IoT: ListThings | ListThings | \* | 
| IoT: ListThingsInThingGroup | ListThingsInThingGroup | `arn:aws:iot:{{region}}:{{account-id}}:thinggroup/{{thing-group-name}}` | 
| IoT: ListTopicRules | ListTopicRules | \* | 
| IoT: listv2 LoggingLevels | Elenco V2 LoggingLevels | Nessuno | 
| IoT: registrazione CACertificate | Registrati CACertificate | \* | 
| IoT: RegisterCertificate | RegisterCertificate | \* | 
| IoT: RegisterThing | RegisterThing | Nessuno | 
| 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}}`<br />`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 | \* | 
| IoT: setV2 LoggingLevel | Impostare V2 LoggingLevel | \* | 
| IoT: setV2 LoggingOptions | Impostare V2 LoggingOptions | \* | 
| IoT: StartThingRegistrationTask | StartThingRegistrationTask | Nessuno | 
| IoT: StopThingRegistrationTask | StopThingRegistrationTask | Nessuno | 
| IoT: TestAuthorization | TestAuthorization | `arn:aws:iot:{{region}}:{{account-id}}:cert/{{cert-id}}` | 
| IoT: TestInvokeAuthorizer | TestInvokeAuthorizer | Nessuno | 
| 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: aggiornamento CACertificate | Aggiorna 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 | Nessuno | 
| IoT: UpdateIndexingConfiguration | UpdateIndexingConfiguration | Nessuno | 
| 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}}` | 

Per ulteriori informazioni sul formato di ARNs, consulta [Amazon Resource Names (ARNs) e AWS Service Namespaces](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html).

Alcune AWS IoT azioni, come quelle per la creazione di risorse, non possono essere eseguite su una risorsa specifica. In questi casi, è necessario utilizzare il carattere jolly (\*).

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

Per visualizzare un elenco dei tipi di AWS IoT risorse e relativi ARNs, consulta [Resources Defined by AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-resources-for-iam-policies) nella *IAM User Guide*. Per informazioni sulle operazioni con cui è possibile specificare l’ARN di ogni risorsa, consulta [Operazioni definite da AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions).

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

Per definire le restrizioni a livello di risorsa per le politiche IAM di AWS IoT Device Advisor, utilizza i seguenti formati ARN di risorse per le definizioni e le esecuzioni delle suite.

Formato dell'ARN della risorsa di definizione della suite  
`arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suitedefinition/{{suite-definition-id}}`

Formato dell'ARN della risorsa di esecuzione della suite  
`arn:aws:iotdeviceadvisor:{{region}}:{{account-id}}:suiterun/{{suite-definition-id}}/{{suite-run-id}}`

### Chiavi di condizione
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

Gli amministratori possono utilizzare le policy AWS JSON per specificare chi ha accesso a cosa. In altre parole, quale **entità principale** può eseguire **operazioni** su quali **risorse** e in quali **condizioni**.

L’elemento `Condition` specifica quando le istruzioni vengono eseguite in base a criteri definiti. È possibile compilare espressioni condizionali che utilizzano [operatori di condizione](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), ad esempio uguale a o minore di, per soddisfare la condizione nella policy con i valori nella richiesta. Per visualizzare tutte le chiavi di condizione AWS globali, consulta le chiavi di [contesto delle condizioni AWS globali nella Guida](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) per l'*utente IAM*.

AWS IoT definisce il proprio set di chiavi di condizione e supporta anche l'utilizzo di alcune chiavi di condizione globali. Per visualizzare tutte le chiavi di condizione AWS globali, consulta [AWS Global Condition Context Keys](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_condition-keys.html) nella *IAM User Guide*. 


**AWS IoT chiavi di condizione**  

| AWS IoT tasti di condizione | Descrizione | Tipo | 
| --- | --- | --- | 
| aws:RequestTag/${{{tag-key}}} | Una chiave del tag che è presente nella richiesta effettuata dall'utente verso AWS IoT. | Stringa | 
| aws:ResourceTag/${{{tag-key}}} | Il componente chiave del tag di un tag allegato a una AWS IoT risorsa. | Stringa | 
| aws:TagKeys | L'elenco di tutti i nomi delle chiavi di tag associati alla risorsa nella richiesta. | Stringa | 

Per visualizzare un elenco di chiavi di AWS IoT condizione, consulta [Condition Keys for AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-policy-keys) nella *IAM User Guide*. Per sapere con quali azioni e risorse puoi utilizzare una chiave di condizione, consulta [Azioni definite da AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions).

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



Per visualizzare esempi di politiche AWS IoT basate sull'identità, vedere. [AWS IoT esempi di politiche basate sull'identità](security_iam_id-based-policy-examples.md)

## AWS IoT politiche basate sulle risorse
<a name="security_iam_service-with-iam-resource-based-policies"></a>

Le politiche basate sulle risorse sono documenti di policy JSON che specificano quali azioni uno specifico principale può eseguire sulla risorsa e in quali condizioni. AWS IoT 

AWS IoT non supporta le politiche basate sulle risorse IAM. Tuttavia, supporta politiche basate sulle risorse. AWS IoT Per ulteriori informazioni, consulta [AWS IoT Core politiche](iot-policies.md).

## Autorizzazione basata su tag AWS IoT
<a name="security_iam_service-with-iam-tags"></a>

È possibile allegare tag alle AWS IoT risorse o passare tag in una richiesta a AWS IoT. Per controllare l’accesso basato su tag, fornire informazioni sui tag nell’[elemento condizione](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_elements_condition.html) di una policy utilizzando le chiavi di condizione `iot:ResourceTag/{{key-name}}`, `aws:RequestTag/{{key-name}}` o `aws:TagKeys`. Per ulteriori informazioni, consulta [Utilizzo dei tag con policy IAM](tagging-iot-iam.md). Per ulteriori informazioni sull'etichettatura AWS IoT delle risorse, consulta[Taggare le tue risorse AWS IoT](tagging-iot.md).

Per visualizzare un esempio di policy basata su identità per limitare l'accesso a una risorsa in base ai tag di tale risorsa, consulta [Visualizzazione delle AWS IoT risorse in base ai tag](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-view-thing-tags).

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

Un [ruolo IAM](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles.html) è un'entità interna all'utente Account AWS che dispone di autorizzazioni specifiche.

### Utilizzo di credenziali temporanee con AWS IoT
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

È possibile utilizzare credenziali temporanee per effettuare l'accesso con la federazione, assumere un ruolo IAM o un ruolo multi-account. È possibile ottenere credenziali di sicurezza temporanee chiamando operazioni AWS STS API come [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)o. [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html) 

AWS IoT supporta l'utilizzo di credenziali temporanee. 

### Ruoli collegati ai servizi
<a name="security_iam_service-with-iam-roles-service-linked"></a>

[I ruoli collegati ai](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles_terms-and-concepts.html#iam-term-service-linked-role) AWS servizi consentono ai servizi di accedere alle risorse di altri servizi per completare un'azione per conto dell'utente. I ruoli collegati ai servizi sono visualizzati nell'account IAM e sono di proprietà del servizio. Un amministratore IAM può visualizzare le autorizzazioni per i ruoli collegati ai servizi, ma non può modificarle.

AWS IoT non supporta ruoli collegati ai servizi.

### Ruoli dei servizi
<a name="security_iam_service-with-iam-roles-service"></a>

Questa funzionalità consente a un servizio di assumere un [ruolo di servizio](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles_terms-and-concepts.html#iam-term-service-role) per conto dell'utente. Questo ruolo consente al servizio di accedere alle risorse in altri servizi per completare un'azione per conto dell'utente. I ruoli dei servizi sono visualizzati nell'account IAM e sono di proprietà dell'account. Ciò significa che un amministratore IAM può modificare le autorizzazioni per questo ruolo. Tuttavia, questo potrebbe pregiudicare la funzionalità del servizio.