

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

# Diagnosi dei problemi di connettività
<a name="diagnosing-connectivity-issues"></a>

**Aiutaci a migliorare questo argomento**  
 [Facci sapere che cosa contribuirebbe a migliorarlo](https://docs.aws.amazon.com//forms/aws-doc-feedback?hidden_service_name=IoT%20Docs&topic_url=http://docs.aws.amazon.com/en_us/iot/latest/diagnosing-connectivity-issues.html) 

Una connessione riuscita a AWS IoT richiede:
+ Una connessione valida
+ Un certificato valido e attivo
+ Una policy che consenta la connessione e il funzionamento desiderati

## Connessione
<a name="troubleshooting-connect"></a>

Come trovo l'endpoint corretto?  
+ Il valore `endpointAddress` restituito da `aws iot [describe-endpoint](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-endpoint.html) --endpoint-type iot:Data-ATS`

  or
+ Il valore `domainName` restituito da `aws iot [describe-domain-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-domain-configuration.html) –-domain-configuration-name "domain_configuration_name"`

Come trovo il valore di SNI (Server Name Indication) corretto?  
Il valore SNI corretto è il valore `endpointAddress` restituito dai comandi **[describe-endpoint](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-endpoint.html)** o il valore `domainName` restituito dai comandi **[describe-domain-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-domain-configuration.html)**. È lo stesso indirizzo dell'endpoint del passaggio precedente. Quando si collegano i dispositivi a AWS IoT Core, i client possono inviare l'[estensione SNI (Server Name Indication)](https://tools.ietf.org/html/rfc3546#section-3.1), che non è richiesta ma è altamente consigliata. Per utilizzare funzionalità come la [registrazione con più account](https://docs.aws.amazon.com//iot/latest/developerguide/x509-client-certs.html#multiple-account-cert), i [domini personalizzati](https://docs.aws.amazon.com//iot/latest/developerguide/iot-custom-endpoints-configurable-custom.html) e gli [endpoint VPC](https://docs.aws.amazon.com//iot/latest/developerguide/IoTCore-VPC.html), è necessario utilizzare l'estensione SNI. Per ulteriori informazioni, vedere [Transport Security in AWS IoT](transport-security.html).

Come posso risolvere un problema di connettività che persiste?  
È possibile utilizzare AWS Device Advisor per la risoluzione dei problemi. I test predefiniti di Device Advisor consentono di convalidare il software del dispositivo in base alle best practice per l'utilizzo di [TLS](https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html), [MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html), [AWS IoT Device Shadow](https://docs.aws.amazon.com/iot/latest/developerguide/iot-device-shadows.html) e [Processi AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-jobs.html).  
 Ecco un link ai contenuti esistenti di [Device Advisor](https://docs.aws.amazon.com/iot/latest/developerguide/device-advisor.html).

## Autenticazione
<a name="troubleshooting-authentication"></a>

I dispositivi devono essere [autenticati](client-authentication.md) per connettersi agli endpoint. AWS IoT Per i dispositivi che utilizzano [Certificati client X.509](x509-client-certs.md) l'autenticazione, i certificati devono essere registrati AWS IoT ed essere attivi.

In che modo i miei dispositivi autenticano gli AWS IoT endpoint?  
Aggiungi il certificato AWS IoT CA al trust store del tuo cliente. Fai riferimento alla documentazione sull'[Autenticazione del server in AWS IoT Core](x509-client-certs.html#server-authentication) e segui i collegamenti per scaricare il certificato CA appropriato.

Cosa viene controllato quando un dispositivo si connette a AWS IoT?  
Quando un dispositivo tenta di connettersi a AWS IoT:  

1. AWS IoT verifica la presenza di un certificato e di un valore SNI (Server Name Indication) validi.

1. AWS IoT verifica che il certificato utilizzato sia registrato presso l' AWS IoT Account e che sia stato attivato.

1. Quando un dispositivo tenta di eseguire un'azione AWS IoT, ad esempio sottoscrivere o pubblicare un messaggio, la politica allegata al certificato utilizzato per la connessione viene verificata per confermare che il dispositivo sia autorizzato a eseguire tale azione.

In che modo è possibile convalidare un certificato configurato correttamente?  
Usa il comando `s_client` OpenSSL per testare una connessione all'endpoint di AWS IoT :  

```
openssl s_client -connect custom_endpoint.iot.aws-region.amazonaws.com:8443 -CAfile CA.pem -cert cert.pem -key privateKey.pem
```
Per ulteriori informazioni sull'utilizzo di `openssl s_client`, consulta la [documentazione di OpenSSL s\$1client](https://www.openssl.org/docs/man1.0.2/man1/openssl-s_client.html).

Come posso verificare lo stato di un certificato?  
+ 

**Elenca i certificati**  
Se non conosci l'ID del certificato, puoi visualizzare lo stato di tutti i certificati utilizzando il comando `aws iot [list-certificates](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/list-certificates.html)`.
+ 

**Visualizzazione dei dettagli di un certificato**  
Se conosci l'ID del certificato, questo comando mostra informazioni più dettagliate sul certificato.

  ```
  aws iot [describe-certificate](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-certificate.html) --certificate-id "certificateId"
  ```
+ 

**Rivedi il certificato nella AWS IoT console**  
Nella [console AWS IoT](https://console.aws.amazon.com/iot/home) del menu a sinistra seleziona **Secure (Sicurezza)** e quindi scegli **Certificates (Certificati)**.

  Scegli il certificato che stai utilizzando per connetterti dall'elenco per aprire la relativa pagina dei dettagli.

  Nella pagina dei dettagli del certificato, è possibile visualizzarne lo stato attuale.

  Lo stato del certificato può essere modificato utilizzando il menu **Actions (Operazioni)** nell'angolo in alto a destra della pagina dei dettagli.

## Autorizzazione
<a name="troubleshooting-authorization"></a>

AWS IoT risorse utilizzate [AWS IoT Core politiche](iot-policies.md) per autorizzare tali risorse a eseguire [azioni](iot-policy-actions.md). Affinché un'azione sia autorizzata, alle AWS IoT risorse specificate deve essere allegato un documento di policy che conceda il permesso di eseguire tale azione.

Ho ricevuto una risposta `PUBNACK` o `SUBNACK` dal broker. Cosa devo fare?  
Assicurati che sia allegata una politica al certificato che stai utilizzando per la chiamata AWS IoT. Tutte le publish/subscribe operazioni sono negate per impostazione predefinita.  
Assicurati che la policy collegata autorizzi le [operazioni](iot-policy-actions.md) che stai cercando di eseguire.  
Assicurati che la policy collegata autorizzi le [risorse](iot-action-resources.md) che stanno tentando di eseguire le operazioni autorizzate.

Ho una voce *AUTHORIZATION\$1FAILURE* nei miei registri.  
Assicurati che ci sia una politica allegata al certificato che stai usando per chiamare AWS IoT. Tutte le publish/subscribe operazioni sono negate per impostazione predefinita.  
Assicurati che la policy collegata autorizzi le [operazioni](iot-policy-actions.md) che stai cercando di eseguire.  
Assicurati che la policy collegata autorizzi le [risorse](iot-action-resources.md) che stanno tentando di eseguire le operazioni autorizzate.

Come faccio a verificare ciò che la policy autorizza?  
Nella [AWS IoT console](https://console.aws.amazon.com/iot/home), nel menu a sinistra, scegli **Sicurezza**, quindi scegli **Certificati**.  
Scegli il certificato che stai utilizzando per connetterti dall'elenco per aprire la relativa pagina dei dettagli.  
Nella pagina dei dettagli del certificato, è possibile visualizzarne lo stato attuale.  
Nel menu a sinistra della pagina dei dettagli del certificato, scegli **Policies (Policy)** per visualizzare le policy allegate al certificato.  
Scegli la policy desiderata per visualizzarne la pagina dei dettagli.  
Nella pagina dei dettagli della policy, esamina il **Documento di policy** per vedere cosa autorizza.  
Scegli **Edit policy document (Modifica del documento della policy)** per apportare modifiche al documento della policy.

## Sicurezza e identità
<a name="troubleshooting-security-identity"></a>

Quando fornisci i certificati del server per la configurazione AWS IoT personalizzata del dominio, i certificati hanno un massimo di quattro nomi di dominio. 

Per ulteriori informazioni, consulta [Endpoint e quote per AWS IoT Core](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#security-limits). 