X.509-Clientzertifikate - 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.

X.509-Clientzertifikate

X.509-Zertifikate bieten die Möglichkeit, AWS IoT Client- und Geräteverbindungen zu authentifizieren. Client-Zertifikate müssen registriert werden, AWS IoT bevor ein Client mit ihnen kommunizieren kann. AWS IoT Ein Client-Zertifikat kann für mehrere AWS-Konto s in derselben Region registriert werden AWS-Region , um das Verschieben von Geräten zwischen Ihren AWS-Konto s in derselben Region zu erleichtern. Weitere Informationen finden Sie unter Verwendung von X.509-Clientzertifikaten in mehreren AWS-Konto s mit Registrierung mehrerer Konten.

Wir empfehlen, jedem Gerät oder Client ein eindeutiges Zertifikat zuzuordnen, damit feingranulare Client-Verwaltungsaktionen einschließlich Zertifikatswiderruf möglich sind. Geräte und Clients müssen darüber hinaus das Rotieren und Ersetzen von Zertifikaten unterstützen, um eine reibungslose Ausführung sicherzustellen, wenn Zertifikate ablaufen.

Informationen zur Verwendung von X.509-Zertifikaten zur Unterstützung mehrerer Geräte finden Sie unter Gerätebereitstellung. Dort sind die verschiedenen Optionen für die Zertifikatsverwaltung und -bereitstellung aufgeführt, die von AWS IoT unterstützt werden.

AWS IoT unterstützt die folgenden Typen von X.509-Client-Zertifikaten:
  • X.509-Zertifikate, generiert von AWS IoT

  • X.509-Zertifikate, signiert von einer Zertifizierungsstelle, die bei registriert ist. AWS IoT

  • Von einer nicht bei AWS IoT registrierten Zertifizierungsstelle signierte X.509-Zertifikate

In diesem Abschnitt wird beschrieben, wie Sie X.509-Zertifikate in AWS IoT verwalten. Sie können die AWS IoT Konsole verwenden oder AWS CLI die folgenden Zertifikatsvorgänge ausführen:

Weitere Informationen zu den AWS CLI Befehlen, die diese Operationen ausführen, finden Sie unter AWS IoT CLI-Referenz.

Verwenden von X.509-Clientzertifikaten

X.509-Zertifikate authentifizieren Client- und Geräteverbindungen zu. AWS IoT X.509-Zertifikate bieten mehrere Vorteile gegenüber anderen Identifikations- und Authentifizierungsmechanismen. X.509-Zertifikate ermöglichen die Verwendung asymmetrischer Schlüssel mit Geräten. Beispielsweise könnten Sie private Schlüssel nutzen und sicher auf einem Gerät aufbewahren, sodass vertrauliches kryptografisches Material das Gerät niemals verlässt. X.509-Zertifikate bieten eine stärkere Client-Authentifizierung als andere Systeme, wie z. B. Benutzername und Passwort oder Bearer-Token, da der private Schlüssel das Gerät nie verlässt.

AWS IoT authentifiziert Client-Zertifikate mithilfe des Client-Authentifizierungsmodus des TLS-Protokolls. TLS-Unterstützung ist in vielen Programmiersprachen und Betriebssystemen verfügbar und stellt die gängige Verschlüsselungsmethode für Daten dar. AWS IoT Fordert bei der TLS-Client-Authentifizierung ein X.509-Client-Zertifikat an und validiert den Status des Zertifikats AWS-Konto anhand einer Zertifikatsregistrierung. Anschließend fordert es den Client auf, den Besitz des privaten Schlüssels nachzuweisen, der dem im Zertifikat enthaltenen öffentlichen Schlüssel entspricht. AWS IoT verlangt von den Clients, die Server Name Indication (SNI) -Erweiterung an das Transport Layer Security (TLS) -Protokoll zu senden. Weitere Informationen zum Konfigurieren der SNI-Erweiterung finden Sie unter Transportsicherheit in AWS IoT Core.

Um eine sichere und konsistente Client-Verbindung zum AWS IoT Core zu ermöglichen, muss ein X.509-Client-Zertifikat über Folgendes verfügen:

Sie können Clientzertifikate erstellen, die die Amazon Root CA verwenden, und Sie können Ihre eigenen von einer anderen Zertifizierungsstelle (Certificate Authority, CA) signierten Clientzertifikate verwenden. Weitere Informationen zur Verwendung der AWS IoT Konsole zum Erstellen von Zertifikaten, die die Amazon Root-CA verwenden, finden Sie unterErstellen Sie AWS IoT Client-Zertifikate. Weitere Informationen zur Verwendung eigener X.509-Zertifikate finden Sie unter Erstellen eigener Clientzertifikate.

Der Ablaufzeitpunkt für mit einem CA-Zertifikat signierte Zertifikate wird bei der Erstellung des entsprechenden Zertifikats festgelegt. Von generierte X.509-Zertifikate AWS IoT laufen am 31. Dezember 2049 um Mitternacht UTC ab (2049-12-31T 23:59:59 Z).

AWS IoT Device Defender kann Audits an Ihren Geräten durchführen AWS-Konto und dabei die gängigen Best Practices für die IoT-Sicherheit unterstützen. Dazu gehört die Verwaltung der Ablaufdaten von X.509-Zertifikaten, die von Ihrer CA oder der Amazon Root CA signiert wurden. Weitere Informationen zur Verwaltung des Ablaufdatums eines Zertifikats finden Sie unter Ablaufen von Gerätezertifikaten und Ablaufende Zertifizierungsstellenzertifikate.

Im offiziellen AWS IoT Blog finden Sie einen tieferen Einblick in die Verwaltung der Rotation von Gerätezertifikaten und bewährte Sicherheitsmethoden unter So verwalten Sie die Rotation von IoT-Gerätezertifikaten mithilfe von AWS IoT.

Verwendung von X.509-Clientzertifikaten in mehreren AWS-Konto s mit Registrierung mehrerer Konten

Die Registrierung für mehrere Konten ermöglicht das Verschieben von Geräten zwischen Ihren AWS-Konto innerhalb derselben Region oder in unterschiedlichen Regionen. Sie können ein Gerät in einem Testkonto registrieren, testen und konfigurieren und dasselbe Gerät samt Gerätezertifikat anschließend in einem Produktionskonto registrieren und verwenden. Sie können auch das Client-Zertifikat auf dem Gerät oder die Gerätezertifikate ohne registrierte Zertifizierungsstelle registrieren. AWS IoT Weitere Informationen finden Sie unter Registrieren eines Clientzertifikats, das von einer nicht registrierten CA (CLI) signiert wurde.

Anmerkung

Zertifikate, die für die Registrierung mehrerer Konten verwendet werden, werden auf den Endpunkttypen iot:Data-ATS, iot:Data (Legacy), iot:Jobs und iot:CredentialProvider unterstützt. Weitere Informationen zu AWS IoT Geräteendpunkten finden Sie unterAWS IoT Gerätedaten und Dienstendpunkte.

Geräte, die die Registrierung mehrerer Konten verwenden, müssen die Server Name Indication (SNI) -Erweiterung an das Transport Layer Security (TLS) -Protokoll senden und die vollständige Endpunktadresse im host_name Feld angeben, wenn sie eine Verbindung herstellen. AWS IoT AWS IoT verwendet die Endpunktadressehost_name, um die Verbindung zum richtigen AWS IoT Konto weiterzuleiten. Vorhandene Geräte, die keine gültige Endpunktadresse in host_name senden, funktionieren weiterhin, können aber die Funktionen nicht nutzen, für die diese Informationen benötigt werden. Weitere Informationen zur SNI-Erweiterung und zum Identifizieren der Endpunktadresse für das Feld host_name finden Sie unter Transportsicherheit in AWS IoT Core.

So verwenden Sie die Registrierung für mehrere Konten
  1. Sie können die Gerätezertifikate ohne Zertifizierungsstelle registrieren. Sie können die signierende Zertifizierungsstelle in mehreren Konten im SNI_ONLY-Modus registrieren und diese Zertifizierungsstelle verwenden, um dasselbe Clientzertifikat für mehrere Konten zu registrieren. Weitere Informationen finden Sie unter Registrieren Sie ein CA-Zertifikat im SNI_ONLY-Modus (CLI) – Empfohlen.

  2. Sie können die Gerätezertifikate ohne Zertifizierungsstelle registrieren. Siehe Registrieren eines von einer nicht registrierten CA signierten Clientzertifikats (CLI). Die Registrierung einer Zertifizierungsstelle ist optional. Sie müssen die Zertifizierungsstelle, mit der die Gerätezertifikate signiert wurden, nicht registrieren AWS IoT.

Algorithmen zum Signieren von Zertifikaten werden unterstützt von AWS IoT

AWS IoT unterstützt die folgenden Algorithmen zum Signieren von Zertifikaten:

  • SHA256WITHRSA

  • SHA384WITHRSA

  • SHA512WITHRSA

  • SHA256WITHRSAANDMGF1 (RSASSA-PSS)

  • SHA384WITHRSAANDMGF1 (RSASSA-PSS)

  • SHA512WITHRSAANDMGF1 (RSASSA-PSS)

  • DSA_WITH_SHA256

  • ECDSA-WITH-SHA256

  • ECDSA-WITH-SHA384

  • ECDSA-WITH-SHA512

Weitere Informationen zur Authentifizierung und Sicherheit von Zertifikaten finden Sie unter Qualität der Gerätezertifikatschlüssel.

Anmerkung

Die Zertifikatssignierungsanforderung (Certificate Signing Request, CSR) muss einen öffentlichen Schlüssel enthalten. Bei dem Schlüssel kann es sich entweder um einen RSA-Schlüssel mit einer Länge von mindestens 2048 Bit oder um einen ECC-Schlüssel aus NIST P-256, NIST P-384 oder NIST P-521-Kurven handeln. Weitere Informationen finden Sie CreateCertificateFromCsrim AWS IoT API-Referenzhandbuch.

Die wichtigsten Algorithmen werden unterstützt von AWS IoT

Die folgende Tabelle zeigt, wie Schlüsselalgorithmen unterstützt werden:

Schlüsselalgorithmus Algorithmus zum Signieren von Zertifikaten TLS-Version Unterstützt? Sie können zwischen Yes und No wählen
RSA mit einer Schlüsselgröße von mindestens 2048 Bit Alle TLS 1.2 TLS 1.3 Ja
ECC IST P-256/P-384/P-521 Alle TLS 1.2 TLS 1.3 Ja
RSA-PSS mit einer Schlüsselgröße von mindestens 2048 Bit Alle TLS 1.2 Nein
RSA-PSS mit einer Schlüsselgröße von mindestens 2048 Bit Alle TLS 1.3 Ja

Um ein Zertifikat mithilfe von CreateCertificateFromCSR zu erstellen, können Sie einen unterstützten Schlüsselalgorithmus verwenden, um einen öffentlichen Schlüssel für Ihre CSR zu generieren. Um Ihr eigenes Zertifikat mit RegisterCertificateunserer RegisterCertificateWithoutCA zu registrieren, können Sie einen unterstützten Schlüsselalgorithmus verwenden, um einen öffentlichen Schlüssel für das Zertifikat zu generieren.

Weitere Informationen finden Sie unter Sicherheitsrichtlinien.