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à.
TLS
Utilizza questi test per determinare se il protocollo TLS (Transport Layer Security Protocol) tra i tuoi dispositivi AWS IoT è sicuro.
Nota
Device Advisor ora supporta TLS 1.3.
Happy Path
- Connessione TLS
-
Verifica se il dispositivo sottoposto a test è in grado di completare l'handshake TLS verso. AWS IoT Questo test non convalida l'implementazione MQTT del dispositivo client.
Esempio Definizione del test case API:
Nota
EXECUTION_TIMEOUT
dispone di un valore predefinito di 5 minuti. Per ottenere risultati ottimali, si consiglia un valore di timeout di 2 minuti."tests":[ { "name":"
my_tls_connect_test
", "configuration": { // optional: "EXECUTION_TIMEOUT":"300
", //in seconds }, "test":{ "id":"TLS_Connect", "version":"0.0.0" } } ]Esempio Output del test case:
Pass: il dispositivo in test ha completato l'handshake TLS con. AWS IoT
Passato con avvisi: il dispositivo in test ha completato l'handshake TLS con AWS IoT, ma sono stati ricevuti messaggi di avviso TLS dal dispositivo o. AWS IoT
Errore: il dispositivo sottoposto a test non è riuscito a completare l'handshake TLS con a causa di un errore di handshake. AWS IoT
- TLS riceve frammenti di dimensioni massime
-
Questo caso di test verifica se il dispositivo è in grado di ricevere ed elaborare frammenti di dimensioni massime TLS. Il dispositivo di test deve effettuare la sottoscrizione a un argomento preconfigurato con QoS 1 per ricevere un payload di grandi dimensioni. Il payload può essere personalizzato con la configurazione
${payload}
.Esempio Definizione del test case API:
Nota
EXECUTION_TIMEOUT
dispone di un valore predefinito di 5 minuti. Per ottenere risultati ottimali, si consiglia un valore di timeout di 2 minuti."tests":[ { "name":"TLS Receive Maximum Size Fragments", "configuration": { // optional: "EXECUTION_TIMEOUT":"
300
", //in seconds "PAYLOAD_FORMAT":"{"message":"${payload}"}", // A string with a placeholder ${payload}, or leave it empty to receive a plain string. "TRIGGER_TOPIC": "test_1" // A topic to which a device will subscribe, and to which a test case will publish a large payload. }, "test":{ "id":"TLS_Receive_Maximum_Size_Fragments", "version":"0.0.0" } } ]
Suite di cifratura
- Supporto per dispositivi TLS per suite di AWS IoT crittografia consigliate
-
Verifica che i pacchetti di crittografia nel messaggio TLS Client Hello dal dispositivo sottoposto a test contengano i pacchetti di crittografia AWS IoT consigliati. Fornisce ulteriori informazioni sulle suite di crittografia supportate dal dispositivo.
Esempio Definizione del test case API:
Nota
EXECUTION_TIMEOUT
dispone di un valore predefinito di 5 minuti. Consigliamo un valore di timeout di 2 minuti."tests":[ { "name":"
my_tls_support_aws_iot_cipher_suites_test
", "configuration": { // optional: "EXECUTION_TIMEOUT":"300
", // in seconds }, "test":{ "id":"TLS_Support_AWS_IoT_Cipher_Suites", "version":"0.0.0" } } ]Esempio Output dei test case:
Pass: il dispositivo sottoposto a test contiene almeno una delle suite di crittografia AWS IoT consigliate e non contiene suite di crittografia non supportate.
-
Superato con avvisi: i pacchetti di crittografia del dispositivo contengono almeno un pacchetto di crittografia AWS IoT ma:
-
Non contengono alcun pacchetto di crittografia consigliato
-
Contiene suite di crittografia che non sono supportate da. AWS IoT
Si consiglia di verificare che gli eventuali pacchetti di crittografia non supportati siano sicuri.
-
Errore: il dispositivo sottoposto a test sulle suite di crittografia non contiene nessuna delle suite di crittografia supportate AWS IoT .
Certificato del server di grandi dimensioni
- Certificato del server di grandi dimensioni TLS
-
Verifica se il dispositivo è in grado di completare l'handshake TLS con AWS IoT quando riceve ed elabora un certificato del server di grandi dimensioni. La dimensione del certificato del server (in byte) utilizzato da questo test è maggiore di 20 rispetto a quella attualmente utilizzata nel test case TLS Connect e IoT Core. Durante questo test case, AWS IoT verifica lo spazio di buffer del dispositivo per TLS. Se lo spazio nel buffer è sufficientemente grande, l'handshake TLS viene completato senza errori. Questo test non convalida l'implementazione MQTT del dispositivo. Il caso di test termina dopo il completamento del processo di handshake TLS.
Esempio Definizione del test case API:
Nota
EXECUTION_TIMEOUT
dispone di un valore predefinito di 5 minuti. Per ottenere risultati ottimali, si consiglia un valore di timeout di 2 minuti. Se questo caso di test non va a buon fine, ma il caso di test Connessione TLS viene superato, si consiglia di incrementare il limite di spazio del buffer del dispositivo per TLS. L'aumento del limite di spazio del buffer garantisce che il dispositivo sia in grado di elaborare un certificato del server di dimensioni maggiori nel caso in cui le dimensioni aumentino."tests":[ { "name":"
my_tls_large_size_server_cert_test
", "configuration": { // optional: "EXECUTION_TIMEOUT":"300
", // in seconds }, "test":{ "id":"TLS_Large_Size_Server_Cert", "version":"0.0.0" } } ]Esempio Output del test case:
-
Pass (Superato) - Il dispositivo testato ha completato l'handshake TLS con AWS IoT.
-
Passa con avvisi: il dispositivo in test ha completato l'handshake TLS con AWS IoT, ma sono presenti messaggi di avviso TLS dal dispositivo o AWS IoT.
-
Errore: il dispositivo sottoposto a test non è riuscito a completare l'handshake TLS a AWS IoT causa di un errore durante il processo di handshake.
-
Certificato del server non sicuro TLS
- Non firmato da CA riconosciuta
-
Verifica che il dispositivo sottoposto a test chiuda la connessione se viene presentato con un certificato del server che non dispone di una firma valida dalla CA ATS. Un dispositivo deve connettersi solo a un endpoint che presenta un certificato valido.
Esempio Definizione del test case API:
Nota
EXECUTION_TIMEOUT
dispone di un valore predefinito di 5 minuti. Consigliamo un valore di timeout di 2 minuti."tests":[ { "name":"
my_tls_unsecure_server_cert_test
", "configuration": { // optional: "EXECUTION_TIMEOUT":"300
", //in seconds }, "test":{ "id":"TLS_Unsecure_Server_Cert", "version":"0.0.0" } } ]Esempio Output dei test case:
Pass (Superato) — Il dispositivo sottoposto a test ha chiuso la connessione.
Fallito: il dispositivo in test ha completato l'handshake TLS con. AWS IoT
- Certificato del server nome soggetto TLS non corretto/Nome comune soggetto non corretto (CN)/Nome alternativo soggetto (SAN)
-
Convalida che il dispositivo in fase di test chiude la connessione se viene presentato con un certificato server per un nome di dominio diverso da quello richiesto.
Esempio Definizione del test case API:
Nota
EXECUTION_TIMEOUT
dispone di un valore predefinito di 5 minuti. Consigliamo un valore di timeout di 2 minuti."tests":[ { "name":"
my_tls_incorrect_subject_name_cert_test
", "configuration": { // optional: "EXECUTION_TIMEOUT":"300
", // in seconds }, "test":{ "id":"TLS_Incorrect_Subject_Name_Server_Cert", "version":"0.0.0" } } ]Esempio Output dei test case:
Pass (Superato) — Il dispositivo sottoposto a test ha chiuso la connessione.
Fallito: il dispositivo in test ha completato l'handshake TLS con. AWS IoT
Certificato server scaduto TLS
- Certificato del server scaduto
-
Convalida che il dispositivo in fase di test chiude la connessione se viene presentato con un certificato server scaduto.
Esempio Definizione del test case API:
Nota
EXECUTION_TIMEOUT
dispone di un valore predefinito di 5 minuti. Consigliamo un valore di timeout di 2 minuti."tests":[ { "name":"
my_tls_expired_cert_test
", "configuration": { // optional: "EXECUTION_TIMEOUT":"300
", //in seconds }, "test":{ "id":"TLS_Expired_Server_Cert", "version":"0.0.0" } } ]Esempio Output dei test case:
Superato: il dispositivo sottoposto al test si rifiuta di completare l'handshake TLS con. AWS IoT Il dispositivo invia un messaggio di avviso TLS prima di chiudere la connessione.
Superato con avvisi: il dispositivo sottoposto a test rifiuta di completare l'handshake TLS con AWS IoT. Tuttavia, non invia un messaggio di avviso TLS prima di chiudere la connessione.
Fallito: il dispositivo in test completa l'handshake TLS con. AWS IoT