Renouvellement des certificats d’appareil X.509

Pendant le cycle de vie de votre solution IoT, vous devrez renouveler des certificats. Deux des principales raisons pour lesquelles il convient de renouveler les certificats sont les violations de la sécurité et l’expiration des certificats.

Le renouvellement des certificats est une bonne pratique en matière de sécurité qui contribue à sécuriser votre système en cas de violation. Dans le cadre de la méthodologie consistant à envisager les failles, Microsoft préconise de mettre en place des processus de sécurité réactifs en même temps que des mesures préventives. Vous devez inclure le renouvellement de vos certificats d’appareil dans ces processus de sécurité. La fréquence à laquelle vous renouvelez vos certificats dépend des exigences de sécurité de votre solution. Les clients qui disposent de solutions impliquant des données extrêmement sensibles renouvellent leurs certificats quotidiennement, tandis que les autres clients ne renouvellent leurs certificats que tous les deux ans.

Le renouvellement des certificats d’appareil implique la mise à jour du certificat stocké sur l’appareil et dans IoT Hub. Par la suite, l’appareil peut se reprovisionner lui-même dans le IoT Hub à l’aide du processus normal de provisionnement avec le service Device Provisioning (DPS).

Obtenir de nouveau certificats

Vous disposez de nombreuses méthodes pour obtenir de nouveaux certificats pour vos appareils IoT. Vous pouvez obtenir des certificats auprès du fabricant des appareils, générer vos propres certificats ou déléguer la création de certificats à un tiers.

Les certificats sont signés les uns par les autres de manière à former une chaîne d’approbation entre un certificat d’autorité de certification racine et un certificat feuille. Le certificat de signature est le certificat utilisé pour signer le certificat feuille à la fin de la chaîne d’approbation. Un certificat de signature peut être un certificat d’autorité de certification racine ou un certificat intermédiaire dans la chaîne d’approbation. Pour plus d’informations, consultez la section Certificats X.509.

Vous disposez de deux méthodes pour obtenir un certificat de signature. La première méthode, qui est recommandée pour les systèmes de production, consiste à acquérir un certificat de signature auprès d’une autorité de certification racine. Cette méthode enchaîne la sécurité à une source approuvée.

La seconde méthode consiste à créer vos propres certificats X.509 à l’aide d’un outil tel qu’OpenSSL. Cette approche se révèle très efficace pour tester les certificats X.509, mais offre peu de garanties en matière de sécurité. Nous vous recommandons de ne l’utiliser qu’à des fins de test, sauf si vous êtes votre propre fournisseur d’autorité de certification.

Renouveler le certificat sur l’appareil

Les certificats figurant sur un appareil doivent toujours être stockés dans un endroit sûr, comme un module de sécurité matériel (HSM). La méthode que vous appliquez pour renouveler les certificats d’appareil dépend de la façon dont ces derniers ont été créés et installés à l’origine.

Si vous avez obtenu vos certificats auprès d’un tiers, vous devez étudier la manière dont celui-ci renouvelle ses certificats. Ce processus peut être inclus dans l’accord que vous avez conclu avec le tiers, ou prendre la forme d’un service distinct offert par le tiers.

Si vous gérez vos propres certificats d’appareil, vous devrez créer votre pipeline pour la mise à jour des certificats. Assurez-vous que l’ancien certificat feuille porte le même nom commun que le nouveau certificat. L’utilisation du même nom commun permet à l’appareil de se reprovisionner lui-même sans créer d’enregistrement d’inscription en double.

Les mécanismes d’installation d’un nouveau certificat sur un appareil impliquent souvent l’une des approches suivantes :

  • Vous pouvez déclencher l’envoi par les appareils concernés d’une nouvelle demande de signature de certificat (CSR) à votre autorité de certification (CA) PKI. Dans ce cas, chaque appareil sera probablement en mesure de télécharger son nouveau certificat d’appareil directement à partir de l’autorité de certification.

  • Vous pouvez conserver une CSR de chaque appareil et l’utiliser pour obtenir un nouveau certificat d’appareil auprès de l’autorité de certification PKI. Dans ce cas, vous devrez envoyer (push) le nouveau certificat à chaque appareil dans une mise à jour du microprogramme à l’aide d’un service de mise à jour OTA sécurisé comme Device Update pour IoT Hub.

Roll the certificate in DPS

Le certificat d’appareil peut être ajouté manuellement à un IoT Hub. Ce certificat peut également être automatisé à l’aide d’une instance du service Device Provisioning. Dans cet article, nous allons supposer que l’approvisionnement automatique est assuré par une instance de Service Device Provisioning.

Lorsqu’un appareil est initialement provisionné par le biais du provisionnement automatique, il démarre et contacte le service de provisionnement. Le service de provisionnement répond en effectuant une vérification d’identité avant de créer une identité d’appareil dans un IoT Hub en utilisant le certificat feuille de l’appareil comme information d’identification. Ensuite, le service de provisionnement indique à l’appareil l’IoT Hub auquel il est assigné, et l’appareil utilise alors son certificat feuille pour s’authentifier et se connecter à l’IoT Hub.

Une fois qu’un nouveau certificat feuille a été déployé sur l’appareil, ce dernier ne peut plus se connecter à l’IoT Hub, car il utilise un nouveau certificat pour se connecter. L’IoT Hub reconnaît uniquement l’appareil doté de l’ancien certificat. La tentative de connexion de l’appareil se traduira alors par une erreur de connexion « non autorisée ». Pour résoudre cette erreur, vous devez mettre à jour l’entrée d’inscription de l’appareil de manière à prendre en compte le nouveau certificat feuille de l’appareil. Le service de provisionnement peut alors mettre à jour les informations du registre d’appareils IoT Hub en fonction des besoins lorsque l’appareil est reprovisionné.

Il peut exister une exception à cet échec de connexion, dans le cas où vous avez créé un groupe d’inscription pour votre appareil dans le service de provisionnement. Dans ce cas, si vous ne renouvelez pas le certificat racine ni les certificats intermédiaires dans la chaîne d’approbation de certificats de l’appareil, ce dernier sera reconnu si le nouveau certificat fait partie de la chaîne d’approbation définie dans le groupe d’inscription. Si cette situation survient suite à une violation de la sécurité, vous devez au moins bloquer les certificats d’appareil spécifique dans le groupe, qui sont considérés comme compromis. Pour plus d’informations, consultez Interdire des appareils spécifiques dans un groupe d’inscriptions

La manière dont vous gérez la mise à jour de l’entrée d’inscription varie selon que vous utilisez des inscriptions individuelles ou des inscriptions de groupe. Les procédures recommandées diffèrent également selon que vous renouvelez des certificats en raison d’une violation de la sécurité ou de l’expiration des certificats. Les sections ci-après expliquent comment gérer ces mises à jour.

Roll certificates for individual enrollments

Si vous déployez des certificats en réponse à une violation de sécurité, vous devez supprimer immédiatement les certificats compromis.

Si vous déployez des certificats pour gérer les expirations de certificat, vous devez utiliser la configuration du certificat secondaire pour réduire les temps d’arrêt pour les appareils qui tentent de provisionner. Plus tard, lorsque le certificat secondaire approche de l’expiration et doit être roulé, vous pouvez effectuer une rotation vers l’utilisation de la configuration principale. Cette alternance entre le certificat principal et le certificat secondaire réduit le temps d’arrêt découlant de la tentative de provisionnement des appareils.

La mise à jour des entrées d’inscription pour les certificats renouvelés s’effectue sur la page Gérer les inscriptions. Pour accéder à cette page, procédez comme suit :

  1. Connectez-vous au Portail Azure et accédez à l’instance du service Device Provisioning qui a l’entrée d’inscription pour votre appareil.

  2. Sélectionnez Gérer les inscriptions.

    Screenshot that shows the Manage enrollments page in the Azure portal.

  3. Sélectionnez l’onglet Inscriptions individuelles, puis sélectionnez l’entrée d’ID d’inscription dans la liste.

  4. Cochez la case Supprimer ou remplacer le certificat principal/secondaire case activée boxes si vous souhaitez supprimer un certificat existant. Sélectionnez l’icône de dossier de fichiers pour rechercher et charger les nouveaux certificats.

    Si l’un de vos certificats a été compromis, vous devez les supprimer dès que possible.

    Si l’un de vos certificats approche de son expiration, vous pouvez le conserver en place tant que le deuxième certificat sera toujours actif après cette date.

    Screenshot that shows how to remove a certificate and upload new ones.

  5. Lorsque vous avez terminé, sélectionnez Enregistrer.

  6. Si vous avez supprimé un certificat compromis du service d’approvisionnement, le certificat peut toujours être utilisé pour établir des connexions d’appareil au hub IoT tant qu’une inscription d’appareil existe là-bas. Vous pouvez résoudre ce problème de deux façons :

    La première méthode consiste à accéder manuellement à votre hub IoT et à supprimer immédiatement l’inscription d’appareil associée au certificat compromis. Ensuite, quand l’appareil est reprovisionné avec un certificat mis à jour, une nouvelle inscription d’appareil est créée.

    La deuxième méthode consiste à utiliser la prise en charge du reprovisionnement pour reprovisionner l’appareil auprès du même hub IoT. Cette approche peut être utilisée pour remplacer le certificat pour l’inscription d’appareil sur le hub IoT. Pour plus d’informations, consultez Guide pratique pour reprovisionner des appareils.

Roll certificates for enrollment groups

Pour mettre à jour une inscription de groupe en réponse à une violation de sécurité, vous devez supprimer immédiatement l’autorité de certification racine compromise ou le certificat intermédiaire.

Si vous déployez des certificats pour gérer les expirations de certificat, vous devez utiliser la configuration du certificat secondaire pour garantir aucun temps d’arrêt pour les appareils qui tentent de provisionner. Plus tard, lorsque le certificat secondaire approche également de l’expiration et doit être roulé, vous pouvez effectuer une rotation vers l’utilisation de la configuration principale. Cette alternance entre le certificat principal et le certificat secondaire garantit l’absence de temps d’arrêt découlant de la tentative de provisionnement des appareils.

Mettre à jour les certificats d’autorité de certification racine

  1. Sélectionnez Certificats dans la section Paramètres du menu de navigation de votre instance de service Device Provisioning.

    Screenshot that shows the certificates page.

  2. Sélectionnez le certificat compromis ou expiré dans la liste, puis sélectionnez Supprimer. Confirmez la suppression en entrant le nom du certificat et sélectionnez OK.

  3. Exécutez la procédure Configurer des certificats d’autorité de certification vérifiés pour ajouter et vérifier de nouveaux certificats d’autorité de certification racine.

  4. Sélectionnez Gérer les inscriptions dans la section Paramètres du menu de navigation de votre instance de service Device Provisioning, puis sélectionnez l’onglet Groupes d’inscriptions.

  5. Sélectionnez le nom de votre groupe d’inscription dans la liste.

  6. Dans la section Paramètres du certificat X.509, sélectionnez votre nouveau certificat d’autorité de certification racine pour remplacer le certificat compromis ou expiré, ou pour ajouter en tant que certificat secondaire.

    Screenshot that shows selecting a new uploaded certificate for an enrollment group.

  7. Cliquez sur Enregistrer.

  8. Si vous avez supprimé un certificat compromis du service d’approvisionnement, le certificat peut toujours être utilisé pour établir des connexions d’appareil au hub IoT tant que les inscriptions d’appareils existent là-bas. Vous pouvez résoudre ce problème de deux façons :

    La première façon consisterait à naviguer manuellement vers votre ioT Hub et à supprimer immédiatement les inscriptions d’appareils associées au certificat compromis. Ensuite, quand vos appareils sont reprovisionnés avec des certificats mis à jour, une nouvelle inscription d’appareil est créée pour chacun d’eux.

    La deuxième méthode consiste à utiliser la prise en charge du reprovisionnement pour reprovisionner vos appareils auprès du même hub IoT. Cette approche peut être utilisée pour remplacer les certificats pour les inscriptions d’appareil sur le hub IoT. Pour plus d’informations, consultez Guide pratique pour reprovisionner des appareils.

Mettre à jour des certificats intermédiaires

  1. Sélectionnez Gérer les inscriptions dans la section Paramètres du menu de navigation de votre instance de service Device Provisioning, puis sélectionnez l’onglet Groupes d’inscriptions.

  2. Sélectionnez le nom du groupe dans la liste.

  3. Cochez la case Supprimer ou remplacer le certificat principal/secondaire case activée boxes si vous souhaitez supprimer un certificat existant. Sélectionnez l’icône de dossier de fichiers pour rechercher et charger les nouveaux certificats.

    Si l’un de vos certificats a été compromis, vous devez les supprimer dès que possible.

    Si l’un de vos certificats approche de son expiration, vous pouvez le conserver en place tant que le deuxième certificat sera toujours actif après cette date.

    Chaque certificat intermédiaire doit être signé par un certificat d’autorité de certification racine vérifié qui a déjà été ajouté au service d’approvisionnement. Pour plus d’informations, consultez la section Certificats X.509.

    Screenshot that shows replacing an intermediate certificate for an enrollment group.

  4. Si vous avez supprimé un certificat compromis du service d’approvisionnement, le certificat peut toujours être utilisé pour établir des connexions d’appareil au hub IoT tant que les inscriptions d’appareils existent là-bas. Vous pouvez résoudre ce problème de deux façons :

    La première méthode consiste à accéder manuellement à votre hub IoT et à supprimer immédiatement l’inscription d’appareil associée au certificat compromis. Ensuite, quand vos appareils sont reprovisionnés avec des certificats mis à jour, une nouvelle inscription d’appareil est créée pour chacun d’eux.

    La deuxième méthode consiste à utiliser la prise en charge du reprovisionnement pour reprovisionner vos appareils auprès du même hub IoT. Cette approche peut être utilisée pour remplacer les certificats pour les inscriptions d’appareil sur le hub IoT. Pour plus d’informations, consultez Guide pratique pour reprovisionner des appareils.

Reprovisionner l’appareil

Une fois que le certificat a été renouvelé à la fois sur l’appareil et dans le Service Device Provisioning, l’appareil peut se réapprovisionner lui-même en contactant le Service Device Provisioning.

Une méthode simple de configuration du reprovisionnement des appareils consiste à programmer ces derniers pour qu’ils contactent le service de provisionnement en vue de cheminer par le flux de provisionnement si l’appareil reçoit une erreur de type « non autorisé » lors d’une tentative de connexion à l’IoT Hub.

Une autre méthode permet à l’ancien certificat et au nouveau certificat d’être tous deux valides sur une courte période, et consiste à utiliser l’IoT Hub pour envoyer une commande aux appareils afin que ces derniers se réinscrivent par le biais du service de provisionnement pour mettre à jour leurs informations de connexion IoT Hub. Étant donné que chaque appareil peut traiter les commandes différemment, vous devez programmer votre appareil pour savoir quoi faire lorsque la commande est appelée. Vous disposez de plusieurs méthodes pour commander votre appareil par le biais de l’IoT Hub ; nous vous recommandons d’utiliser des méthodes directes ou des travaux pour amorcer le processus.

Une fois le reprovisionnement terminé, les appareils peuvent se connecter à IoT Hub à l’aide de leurs nouveaux certificats.

Bloquer des certificats

En cas de violation de la sécurité, vous devrez peut-être bloquer un certificat d’appareil. Pour effectuer cette opération, désactivez l’entrée d’inscription du certificat ou de l’appareil cibles. Pour plus d’informations, consultez la section relative au blocage des appareils dans l’article Gérer la désinscription.

Une fois qu’un certificat est inclus dans une entrée d’inscription désactivée, toute tentative d’inscription auprès d’un IoT Hub à l’aide de ce certificat échouera, même si le certificat est activé dans une autre entrée d’inscription.

Étapes suivantes