Vérifier des certificats d’autorité de certification X.509 auprès de votre service de provisionnement des appareils

Un certificat d’autorité de certification X.509 vérifié est un certificat d’autorité de certification qui a été chargé et inscrit dans votre service d’approvisionnement, puis vérifié, automatiquement ou par le biais d’une preuve de possession auprès du service.

Les certificats vérifiés jouent un rôle important lors de l’utilisation de groupes d’inscription. La vérification de la propriété du certificat fournit un niveau de sécurité supplémentaire en permettant de s’assurer que l’utilisateur qui a chargé le certificat est en possession de la clé privée associée. La vérification empêche tout acteur malveillant qui intercepte votre trafic d’extraire un certificat intermédiaire et de l’utiliser pour créer un groupe d’inscription dans son propre service d’approvisionnement à des fins de détournement de vos appareils. En prouvant que vous êtes le propriétaire du certificat racine ou d’un certificat intermédiaire dans une chaîne d’approbation, vous prouvez que vous êtes autorisé à générer des certificats feuilles pour les appareils qui seront inscrits dans le cadre de ce groupe d’inscription. Par conséquent, le certificat racine ou intermédiaire configuré dans un groupe d’inscription doit être un certificat vérifié ou être associé à un certificat vérifié dans la chaîne d’approbation présentée par un appareil lors de son authentification auprès du service. Pour en savoir plus sur l’attestation de certificat X.509, consultez Certificats X.509 et Contrôle de l’accès des appareils au service de provisionnement avec des certificats X.509.

Prérequis

Avant de commencer les étapes décrites dans cet article, les prérequis suivants sont préparés :

  • Instance DPS créée dans votre abonnement Azure.
  • Fichier de certificat .cer ou .pem.

Vérification automatique de l’autorité de certification intermédiaire ou racine par le biais de l’auto-attestation

Si vous utilisez une autorité de certification intermédiaire ou racine que vous approuvez et que vous savez que vous possédez entièrement le certificat, vous pouvez vous auto-attester que vous avez vérifié le certificat.

Pour ajouter un certificat auto-vérifié, procédez comme suit :

  1. Dans le Portail Azure, accédez à votre service d’approvisionnement et sélectionnez Certificats dans le menu de gauche.

  2. Sélectionnez Ajouter pour ajouter un nouveau certificat.

  3. Entrez un nom d’affichage convivial pour votre certificat.

  4. Accédez au fichier .cer ou .pem représentant la partie publique de votre certificat X.509. Cliquez sur Télécharger.

  5. Cochez la case en regard de Définir l’état du certificat sur vérifié lors du chargement.

    Screenshot that shows uploading a certificate and setting status to verified.

  6. Sélectionnez Enregistrer.

  7. Votre certificat apparaît dans l’onglet des certificats avec l’état Vérifié.

    Screenshot that shows the verified certificate after upload.

Vérification manuelle de l’autorité de certification racine ou intermédiaire

La vérification automatique est recommandée lorsque vous chargez de nouveaux certificats d’autorité de certification intermédiaires ou racines dans DPS. Toutefois, vous pouvez toujours effectuer une preuve de possession si cela est judicieux pour votre scénario IoT.

La preuve de possession implique les étapes suivantes :

  1. Obtenir un code de vérification unique généré par le service d’approvisionnement pour votre certificat d’autorité de certification X.509. Vous pouvez effectuer cette opération à partir du portail Azure.
  2. Créer un certificat de vérification X.509 avec le code de vérification en tant que sujet et signer le certificat avec la clé privée associée à votre certificat d’autorité de certification X.509.
  3. Charger le certificat de vérification signé dans le service. Le service valide le certificat de vérification à l’aide de la partie publique du certificat d’autorité de certification à vérifier, prouvant ainsi que vous êtes en possession de la clé privée du certificat de l’autorité de certification.

Inscrire la partie publique d’un certificat X.509 et obtenir un code de vérification

Pour inscrire un certificat d’autorité de certification auprès de votre service d’approvisionnement et obtenir un code de vérification que vous pouvez utiliser lors de la preuve de possession, procédez comme suit.

  1. Dans le portail Azure, accédez à votre service d’approvisionnement et ouvrez Certificats dans le menu de gauche.

  2. Sélectionnez Ajouter pour ajouter un nouveau certificat.

  3. Entrez un nom complet convivial pour votre certificat dans le champ Nom du certificat.

  4. Sélectionnez l’icône de dossier, puis accédez au fichier .cer ou .pem qui représente la partie publique de votre certificat X.509. Sélectionnez Ouvrir.

  5. Une fois que vous avez obtenu une notification vous informant que votre certificat a été correctement chargé, sélectionnez Enregistrer.

    Screenshot that shows uploading a certificate without automatic verification.

    Votre certificat apparaît maintenant dans la liste Explorateur de certificats. Notez que l’état de ce certificat n’est pas vérifié.

  6. Sélectionnez le certificat que vous avez ajouté à l’étape précédente pour ouvrir ses détails.

  7. Dans les détails du certificat, notez qu’il existe un champ de code de vérification vide. Sélectionnez le bouton Générer le code de vérification.

    Screenshot that shows generating a verification code for proof-of-possession.

  8. Le service d’approvisionnement crée un code de vérification que vous pouvez utiliser pour valider la propriété du certificat. Copiez ce code dans le Presse-papiers.

Signer numériquement le code de vérification pour créer un certificat de vérification

À présent, vous devez signer le code de vérification de DPS avec la clé privée associée à votre certificat d’autorité de certification X.509, qui génère une signature. Cette étape est appelée Preuve de possession et génère un certificat de vérification signé.

Microsoft propose des outils et des exemples conçus pour simplifier la création d’un certificat de vérification signé :

  • Le Kit de développement logiciel (SDK) C Azure IoT Hub fournit des scripts PowerShell (Windows) et Bash (Linux) pour vous aider à créer des certificats d’autorité de certification et des certificats feuilles pour le développement, et à effectuer la preuve de possession à l’aide d’un code de vérification. Vous pouvez télécharger les fichiers appropriés pour votre système dans un dossier de travail et suivre les instructions du fichier readme de l’exemple de gestion de certificats d’autorité de certification pour effectuer la preuve de possession sur un certificat d’autorité de certification.
  • Le Kit de développement logiciel (SDK) C# Azure IoT Hub contient l’exemple de vérification de certificat de groupe, que vous pouvez utiliser pour effectuer une preuve de possession.

Les scripts PowerShell et Bash fournis dans la documentation et les Kits de développement logiciel (SDK) s’appuient sur OpenSSL. Vous pouvez également utiliser OpenSSL ou d’autres outils tiers pour vous aider à effectuer la preuve de possession. Pour obtenir un exemple d’utilisation des outils fournis avec les Kits de développement logiciel (SDK), consultez Créer une chaîne de certificats X.509.

Charger le certificat de vérification signé

Chargez la signature résultante en tant que certificat de vérification dans votre service d’approvisionnement dans le Portail Azure.

  1. Dans les détails du certificat sur le Portail Azure, où vous avez copié le code de vérification, sélectionnez l’icône de dossier en regard du champ de fichier .pem ou .cer du certificat de vérification. Accédez au certificat de vérification signé à partir de votre système, puis sélectionnez Ouvrir.

  2. Une fois le certificat chargé, sélectionnez Vérifier. L’état de votre certificat passe à Vérifié dans la liste Certificats . Sélectionnez Actualiser s’il n’est pas mis à jour automatiquement.

Étapes suivantes