Partager via


Comment déployer des certificats d’appareil X.509

Pendant le cycle de vie de votre solution IoT, vous devez déployer des certificats. Deux des principales raisons du déploiement de certificats seraient une violation de sécurité et des expirations de certificat.

Le renouvellement de certificats constitue une bonne pratique de sécurité pour sécuriser votre système en cas de compromission. Dans le cadre de la Méthodologie d'hypothèse de violation, Microsoft préconise l'importance de mettre en place des processus de sécurité réactifs, ainsi que des mesures préventives. Le renouvellement de vos certificats d’appareil doit être inclus dans le cadre de ces processus de sécurité. La fréquence dans laquelle vous déployez vos certificats dépend des besoins de sécurité de votre solution. Les clients disposant de solutions impliquant des données hautement sensibles peuvent renouveler leurs certificats quotidiennement, tandis que d’autres renouvellent leurs certificats tous les deux ans environ.

Les certificats d’appareils à rotation impliquent la mise à jour du certificat stocké sur l’appareil et dans le hub IoT. 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 nouveaux certificats

Il existe de nombreuses façons d’obtenir de nouveaux certificats pour vos appareils IoT, notamment d’obtenir des certificats à partir de la fabrique d’appareils, de générer vos propres certificats et d’avoir un fournisseur non-Microsoft à gérer la création de certificats pour vous.

Les certificats peuvent être signés les uns par les autres de manière à former une chaîne de certificats d’un certificat d’autorité de certification racine à 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 l’attestation de certificat X.509.

Il existe deux façons différentes d’obtenir un certificat de signature. La première façon, recommandée pour les systèmes de production, est d’acheter un certificat de signature auprès d’une autorité de certification racine. De cette façon, la sécurité est enchaînée à une source de confiance.

La deuxième méthode consiste à créer vos propres certificats X.509 à l’aide d’un outil tel qu’OpenSSL. Cette approche est idéale pour tester les certificats X.509, mais offre peu de garanties autour de la sécurité. Nous vous recommandons d’utiliser cette approche uniquement pour les tests, sauf si vous êtes prêt à agir en tant que fournisseur d’autorité de certification.

Renouveler le certificat sur l’appareil

Les certificats 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 de renouvellement des certificats d’appareil dépend de la façon dont ces derniers ont été créés et installés dans les appareils à l’origine.

Si vous avez obtenu vos certificats auprès d’un fournisseur autre que Microsoft, vous devez examiner la façon dont ils rollent leurs certificats. Le processus peut être inclus dans votre arrangement avec eux, ou il peut s’agir d’un service distinct qu’ils offrent.

Si vous gérez vos propres certificats d’appareil, vous devez créer votre propre pipeline pour la mise à jour des certificats. Assurez-vous que les certificats feuille anciens et nouveaux ont le même nom commun (CN). 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.

La mécanique de l’installation d’un nouveau certificat sur un appareil implique souvent l’une des approches suivantes :

  • Vous pouvez déclencher des appareils affectés pour envoyer une nouvelle demande de signature de certificat (CSR) à votre autorité de certification PKI. Dans ce cas, chaque appareil est 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 devez 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.

Déployer le certificat dans le DPS

Le certificat d’appareil peut être ajouté manuellement à un hub IoT. Le certificat peut également être automatisé à l’aide d’une instance de service Device Provisioning. Dans cet article, nous partons du principe qu’une instance de service Device Provisioning est utilisée pour prendre en charge l’approvisionnement automatique.

Lorsqu’un appareil est initialement approvisionné via l’approvisionnement automatique, il démarre et contacte le service d’approvisionnement. Le service d’approvisionnement répond en effectuant une vérification d’identité avant de créer une identité d’appareil dans un hub IoT à l’aide du certificat feuille de l’appareil comme informations d’identification. Le service d’approvisionnement indique ensuite à l’appareil à quel IoT Hub il est affecté, et l’appareil utilise ensuite son certificat de feuille pour s’authentifier et se connecter au hub IoT.

Une fois qu’un nouveau certificat feuille est déployé sur l’appareil, il ne peut plus se connecter au hub IoT, car il utilise un nouveau certificat pour se connecter. IoT Hub reconnaît uniquement l’appareil avec l’ancien certificat. Le résultat de la tentative de connexion de l’appareil est 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. Ensuite, le service d’approvisionnement peut mettre à jour les informations du Registre d’appareils IoT Hub si nécessaire lorsque l’appareil est reprovisionné.

Une exception possible à cet échec de connexion serait un scénario où vous créez un groupe d’inscription pour votre appareil dans le service d’approvisionnement . 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 est reconnu si le nouveau certificat fait partie de la chaîne d’approbation définie dans le groupe d’inscriptions. Si ce scénario se produit en réaction à une violation de sécurité, vous devez au moins interdire les certificats d’appareil spécifiques dans le groupe considérés comme étant enfreints. Pour plus d’informations, consultez Interdire les appareils spécifiques dans un groupe d’inscription X.509

La façon dont vous gérez la mise à jour de l’entrée d’inscription dépend de l’utilisation d’inscriptions individuelles ou d’inscriptions de groupe. Les procédures recommandées diffèrent également selon que vous déployez des certificats en raison d’une violation de sécurité ou d’une expiration de certificat. Les sections suivantes décrivent comment gérer ces mises à jour.

Délivrer des certificats pour des inscriptions individuelles

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

Si vous renouvelez des certificats afin de gérer les expirations de certificats, vous devez utiliser la configuration de certificat secondaire pour minimiser le temps d’arrêt découlant de la tentative de provisionnement des appareils. 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 de demande pour les certificats renouvelés est effectuée 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.

    Capture d’écran montrant la page Gérer les inscriptions dans le portail Azure.

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

  4. Cochez les cases Supprimer ou remplacer le certificat principal/secondaire 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.

    Capture d’écran montrant comment supprimer un certificat et en charger de nouveaux.

  5. Sélectionnez Enregistrer lorsque vous avez terminé.

  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 aborder cela de deux manières :

    La première façon consiste à naviguer manuellement vers votre ioT Hub et à supprimer immédiatement l’inscription de l’appareil associée au certificat compromis. Ensuite, lorsque l’appareil provisionne à nouveau 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 de l’appareil sur le hub IoT. Pour plus d’informations, consultez Comment reprovisionner des appareils.

Déployer des certificats pour des groupes d’inscription

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 l'absence de 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.

    Capture d’écran montrant la page Certificats dans le portail Azure.

  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. Suivez les étapes décrites dans Comment vérifier les certificats d’autorité de certification X.509 avec votre service Device Provisioning 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.

    Capture d’écran montrant la sélection d’un nouveau certificat téléchargé pour un groupe d’inscriptions.

  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 aborder cela de deux manières :

    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 approvisionnés à nouveau avec des certificats mis à jour, une nouvelle inscription d’appareil est créée pour chacun d’eux.

    La deuxième manière consisterait à utiliser la fonctionnalité de reprovisionnement pour reprovisionner vos appareils sur le même hub IoT. Cette approche peut être utilisée pour remplacer des certificats pour les inscriptions d’appareils sur le hub IoT. Pour plus d’informations, consultez Comment 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 les cases Supprimer ou remplacer le certificat principal/secondaire 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.

    Vous devez signer chaque certificat intermédiaire avec un certificat d’autorité de certification racine vérifié qui a déjà été ajouté au service d’approvisionnement. Pour plus d’informations, consultez l’attestation de certificat X.509.

    Capture d’écran montrant le remplacement d’un certificat intermédiaire pour un groupe d’inscriptions.

  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 aborder cela de deux manières :

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

    La deuxième manière consisterait à utiliser la fonctionnalité de reprovisionnement pour reprovisionner vos appareils sur le même hub IoT. Cette approche peut être utilisée pour remplacer des certificats pour les inscriptions d’appareils sur le hub IoT. Pour plus d’informations, consultez Comment 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.

Un moyen simple de configurer des appareils pour un reprovisionnement consiste à configurer l’appareil pour qu’il contacte le service de provisionnement et passe par le processus de provisionnement si l’appareil reçoit une erreur « non autorisée » lors de la tentative de connexion au hub IoT.

Une autre façon est que l’ancien et le nouveau certificat soient valides pour un court chevauchement, en utilisant le hub IoT pour envoyer une commande aux appareils afin qu'ils se réinscrivent via le service d'approvisionnement afin de mettre à jour leurs informations de connexion au Hub IoT. É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. Il existe plusieurs façons de commander votre appareil via IoT Hub, et nous vous recommandons d’utiliser des méthodes directes ou des tâches pour lancer le processus.

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

Interdire les certificats

En réponse à une violation de sécurité, vous devrez peut-être interdire un certificat d’appareil. Pour désactiver un certificat d'appareil, désactivez l'entrée d'inscription correspondante pour l'appareil ou certificat ciblé. Pour plus d’informations, consultez Comment désinscrire ou révoquer un appareil à partir du service Azure IoT Hub Device Provisioning.

Une fois qu’un certificat est inclus dans le cadre d’une entrée d’inscription désactivée, toutes les tentatives d’inscription auprès d’un hub IoT utilisant ce certificat échouent même si le certificat est activé dans le cadre d’une autre entrée d’inscription.

Étapes suivantes