Authentification du serveur - AWS IoT Core

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Authentification du serveur

Lorsque votre appareil ou un autre client tente de se connecter AWS IoT Core, le AWS IoT Core serveur envoie un certificat X.509 que votre appareil utilise pour authentifier le serveur. L'authentification s'effectue au niveau de la TLS couche par le biais de la validation de la chaîne de certificats X.509. Il s'agit de la même méthode que celle utilisée par votre navigateur lorsque vous visitez un HTTPSURL. Si vous souhaitez utiliser des certificats de votre propre autorité de certification, veuillez consulter Gestion de vos certificats d’autorité de certification.

Lorsque vos appareils ou d'autres clients établissent une TLS connexion à un AWS IoT Core point de terminaison, AWS IoT Core présente une chaîne de certificats que les appareils utilisent pour vérifier qu'ils communiquent avec eux AWS IoT Core et qu'aucun autre serveur ne se fait passer AWS IoT Core pour un autre serveur. La chaîne présentée dépend de la combinaison du type de point de terminaison auquel l'appareil se connecte et de la suite de chiffrement AWS IoT Core négociée par le client lors de la prise de contactTLS.

Types de point de terminaison

AWS IoT Core soutientiot:Data-ATS. iot:Data-ATSles points de terminaison présentent un certificat de serveur signé par une autorité de certification Amazon Trust Services.

Les certificats présentés par les ATS endpoints sont signés par Starfield. Certaines implémentations TLS client nécessitent la validation de la racine de confiance et exigent que les certificats Starfield CA soient installés dans les magasins de confiance du client.

Avertissement

Il n'est pas recommandé d'utiliser une méthode d'épinglage du certificat qui hache l'intégralité du certificat (y compris le nom de l'émetteur, etc.) car cela entraînerait l'échec de la vérification des certificats, car les ATS certificats que nous fournissons sont signés par Starfield et portent un nom d'émetteur différent.

Important

Utilisez des iot:Data-ATS points de terminaison. Les certificats Symantec et Verisign sont devenus obsolètes et ne sont plus pris en charge par. AWS IoT Core

Vous pouvez utiliser la describe-endpoint commande pour créer votre ATS point de terminaison.

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

Cette commande describe-endpoint renvoie un point de terminaison au format suivant.

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

La première fois que la commande describe-endpoint est appelée, un point de terminaison est créé. Tous les appels suivants de describe-endpoint renvoient le même point de terminaison.

Note

Pour voir votre iot:Data-ATS terminal dans la AWS IoT Core console, choisissez Paramètres. La console affiche uniquement le point de terminaison iot:Data-ATS.

Création d'un IotDataPlaneClient avec le AWS SDK pour Java

Pour créer une annonce IotDataPlaneClient utilisant un iot:Data-ATS point de terminaison, vous devez effectuer les opérations suivantes.

  • Créez un iot:Data-ATS point de terminaison à l'aide du DescribeEndpointAPI.

  • Spécifiez ce point de terminaison lorsque vous créez le IotDataPlaneClient.

L'exemple suivant exécute ces deux opérations.

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(); }

Certificats d'autorité de certification pour l'authentification du serveur

Selon le type de point de terminaison de données que vous utilisez et la suite de chiffrement que vous avez négociée, les certificats d'authentification AWS IoT Core du serveur sont signés par l'un des certificats d'autorité de certification racine suivants :

Points de terminaison Amazon Trust Services (préférés)

Note

Vous devrez peut-être faire un clic droit sur ces liens et sélectionner Enregistrer le lien sous... pour enregistrer ces certificats sous forme de fichiers.

  • RSAClé de 2048 bits : Amazon Root CA 1.

  • RSAClé de 4096 bits : Amazon Root CA 2. Réservé pour une utilisation future.

  • ECCClé de 256 bits : Amazon Root CA 3.

  • ECCClé de 384 bits : Amazon Root CA 4. Réservé pour une utilisation future.

Ces certificats sont tous signés (signature croisée) par le certificat d'autorité de certification racine Starfield. Toutes les nouvelles AWS IoT Core régions, à compter du lancement de AWS IoT Core la région Asie-Pacifique (Mumbai) le 9 mai 2018, ne proposent que ATS des certificats.

VeriSign Points de terminaison (anciens)

Instructions d'authentification du serveur

De nombreuses variables peuvent affecter la capacité d'un appareil à valider le certificat d'authentification du serveur AWS IoT Core . Par exemple, les appareils peuvent être trop limités en mémoire pour contenir tous les certificats d'autorité de certification racine possibles, ou les appareils peuvent mettre en œuvre une méthode non standard de validation de certificat. Pour ces raisons, nous suggérons de suivre les instructions suivantes :

  • Nous vous recommandons d'utiliser votre ATS terminal et d'installer tous les appareils pris en charge Amazon Root CA certificats.

  • Si vous ne pouvez pas stocker tous ces certificats sur votre appareil et si vos appareils n'utilisent pas la validation ECC basée, vous pouvez omettre le Amazon Root CA 3 et Amazon Root CA 4ECCcertificats. Si vos appareils ne mettent pas en œuvre la validation RSA basée sur les certificats, vous pouvez omettre Amazon Root CA 1 et Amazon Root CA 2RSAcertificats. Vous devrez peut-être faire un clic droit sur ces liens et sélectionner Enregistrer le lien sous... pour enregistrer ces certificats sous forme de fichiers.

  • Si vous rencontrez des problèmes de validation de certificat de serveur lorsque vous vous connectez à votre ATS terminal, essayez d'ajouter le certificat Amazon Root CA croisé pertinent à votre boutique de confiance. Vous devrez peut-être faire un clic droit sur ces liens et sélectionner Enregistrer le lien sous... pour enregistrer ces certificats sous forme de fichiers.

  • Si vous rencontrez des problèmes de validation de certificat de serveur, votre appareil devra peut-être explicitement approuver l'autorité de certification racine. Essayez d'ajouter Starfield Root CA Certificatedans votre magasin de confiance.

  • Si vous rencontrez toujours des problèmes après avoir exécuté les étapes ci-dessus, contactez AWS l’assistance aux développeurs.

Note

Les certificats CA ne peuvent pas être utilisés au-delà de leur date d'expiration pour valider un certificat de serveur. Les certificats CA peuvent devoir être remplacés avant leur date d'expiration. Vérifiez que vous pouvez mettre à jour les certificats d’autorité de certification racine sur tous vos appareils ou vos clients afin d'assurer une connectivité permanente et la conformité aux bonnes pratiques de sécurité du moment.

Note

Lorsque vous vous connectez AWS IoT Core au code de votre appareil, transmettez le certificat au code API que vous utilisez pour vous connecter. La API quantité que vous utilisez peut varier selonSDK. Pour plus d'informations, consultez la section AWS IoT Core Appareil SDKs.