TLS - AWS IoT Core

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

TLS

Verwenden Sie diese Tests, um festzustellen, ob das Transport Layer Security Protocol (TLS) zwischen Ihren Geräten sicher AWS IoT ist.

Anmerkung

Device Advisor unterstützt jetzt TLS 1.3.

Happy Path

TLS Connect

Überprüft, ob das zu testende Gerät den TLS-Handshake abschließen kann. AWS IoT Dieser Test validiert nicht die MQTT-Implementierung des Client-Geräts.

Beispiel Definition des API-Testfalls:
Anmerkung

EXECUTION_TIMEOUT hat einen Standardwert von 5 Minuten. Für optimale Ergebnisse empfehlen wir einen Timeout-Wert von 2 Minuten.

"tests":[ { "name":"my_tls_connect_test", "configuration": { // optional: "EXECUTION_TIMEOUT":"300", //in seconds }, "test":{ "id":"TLS_Connect", "version":"0.0.0" } } ]
Beispiel Ergebnisse des Testfalls:
  • Bestanden — Das zu testende Gerät hat den TLS-Handshake mit abgeschlossen. AWS IoT

  • Mit Warnungen bestanden — Das getestete Gerät hat den TLS-Handshake mit abgeschlossen AWS IoT, aber es gab TLS-Warnmeldungen vom Gerät oder. AWS IoT

  • Fehlgeschlagen — Das getestete Gerät konnte den TLS-Handshake AWS IoT aufgrund eines Handshake-Fehlers nicht abschließen.

TLS empfängt Fragmente mit maximaler Größe

Dieser Testfall bestätigt, dass Ihr Gerät TLS-Fragmente mit maximaler Größe empfangen und verarbeiten kann. Ihr Testgerät muss ein vorkonfiguriertes Thema mit QoS 1 abonnieren, um eine große Nutzlast zu empfangen. Sie können die Nutzlast mit der Konfiguration ${payload} anpassen.

Beispiel Definition des API-Testfalls:
Anmerkung

EXECUTION_TIMEOUT hat einen Standardwert von 5 Minuten. Für optimale Ergebnisse empfehlen wir einen Timeout-Wert von 2 Minuten.

"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" } } ]

Cipher Suites

TLS-Geräteunterstützung für AWS IoT empfohlene Cipher Suites

Überprüft, ob die Cipher Suites in der TLS-Client-Hello-Nachricht des getesteten Geräts die empfohlenen AWS IoT -Cipher-Suites enthalten. Es bietet mehr Einblicke in die vom Gerät unterstützten Verschlüsselungssammlungen.

Beispiel Definition des API-Testfalls:
Anmerkung

EXECUTION_TIMEOUT hat einen Standardwert von 5 Minuten. Wir empfehlen einen Timeout-Wert von 2 Minuten.

"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" } } ]
Beispiel Ergebnisse des Testfalls:
  • Bestanden — Das zu testende Gerät enthält mindestens eine der empfohlenen Verschlüsselungssammlungen und keine AWS IoT Verschlüsselungssammlungen, die nicht unterstützt werden.

  • Pass with warnings (Mit Warnungen bestanden): Die Cipher Suites des Geräts enthalten mindestens eine AWS IoT -Cipher-Suite, aber:

    1. sie enthält keine der empfohlenen Cipher Suites.

    2. Es enthält Verschlüsselungssammlungen, die von nicht unterstützt werden. AWS IoT

    Wir empfehlen Ihnen, zu überprüfen, ob alle nicht unterstützten Cipher Suites sicher sind.

  • Fehlgeschlagen — Das zu testende Gerät enthält keine der unterstützten Verschlüsselungssammlungen. AWS IoT

Größeres Serverzertifikat

Großes TLS-Serverzertifikat

Wird auf Ihrem Gerät validiert und kann den TLS-Handshake mit AWS IoT abschließen, wenn es ein größeres Serverzertifikat empfängt und verarbeitet. Die Größe des von diesem Test verwendeten Serverzertifikats (in Byte) ist um 20 größer als die, die derzeit im TLS Connect-Testfall und in IoT Core verwendet wird. In diesem Testfall wird der Pufferspeicher Ihres Geräts auf TLS getestet. Wenn der Pufferspeicher groß genug ist, wird der TLS-Handshake ohne Fehler abgeschlossen. AWS IoT Dieser Test validiert nicht die MQTT-Implementierung des Geräts. Der Testfall tritt auf, nachdem der TLS-Handshake-Vorgang abgeschlossen ist.

Beispiel Definition des API-Testfalls:
Anmerkung

EXECUTION_TIMEOUT hat einen Standardwert von 5 Minuten. Für optimale Ergebnisse empfehlen wir einen Timeout-Wert von 2 Minuten. Wenn dieser Testfall fehlschlägt, der TLS Connect-Testfall jedoch erfolgreich ist, empfehlen wir Ihnen, das Pufferspeicherlimit Ihres Geräts für TLS zu erhöhen. Durch die Erhöhung des Pufferspeicherlimits wird sichergestellt, dass Ihr Gerät ein größeres Serverzertifikat verarbeiten kann, falls die Größe zunimmt.

"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" } } ]
Beispiel Ergebnisse des Testfalls:
  • Pass (Bestanden): Das getestete Gerät hat den TLS-Handshake mit AWS IoT abgeschlossen.

  • Mit Warnungen bestanden — Das getestete Gerät hat den TLS-Handshake abgeschlossen AWS IoT, aber es gibt TLS-Warnmeldungen entweder vom Gerät oder. AWS IoT

  • Fehlgeschlagen — Das getestete Gerät konnte den TLS-Handshake AWS IoT aufgrund eines Fehlers während des Handshake-Vorgangs nicht abschließen.

Zertifikat für unsicheren TLS-Server

Nicht von einer anerkannten Zertifizierungsstelle signiert

Überprüft, ob das getestete Gerät die Verbindung schließt, wenn ihm ein Serverzertifikat ohne gültige Signatur der ATS-Zertifizierungsstelle vorgelegt wird. Ein Gerät sollte nur eine Verbindung zu einem Endpunkt herstellen, der ein gültiges Zertifikat vorlegt.

Beispiel Definition des API-Testfalls:
Anmerkung

EXECUTION_TIMEOUT hat einen Standardwert von 5 Minuten. Wir empfehlen einen Timeout-Wert von 2 Minuten.

"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" } } ]
Beispiel Ergebnisse des Testfalls:
  • Pass (Bestanden): Das getestete Gerät hat die Verbindung geschlossen.

  • Fehlgeschlagen — Das getestete Gerät hat den TLS-Handshake mit abgeschlossen. AWS IoT

TLS Incorrect Subject Name Server Cert/Incorrect Subject Common Name (CN)/Subject Alternative Name (SAN)

Überprüft, ob das getestete Gerät die Verbindung schließt, wenn ihm ein Serverzertifikat für einen anderen Domainnamen als den angeforderten vorgelegt wird.

Beispiel Definition des API-Testfalls:
Anmerkung

EXECUTION_TIMEOUT hat einen Standardwert von 5 Minuten. Wir empfehlen einen Timeout-Wert von 2 Minuten.

"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" } } ]
Beispiel Ergebnisse des Testfalls:
  • Pass (Bestanden): Das getestete Gerät hat die Verbindung geschlossen.

  • Fehlgeschlagen — Das zu testende Gerät hat den TLS-Handshake mit abgeschlossen. AWS IoT

TLS-Serverzertifikat ist abgelaufen

Abgelaufenes Serverzertifikat

Überprüft, ob das getestete Gerät die Verbindung schließt, wenn ihm ein abgelaufenes Serverzertifikat vorgelegt wird.

Beispiel Definition des API-Testfalls:
Anmerkung

EXECUTION_TIMEOUT hat einen Standardwert von 5 Minuten. Wir empfehlen einen Timeout-Wert von 2 Minuten.

"tests":[ { "name":"my_tls_expired_cert_test", "configuration": { // optional: "EXECUTION_TIMEOUT":"300", //in seconds }, "test":{ "id":"TLS_Expired_Server_Cert", "version":"0.0.0" } } ]
Beispiel Ergebnisse des Testfalls:
  • Bestanden — Das zu testende Gerät weigert sich, den TLS-Handshake mit abzuschließen. AWS IoT Das Gerät sendet eine TLS-Warnmeldung, bevor es die Verbindung schließt.

  • Pass with warnings (Bestanden mit Warnungen): Das getestete Gerät weigert sich, den TLS-Handshake mit AWS IoT abzuschließen. Es sendet jedoch keine TLS-Warnmeldung, bevor die Verbindung geschlossen wird.

  • Fehlgeschlagen — Das zu testende Gerät schließt den TLS-Handshake mit ab. AWS IoT