Partager via


Acquérir et déployer des certificats pour les réseaux EAP-TLS

Pour qu’un appareil Azure Sphere puisse se connecter à un réseau EAP-TLS, il doit disposer d’un certificat client que le serveur RADIUS peut utiliser pour authentifier l’appareil. Si votre réseau nécessite une authentification mutuelle, chaque appareil doit également disposer d’un certificat d’autorité de certification racine afin qu’il puisse authentifier le serveur RADIUS.

La façon dont vous acquérez et déployez ces certificats dépend des ressources réseau disponibles pour vos appareils.

  • Si le réseau EAP-TLS est le seul réseau disponible, vous devez déployer les certificats manuellement.
  • Si une autre forme de mise en réseau, telle qu’un réseau ouvert, est disponible, vous pouvez utiliser une approche « bootstrap ». Dans l’approche de démarrage, une application de haut niveau Azure Sphere acquiert les certificats à partir du réseau ouvert, puis les utilise pour se connecter au réseau EAP-TLS.

Attention

Étant donné que les ID de certificat sont à l’échelle du système, une commande azsphere ou un appel de fonction qui ajoute un nouveau certificat peut remplacer un certificat qui a été ajouté par une commande ou un appel de fonction antérieur, ce qui peut entraîner des échecs de connexion réseau. Nous vous recommandons vivement de développer des procédures de mise à jour de certificat claires et de choisir soigneusement les ID de certificat. Pour plus d’informations , consultez ID de certificat.

Déploiement manuel

Si le réseau EAP-TLS est le seul réseau disponible pour vos appareils, vous devez déployer les certificats manuellement. Le déploiement manuel implique l’acquisition des certificats à l’aide d’un PC en réseau ou d’une machine Linux, puis le chargement des certificats sur chaque appareil Azure Sphere à l’aide de l’interface CLI Azure Sphere. Cette approche nécessite une connexion physique entre le PC ou la machine Linux et l’appareil Azure Sphere.

Acquérir les certificats manuellement

L’autorité de certification racine et les certificats clients doivent se trouver dans . Format PEM à charger sur l’appareil Azure Sphere. Vous devez acquérir le certificat d’autorité de certification racine auprès du serveur approprié, ainsi que le certificat client et la clé privée (et éventuellement un mot de passe pour votre clé privée) pour votre appareil. Chaque certificat doit être généré et signé par le serveur approprié dans votre réseau EAP-TLS. Votre administrateur réseau ou votre équipe de sécurité peut fournir les détails dont vous avez besoin pour obtenir les certificats.

Enregistrez les certificats dans . Format PEM sur votre PC ou machine Linux, puis utilisez l’interface CLI Azure Sphere pour les stocker sur l’appareil Azure Sphere.

Stocker les certificats à l’aide de l’interface CLI

Attachez l’appareil Azure Sphere à votre PC en réseau ou à votre machine Linux et utilisez la commande azsphere pour stocker les certificats sur l’appareil.

Pour stocker le certificat d’autorité de certification racine sur l’appareil Azure Sphere :

azsphere device certificate add --cert-id "server-key-xyz" --cert-type rootca --public-key-file <filepath_to_server_ca_public.pem>

Pour stocker le certificat client sur l’appareil Azure Sphere :

azsphere device certificate add --cert-id "client-key-abc" --cert-type client --public-key-file <filepath_to_client_public.pem> --private-key-file <filepath_to_client_private.pem> --private-key-password "_password_"

Déploiement d’amorçage

Pour connecter des appareils Azure Sphere en grand nombre ou à de nombreux emplacements, envisagez d’utiliser une approche « bootstrap ». Pour utiliser cette méthode, vos appareils doivent être en mesure de se connecter à un réseau par le biais duquel ils peuvent accéder à un serveur qui peut fournir les certificats. Votre application Azure Sphere de haut niveau se connecte au serveur via le réseau disponible, demande les certificats et les stocke sur l’appareil.

La figure suivante résume ce processus.

Flux de certificat pendant le déploiement de démarrage

  1. L’application sur l’appareil Azure Sphere se connecte au réseau ouvert et contacte le service de sécurité Azure Sphere pour obtenir son certificat DAA. Il installe ensuite le certificat DAA sur l’appareil. L’appareil doit utiliser ce certificat pour s’authentifier auprès du service émetteur du certificat.

  2. L’application se connecte ensuite au service d’émission de certificat que l’administrateur réseau a désigné. Il présente son certificat DAA pour valider son identité auprès du serveur et demande le certificat d’autorité de certification racine pour le serveur RADIUS sur le réseau EAP-TLS, ainsi que le certificat client et la clé privée. Le service peut transmettre d’autres informations à l’application, telles que l’identité du client et le mot de passe de la clé privée si nécessaire. L’application installe ensuite le certificat client, la clé privée cliente et le certificat d’autorité de certification racine sur l’appareil. Il peut ensuite se déconnecter du réseau ouvert.

  3. L’application configure et active le réseau EAP-TLS. Il fournit le certificat client et la clé privée pour prouver l’identité de l’appareil. Si le réseau prend en charge l’authentification mutuelle, l’application authentifie également le serveur RADIUS à l’aide du certificat d’autorité de certification racine.

Authentifier l’appareil et obtenir le certificat client pendant le démarrage

Un appareil Azure Sphere peut utiliser son certificat d’authentification et d’attestation d’appareil (DAA) pour s’authentifier auprès d’un service qui peut fournir les autres certificats requis. Le certificat DAA est disponible auprès du service de sécurité Azure Sphere.

Pour obtenir le certificat DAA :

  1. Spécifiez l’ID de locataire Azure Sphere dans la section DeviceAuthentication du manifeste de l’application de haut niveau.
  2. Appelez DeviceAuth_CurlSslFunc à partir de l’application générale pour obtenir la chaîne de certificats du locataire Azure Sphere actuel.

Si le manifeste de l’application inclut l’ID de locataire Azure Sphere pour l’appareil actuel, la fonction DeviceAuth_CurlSslFunc utilise la chaîne de certificats du client DAA pour s’authentifier, si le service cible nécessite une authentification mutuelle TLS.

Obtenir le certificat d’autorité de certification racine pour le serveur RADIUS

Pour obtenir le certificat d’autorité de certification racine pour le serveur RADIUS, l’application se connecte à un point de terminaison de serveur de certificats accessible sur son réseau et peut fournir le certificat. Votre administrateur réseau doit être en mesure de fournir des informations sur la façon de se connecter au point de terminaison et de récupérer le certificat.

Installer les certificats à l’aide de l’API CertStore

L’application utilise l’API CertStore pour installer les certificats sur l’appareil. La fonction CertStore_InstallClientCertificate installe le certificat client et CertStore_InstallRootCACertificate installe le certificat d’autorité de certification racine pour le serveur RADIUS. La gestion des certificats dans les applications de haut niveau fournit des informations supplémentaires sur l’utilisation de l’API CertStore pour la gestion des certificats.

L’exemple d’application Certificats montre comment une application peut utiliser ces fonctions.