Gestion de vos certificats d’autorité de certification - 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.

Gestion de vos certificats d’autorité de certification

Cette section décrit les tâches courantes de gestion de vos propres certificats d'autorité de certification.

Vous pouvez enregistrer votre autorité de certification (CA) auprès de AWS IoT si vous utilisez des certificats clients signés par une autorité de certification qui AWS IoT ne reconnaît pas.

Si vous souhaitez que les clients enregistrent automatiquement leurs certificats clients auprès AWS IoT lors de leur première connexion, l'autorité de certification qui a signé les certificats clients doit être enregistrée auprès AWS IoT. Dans le cas contraire, vous n'avez pas besoin d'enregistrer le certificat CA qui a signé les certificats clients.

Note

Un certificat d'autorité de certification peut être enregistré en mode DEFAULT que par un seul compte dans une région. Un certificat d'autorité de certification peut être enregistré en mode SNI_ONLY que par plusieurs comptes dans une région.

Création d’un certificat d’autorité de certification

Si vous ne possédez pas de certificat CA, vous pouvez utiliser les outils Open SSL v1.1.1i pour en créer un.

Note

Vous ne pouvez pas exécuter cette procédure dans AWS IoT console.

Pour créer un certificat CA à l'aide des outils Open SSL v1.1.1i
  1. Générez une paire de clés.

    openssl genrsa -out root_CA_key_filename.key 2048
  2. Utilisez la clé privée de la paire de clés pour générer un certificat CA.

    openssl req -x509 -new -nodes \ -key root_CA_key_filename.key \ -sha256 -days 1024 \ -out root_CA_cert_filename.pem

Enregistrement de votre certificat d’autorité de certification

Ces procédures décrivent comment enregistrer un certificat auprès d'une autorité de certification (CA) autre que l'autorité de certification d'Amazon. AWS IoT Core utilise des certificats CA pour vérifier la propriété des certificats. Pour utiliser des certificats d'appareils signés par une autorité de certification autre que celle d'Amazon, vous devez enregistrer le certificat d'autorité de certification auprès de AWS IoT Core afin qu'il puisse vérifier la propriété du certificat de l'appareil.

Enregistrement d’un certificat d'autorité de certification (console)

Note

Pour enregistrer un certificat CA dans la console, commencez par enregistrer le certificat CA dans la console. Vous pouvez enregistrer votre autorité de certification en mode multi-comptes, sans avoir à fournir de certificat de vérification ni d’accéder à la clé privée. Une autorité de certification peut être enregistrée en mode multi-comptes par plusieurs Comptes AWS dans le même Région AWS. Vous pouvez enregistrer votre autorité de certification en mode compte unique en fournissant un certificat de vérification et une preuve de propriété de la clé privée de l'autorité de certification.

Enregistrer un certificat CA (CLI)

Vous pouvez enregistrer un certificat CA en mode DEFAULT ou en mode SNI_ONLY. Une autorité de certification peut être enregistrée en DEFAULT mode par une Compte AWS en un Région AWS. Une autorité de certification peut être enregistrée en SNI_ONLY mode par plusieurs Comptes AWS dans le même Région AWS. Pour plus d'informations sur le mode certificat CA, consultez certificateMode.

Note

Nous vous recommandons d'enregistrer une autorité de certification en mode SNI_ONLY. Vous n'avez pas besoin de fournir de certificat de vérification ni d'accès à la clé privée, et vous pouvez enregistrer l'autorité de certification par plusieurs Comptes AWS dans le même Région AWS.

Enregistrer un certificat CA en ONLY mode SNI _ (CLI) - Recommandé

Prérequis

Vérifiez que les éléments suivants sont disponibles sur votre ordinateur avant de continuer :

Pour enregistrer un certificat CA en SNI_ONLY mode à l'aide du AWS CLI
  1. Enregistrez le certificat CA auprès de AWS IoT. À l'aide de la register-ca-certificate commande, entrez le nom du fichier du certificat CA. Pour plus d'informations, consultez register-ca-certificatele AWS CLI Référence de commande.

    aws iot register-ca-certificate \ --ca-certificate file://root_CA_cert_filename.pem \ --certificate-mode SNI_ONLY

    En cas de succès, cette commande renvoie le certificateId.

  2. À ce stade, le certificat CA a été enregistré auprès AWS IoT mais il est inactif. Le certificat de l'autorité de certification doit être actif avant que vous puissiez enregistrer les certificats clients qu'il a signés.​

    Cette étape active le certificat de l'autorité de certification.

    Pour activer le certificat CA, utilisez la commande update-certificate comme suit. Pour plus d'informations, voir le certificat de mise à jour dans le AWS CLI Référence de commande.

    aws iot update-ca-certificate \ --certificate-id certificateId \ --new-status ACTIVE

Utilisez la commande describe-ca-certificate pour voir le statut du certificat CA. Pour plus d'informations, consultez describe-ca-certificatele AWS CLI Référence de commande.

Enregistrez un certificat CA en DEFAULT mode (CLI)

Prérequis

Vérifiez que les éléments suivants sont disponibles sur votre ordinateur avant de continuer :

  • Le fichier de certificat de l'autorité de certification racine (référencé dans l'exemple suivant sous le nom root_CA_cert_filename.pem)

  • Le fichier de certificat de l'autorité de certification racine (référencé dans l'exemple suivant sous root_CA_key_filename.key)

  • Ouvrez la SSL version v1.1.1i ou ultérieure

Pour enregistrer un certificat CA en DEFAULT mode à l'aide du AWS CLI
  1. Pour obtenir un code d'enregistrement auprès de AWS IoT, utilisezget-registration-code. Enregistrez le registrationCode renvoyé à utiliser en tant que Common Name du certificat de vérification de clé privée. Pour plus d'informations, consultez get-registration-codele AWS CLI Référence de commande.

    aws iot get-registration-code
  2. Générez une paire de clés pour le certificat de vérification de clé privée :

    openssl genrsa -out verification_cert_key_filename.key 2048
  3. Créez une demande de signature de certificat (CSR) pour le certificat de vérification de clé privée. Dans le champ Common Name du certificat, indiquez la valeur registrationCode renvoyée par get-registration-code.

    openssl req -new \ -key verification_cert_key_filename.key \ -out verification_cert_csr_filename.csr

    Vous êtes invité à entrer certaines informations, notamment le Common Name du certificat.

    You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]: State or Province Name (full name) []: Locality Name (for example, city) []: Organization Name (for example, company) []: Organizational Unit Name (for example, section) []: Common Name (e.g. server FQDN or YOUR name) []:your_registration_code Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:
  4. Utilisez le CSR pour créer un certificat de vérification de clé privée :

    openssl x509 -req \ -in verification_cert_csr_filename.csr \ -CA root_CA_cert_filename.pem \ -CAkey root_CA_key_filename.key \ -CAcreateserial \ -out verification_cert_filename.pem \ -days 500 -sha256
  5. Enregistrez le certificat CA auprès de AWS IoT. Transmettez le nom du fichier du certificat CA et le nom du fichier du certificat de vérification de clé privée à la register-ca-certificate commande, comme suit. Pour plus d'informations, consultez register-ca-certificatele AWS CLI Référence de commande.

    aws iot register-ca-certificate \ --ca-certificate file://root_CA_cert_filename.pem \ --verification-cert file://verification_cert_filename.pem

    Cette commande renvoie le certificateId, en cas de succès.

  6. À ce stade, le certificat CA a été enregistré auprès AWS IoT mais n'est pas actif. Le certificat CA doit être actif avant que vous puissiez enregistrer les certificats clients qu'il a signés.

    Cette étape active le certificat de l'autorité de certification.

    Pour activer le certificat CA, utilisez la commande update-certificate comme suit. Pour plus d'informations, voir le certificat de mise à jour dans le AWS CLI Référence de commande.

    aws iot update-ca-certificate \ --certificate-id certificateId \ --new-status ACTIVE

Utilisez la commande describe-ca-certificate pour voir le statut du certificat CA. Pour plus d'informations, consultez describe-ca-certificatele AWS CLI Référence de commande.

Créez un certificat de vérification CA pour enregistrer le certificat CA dans la console

Note

Cette procédure est uniquement destinée à être utilisée si vous enregistrez un certificat CA auprès du AWS IoT console.

Si vous n'êtes pas parvenu à cette procédure depuis le AWS IoT console, lancez le processus d'enregistrement du certificat CA dans la console à l'adresse Enregistrer le certificat CA.

Vérifiez que les éléments suivants sont disponibles sur le même ordinateur avant de continuer :

  • Le fichier de certificat de l'autorité de certification racine (référencé dans l'exemple suivant sous le nom root_CA_cert_filename.pem)

  • Le fichier de certificat de l'autorité de certification racine (référencé dans l'exemple suivant sous root_CA_key_filename.key)

  • Ouvrez la SSL version v1.1.1i ou ultérieure

Pour utiliser l'interface de ligne de commande pour créer un certificat de vérification CA afin d'enregistrer votre certificat CA dans la console
  1. verification_cert_key_filename.keyRemplacez-le par le nom du fichier clé du certificat de vérification que vous souhaitez créer (par exemple,verification_cert.key). Exécutez ensuite cette commande pour générer une paire de clés pour le certificat de vérification de clé privée :

    openssl genrsa -out verification_cert_key_filename.key 2048
  2. Remplacez verification_cert_key_filename.key par le nom du fichier de clé que vous avez créé à l'étape 1.​

    verification_cert_csr_filename.csrRemplacez-le par le nom du fichier de demande de signature de certificat (CSR) que vous souhaitez créer. Par exemple, verification_cert.csr.

    Exécutez cette commande pour créer le CSR fichier.

    openssl req -new \ -key verification_cert_key_filename.key \ -out verification_cert_csr_filename.csr

    La commande vous invite à saisir des informations supplémentaires qui seront expliquées plus loin.

  3. Dans le volet AWS IoT console, dans le conteneur du certificat de vérification, copiez le code d'enregistrement.

  4. Les informations que la commande openssl vous demande de saisir sont présentées dans l'exemple suivant. À l'exception du champ Common Name, vous pouvez saisir vos propres valeurs ou les laisser vides.

    Dans le champ Common Name, collez le code d'enregistrement que vous avez copié à l'étape précédente.

    You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]: State or Province Name (full name) []: Locality Name (for example, city) []: Organization Name (for example, company) []: Organizational Unit Name (for example, section) []: Common Name (e.g. server FQDN or YOUR name) []:your_registration_code Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:

    Une fois que vous avez terminé, la commande crée le CSR fichier.

  5. Remplacez la verification_cert_csr_filename.csr par la verification_cert_csr_filename.csr que vous avez utilisée à l'étape précédente.

    Remplacez root_CA_cert_filename.pem par le nom de fichier du certificat CA que vous souhaitez enregistrer.

    Remplacez root_CA_key_filename.key par le nom du fichier de clé privée du certificat CA.

    Remplacez verification_cert_filename.pem par le nom de fichier du certificat de vérification que vous souhaitez créer.​ Par exemple, verification_cert.pem.

    openssl x509 -req \ -in verification_cert_csr_filename.csr \ -CA root_CA_cert_filename.pem \ -CAkey root_CA_key_filename.key \ -CAcreateserial \ -out verification_cert_filename.pem \ -days 500 -sha256
  6. Une fois la SSL commande Ouvrir terminée, ces fichiers devraient être prêts à être utilisés lorsque vous retournerez dans la console.

    • Votre fichier de certificat CA (root_CA_cert_filename.pem utilisé dans la commande précédente)

    • Le certificat de vérification que vous avez créé à l'étape précédente (verification_cert_filename.pem utilisé dans la commande précédente)

Désactivation d'un certificat d'autorité de certification

Lorsqu'un certificat d'autorité de certification (CA) est activé pour l'enregistrement automatique des certificats clients, AWS IoT vérifie le certificat de l'autorité de certification pour s'assurer que l'autorité de certification l'estACTIVE. Si le certificat CA estINACTIVE, AWS IoT n'autorise pas l'enregistrement du certificat client.

En définissant le certificat de l'autorité de certification sur INACTIVE, vous empêchez l'enregistrement automatique de tout nouveau certificat client émis par l'autorité de certification.

Note

Les certificats clients enregistrés qui ont été signés par le certificat d'autorité de certification compromis continuent de fonctionner jusqu’à ce que vous les révoquiez explicitement.

Désactivation d'un certificat d'autorité de certification (console)

Pour désactiver un certificat CA à l'aide du AWS IoT console
  1. Connectez-vous au AWS Management Console et ouvrez le AWS IoT console.

  2. Dans le volet de navigation de gauche, choisissez Secure, choisissez CAs.

  3. Dans la liste des autorités de certification, recherchez celle que vous souhaitez désactiver et choisissez l'icône de points de suspension pour ouvrir le menu d'options.

  4. Dans le menu d'options, choisissez Désactiver.

L'autorité de certification doit apparaître comme Inactive dans la liste.

Note

Le AWS IoT la console ne permet pas de répertorier les certificats signés par l'autorité de certification que vous avez désactivée. Pour un AWS CLI option pour répertorier ces certificats, voirDésactiver un certificat CA () CLI.

Désactiver un certificat CA () CLI

Le AWS CLI fournit la update-ca-certificatecommande permettant de désactiver un certificat CA.

aws iot update-ca-certificate \ --certificate-id certificateId \ --new-status INACTIVE

Utilisez la commande list-certificates-by-ca pour obtenir la liste de tous les certificats clients enregistrés qui ont été signés par l'autorité de certification spécifiée. Pour chaque certificat client signé par le certificat d’autorité de certification spécifié, utilisez la commande update-certificate pour révoquer le certificat client afin d'empêcher son utilisation.

Utilisez la commande describe-ca-certificate pour voir le statut du certificat d'autorité de certification.