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

Serverauthentifizierung

Wenn Ihr Gerät oder ein anderer Client versucht, eine Verbindung herzustellen AWS IoT Core, sendet der AWS IoT Core Server ein X.509-Zertifikat, das Ihr Gerät zur Authentifizierung des Servers verwendet. Die Authentifizierung erfolgt auf der TLS Ebene durch Validierung der X.509-Zertifikatskette. Dies ist dieselbe Methode, die Ihr Browser verwendet, wenn Sie eine HTTPS URL besuchen. Informationen zum Verwenden von Zertifikaten von Ihrer eigenen Zertifizierungsstelle finden Sie unter Verwalten eigener CA-Zertifikate.

Wenn Ihre Geräte oder andere Clients eine TLS Verbindung zu einem AWS IoT Core Endpunkt herstellen, wird eine Zertifikatskette AWS IoT Core angezeigt, anhand derer die Geräte überprüfen, ob sie mit einem anderen Server kommunizieren AWS IoT Core und nicht mit einem anderen Server, der sich als solcher ausgibt. AWS IoT Core Die angezeigte Kette hängt von einer Kombination aus dem Endpunkttyp, zu dem das Gerät eine Verbindung herstellt, und der Cipher Suite ab, die der Client und die während des Handshakes AWS IoT Core ausgehandelt haben. TLS

Endpunkttypen

AWS IoT Core unterstützt. iot:Data-ATS iot:Data-ATSEndgeräte legen ein Serverzertifikat vor, das von einer Amazon Trust Services-Zertifizierungsstelle signiert wurde.

Von ATS Endpunkten vorgelegte Zertifikate sind von Starfield kreuzsigniert. Bei einigen TLS Client-Implementierungen muss der Root-of-Trust-Status validiert werden und die Zertifikate der Starfield-Zertifizierungsstelle müssen in den Trust Stores des Clients installiert sein.

Warnung

Es wird nicht empfohlen, eine Methode des Zertifikats-Pinning zu verwenden, bei der das gesamte Zertifikat (einschließlich des Ausstellernamens usw.) gehasht wird, da dies dazu führen würde, dass die Zertifikatsverifizierung fehlschlägt, da die von uns bereitgestellten ATS Zertifikate von Starfield kreuzsigniert sind und einen anderen Ausstellernamen haben.

Wichtig

Verwenden iot:Data-ATS Sie Endpunkte. Zertifikate von Symantec und Verisign sind veraltet und werden von nicht mehr unterstützt. AWS IoT Core

Sie können den describe-endpoint Befehl verwenden, um Ihren Endpunkt zu erstellen. ATS

aws iot describe-endpoint --endpoint-type iot:Data-ATS

Der Befehl describe-endpoint gibt einen Endpunkt im folgenden Format zurück.

account-specific-prefix.iot.your-region.amazonaws.com
Anmerkung

Beim ersten Aufruf von describe-endpoint wird ein Endpunkt erstellt. Alle nachfolgenden Aufrufe von describe-endpoint geben den gleichen Endpunkt zurück.

Anmerkung

Um Ihren iot:Data-ATS Endpunkt in der AWS IoT Core Konsole zu sehen, wählen Sie Einstellungen. Die Konsole zeigt nur den iot:Data-ATS-Endpunkt an.

Erstellen eines IotDataPlaneClient mit dem AWS SDK für Java

Um eine zu erstellenIotDataPlaneClient, die einen iot:Data-ATS Endpunkt verwendet, müssen Sie wie folgt vorgehen.

  • Erstellen Sie einen iot:Data-ATS Endpunkt mit dem DescribeEndpointAPI.

  • Geben Sie diesen Endpunkt an, wenn Sie den IotDataPlaneClient erstellen.

Im folgenden Beispiel werden beide Operationen ausgeführt.

public void setup() throws Exception { IotClient client = IotClient.builder().credentialsProvider(CREDENTIALS_PROVIDER_CHAIN).region(Region.US_EAST_1).build(); String endpoint = client.describeEndpoint(r -> r.endpointType("iot:Data-ATS")).endpointAddress(); iot = IotDataPlaneClient.builder() .credentialsProvider(CREDENTIALS_PROVIDER_CHAIN) .endpointOverride(URI.create("https://" + endpoint)) .region(Region.US_EAST_1) .build(); }

CA-Zertifikate für die Serverauthentifizierung

Je nachdem, welchen Typ von Datenendpunkt Sie verwenden und welche Verschlüsselungssuite Sie ausgehandelt haben, werden AWS IoT Core Serverauthentifizierungszertifikate mit einem der folgenden Root-CA-Zertifikate signiert:

Amazon Trust Services-Endpunkte (bevorzugt)

Anmerkung

Möglicherweise müssen Sie mit der rechten Maustaste auf diese Links klicken und Link speichern unter... auswählen, um diese Zertifikate als Dateien zu speichern.

  • RSA2048-Bit-Schlüssel: Amazon Root CA 1.

  • RSA4096-Bit-Schlüssel: Amazon Root CA 2. Reserviert für future Verwendung.

  • ECC256-Bit-Schlüssel: Amazon Root CA 3.

  • ECC384-Bit-Schlüssel: Amazon Root CA 4. Reserviert für future Verwendung.

Diese Zertifikate werden alle durch das Starfield Root CA-Zertifikat signiert. Alle neuen AWS IoT Core Regionen, beginnend mit der Markteinführung von AWS IoT Core in der Region Asien-Pazifik (Mumbai) am 9. Mai 2018, bieten nur ATS Zertifikate an.

VeriSign Endgeräte (veraltet)

Richtlinien für die Serverauthentifizierung

Es gibt viele Variablen, die die Fähigkeit eines Geräts zur Überprüfung des AWS IoT Core -Server-Authentifizierungszertifikats beeinflussen können. So können beispielsweise Geräte zu speicherbeschränkt sein, um alle möglichen Root-CA-Zertifikate aufzunehmen, oder Geräte können eine nicht standardmäßige Methode der Zertifikatsvalidierung implementieren. Aus diesen Gründen empfehlen wir, diese Richtlinien zu befolgen:

  • Wir empfehlen, dass Sie Ihren ATS Endpunkt verwenden und alle unterstützten Geräte installieren Amazon Root CA zertifikate.

  • Wenn Sie nicht alle diese Zertifikate auf Ihrem Gerät speichern können und Ihre Geräte keine ECC basierte Validierung verwenden, können Sie das weglassen Amazon Root CA 3 und Amazon Root CA 4ECCzertifikate. Wenn Ihre Geräte keine RSA basierte Zertifikatsvalidierung implementieren, können Sie das weglassen Amazon Root CA 1 und Amazon Root CA 2RSAZertifikate. Möglicherweise müssen Sie mit der rechten Maustaste auf diese Links klicken und Link speichern unter... auswählen, um diese Zertifikate als Dateien zu speichern.

  • Wenn Sie Probleme mit der Validierung von Serverzertifikaten haben, wenn Sie eine Verbindung zu Ihrem ATS Endpunkt herstellen, versuchen Sie, das entsprechende quersignierte Amazon Root CA-Zertifikat zu Ihrem Trust Store hinzuzufügen. Möglicherweise müssen Sie mit der rechten Maustaste auf diese Links klicken und Link speichern unter... auswählen, um diese Zertifikate als Dateien zu speichern.

  • Wenn bei der Validierung von Serverzertifikaten Probleme auftreten, muss Ihr Gerät möglicherweise explizit der Stammzertifizierungsstelle vertrauen. Versuchen Sie, das hinzuzufügen Starfield Root CA Certificatezu Ihrem Trust Store.

  • Wenn nach der Ausführung der obigen Schritte immer noch Probleme auftreten, wenden Sie sich bitte an den AWS -Developer Support.

Anmerkung

CA-Zertifikate haben ein Ablaufdatum, nach dem sie nicht mehr zur Validierung eines Serverzertifikats verwendet werden können. Es kann sein, dass CA-Zertifikate vor ihrem Ablaufdatum ersetzt werden müssen. Stellen Sie sicher, dass Sie die CA-Stammzertifikate auf all Ihren Geräten oder Clients aktualisieren können, um eine ununterbrochene Verbindung sicherzustellen und bei bewährten Sicherheitsmethoden stets auf dem aktuellen Stand zu sein.

Anmerkung

Wenn Sie AWS IoT Core in Ihrem Gerätecode eine Verbindung herstellen, geben Sie das Zertifikat an das Gerät weiter, das API Sie für die Verbindung verwenden. Was API Sie verwenden, hängt davon abSDK. Weitere Informationen finden Sie unter AWS IoT Core Gerät SDKs.