Certificats client X.509 - 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.

Certificats client X.509

Les certificats X.509 permettent AWS IoT d'authentifier les connexions entre les clients et les appareils. Les certificats clients doivent être enregistrés pour AWS IoT qu'un client puisse communiquer avec lui AWS IoT. Un certificat client peut être enregistré en plusieurs exemplaires Compte AWS au même endroit Région AWS pour faciliter le déplacement d'appareils entre vos Compte AWS appareils situés dans la même région. Pour plus d’informations, consultez Utilisation de certificats client X.509 dans plusieurs Compte AWS s avec enregistrement multi-comptes.

Nous vous recommandons d’attribuer à chaque appareil ou client un certificat unique de manière à permettre des actions de gestion des clients bien définies, y compris la révocation de certificats. Les appareils et les clients doivent également prendre en charge la rotation et le remplacement des certificats afin d'aider à assurer un bon fonctionnement à l'expiration de ces derniers.

Pour de plus amples informations sur l'utilisation des certificats X.509 pour la prise en charge d’un grand nombre d’appareils, veuillez consulter Mise en service des appareils pour prendre connaissance des différentes options de gestion des certificats et de mise en service prises en charge par AWS IoT .

AWS IoT prend en charge les types de certificats clients X.509 suivants :
  • Certificats X.509 générés par AWS IoT

  • Certificats X.509 signés par une autorité de certification enregistrée auprès AWS IoT de.

  • Certificats X.509 signés par une autorité de certification non enregistrée auprès d’ AWS IoT.

Cette section décrit comment gérer les certificats X.509 dans AWS IoT. Vous pouvez utiliser la AWS IoT console ou AWS CLI effectuer les opérations de certificat suivantes :

Pour plus d'informations sur les AWS CLI commandes qui exécutent ces opérations, consultez la section Référence de la AWS IoT CLI.

Utilisation des certificats clients X.509

Les certificats X.509 authentifient les connexions des clients et des appareils à. AWS IoT Les certificats X.509 offrent plusieurs avantages par rapport à d'autres mécanismes d'identification et d'authentification. Les certificats X.509 activent des clés asymétriques à utiliser avec les appareils. Par exemple, vous pouvez graver des clés privées dans un stockage sécurisé sur un appareil afin que le matériel cryptographique sensible ne quitte jamais l'appareil. Les certificats X.509 offrent une authentification du client plus fiable que d'autres méthodes, telles que le nom d'utilisateur et le mot de passe ou les jetons de porteur, car la clé privée ne quitte jamais l'appareil.

AWS IoT authentifie les certificats clients en utilisant le mode d'authentification client du protocole TLS. La prise en charge de TLS est disponible dans de nombreux langages de programmation et systèmes d'exploitation ; ce protocole est couramment utilisée pour le chiffrement des données. Dans le cadre de l'authentification client TLS, AWS IoT demande un certificat client X.509 et valide le statut du certificat par Compte AWS rapport à un registre de certificats. Il demande ensuite au client de prouver qu'il est propriétaire de la clé privée correspondant à la clé publique contenue dans le certificat. AWS IoT oblige les clients à envoyer l'extension SNI (Server Name Indication) au protocole TLS (Transport Layer Security). Pour de plus amples informations sur la configuration de l'extension SNI, veuillez consulter Sûreté des transports dans AWS IoT Core.

Pour faciliter une connexion client sécurisée et cohérente au AWS IoT cœur, un certificat client X.509 doit posséder les éléments suivants :

Vous pouvez créer des certificats clients qui utilisent Amazon Root CA et vous pouvez utiliser vos propres certificats clients signés par une autre autorité de certification (CA). Pour plus d'informations sur l'utilisation de la AWS IoT console pour créer des certificats utilisant l'autorité de certification Amazon Root, consultezCréation de certificats AWS IoT clients. Pour plus d'informations sur l'utilisation de vos propres certificats X.509, consultez Création de vos propres certificats clients.

La date et l'heure d'expiration des certificats signés par un certificat d'autorité de certification sont définies au moment de la création du certificat. Les certificats X.509 générés par AWS IoT expirent à minuit UTC le 31 décembre 2049 (2049-12-31T 23:59:59 Z).

AWS IoT Device Defender peut effectuer des audits sur votre appareil Compte AWS et sur vos appareils conformément aux meilleures pratiques courantes en matière de sécurité de l'IoT. Cela inclut la gestion des dates d'expiration des certificats X.509 signés par votre autorité de certification ou par l'autorité Amazon Root CA. Pour plus d'informations sur la gestion de la date d'expiration d'un certificat, consultez les sections Expiration du certificat de l'appareil et expiration du certificat CA.

Sur le AWS IoT blog officiel, vous trouverez une analyse plus approfondie de la gestion de la rotation des certificats des appareils et des meilleures pratiques en matière de sécurité dans la section Comment gérer la rotation des certificats des appareils IoT à l'aide de AWS IoT.

Utilisation de certificats client X.509 dans plusieurs Compte AWS s avec enregistrement multi-comptes

L'inscription à plusieurs comptes permet de déplacer des appareils entre vos Compte AWS dans la même région ou dans des régions différentes. Avec cela, vous pouvez enregistrer, tester et configurer un appareil dans un compte de préproduction, puis enregistrer et utiliser le même appareil et le même certificat d'appareil dans un compte de production. Vous pouvez également enregistrer le certificat client sur l'appareil ou les certificats de l'appareil sans qu'une autorité de certification soit enregistrée auprès de celle-ci AWS IoT. Pour plus d'informations, voir Enregistrer un certificat client signé par une autorité de certification (CLI) non enregistrée.

Note

Les certificats utilisés pour l'enregistrement de plusieurs comptes sont pris en charge sur iot:Data-ATS les types iot:Data (anciens), iot:Jobs, et de point de terminaison iot:CredentialProvider. Pour plus d'informations sur les points de terminaison des AWS IoT appareils, consultezAWS IoT données de l'appareil et points de terminaison de service.

Les appareils qui utilisent l'enregistrement multi-comptes doivent envoyer l'extension SNI (Server Name Indication) au protocole TLS (Transport Layer Security) et fournir l'adresse complète du point de terminaison host_name sur le terrain, lorsqu'ils se connectent à. AWS IoT AWS IoT utilise l'adresse du point de terminaison host_name pour acheminer la connexion vers le AWS IoT compte approprié. Les périphériques existants qui n'envoient pas d'adresse de point de terminaison valide dans host_name continueront de fonctionner, mais ils ne pourront pas utiliser les fonctionnalités qui nécessitent ces informations. Pour de plus amples informations sur l'extension SNI et pour savoir comment identifier l'adresse du point de terminaison pour le champ host_name, veuillez consulter Sûreté des transports dans AWS IoT Core.

Pour utiliser l'enregistrement de plusieurs comptes
  1. Vous pouvez enregistrer les certificats d’appareil auprès d'une autorité de certification. Vous pouvez enregistrer l'autorité de certification signataire dans plusieurs comptes en SNI_ONLY mode et utiliser cette autorité de certification pour enregistrer le même certificat client sur plusieurs comptes. Pour plus d’informations, consultez Enregistrer un certificat CA en mode SNI_ONLY (CLI) - Recommandé.

  2. Vous pouvez enregistrer les certificats d’appareil sans autorité de certification. veuillez consulter Enregistrement d’un certificat client signé par une autorité de certification non enregistrée (CLI)​. L'enregistrement d'une autorité de certification est facultatif. Vous n'êtes pas obligé d'enregistrer l'autorité de certification auprès de laquelle les certificats de l'appareil ont été signés AWS IoT.

Algorithmes de signature de certificats supportés par AWS IoT

AWS IoT prend en charge les algorithmes de signature de certificats suivants :

  • SHA256WITHRSA

  • SHA384WITHRSA

  • SHA512WITHRSA

  • SHA256WITHRSAANDMGF1 (RSASSA-PSS)

  • SHA384WITHRSAANDMGF1 (RSASSA-PSS)

  • SHA512WITHRSAANDMGF1 (RSASSA-PSS)

  • DSA_WITH_SHA256

  • ECDSA-WITH-SHA256

  • ECDSA-WITH-SHA384

  • ECDSA-WITH-SHA512

Pour plus d'informations sur l'authentification et la sécurité des certificats, consultez la section Qualité de la clé de certificat de l'appareil.

Note

La demande de signature de certificat (CSR) doit inclure une clé publique. La clé peut être soit une clé RSA d'une longueur d'au moins 2 048 bits, soit une clé ECC issue des courbes NIST P-256, NIST P-384 ou NIST P-521. Pour plus d'informations, consultez CreateCertificateFromCsrle Guide de référence des AWS IoT API.

Algorithmes clés pris en charge par AWS IoT

Le tableau ci-dessous montre comment les algorithmes clés sont pris en charge :

Algorithme clé Algorithme de signature de certificat Version de TLS Pris en charge ? Oui ou Non
RSA avec une taille de clé d'au moins 2 048 bits Tous TLS 1.2 TLS 1.3 Oui
ECC NIST P-256/P-384/P-521 Tous TLS 1.2 TLS 1.3 Oui
RSA-PSS avec une taille de clé d'au moins 2048 bits Tous TLS 1.2 Non
RSA-PSS avec une taille de clé d'au moins 2048 bits Tous TLS 1.3 Oui

Pour créer un certificat à l'aide de CreateCertificateFromCSR, vous pouvez utiliser un algorithme de clé pris en charge pour générer une clé publique pour votre CSR. Pour enregistrer votre propre certificat avec RegisterCertificateou RegisterCertificatesans CA, vous pouvez utiliser un algorithme de clé pris en charge afin de générer une clé publique pour le certificat.

Pour plus d'informations, consultez la section Politiques de sécurité.