Partage via


Authentification cliente à l’aide d’une chaîne de certificats d’autorité de certification

Utilisez la chaîne de certificats d’autorité de certification dans Azure Event Grid pour authentifier les clients lors de la connexion au service.

Dans ce guide, vous allez effectuer les tâches suivantes :

  1. Charger un certificat d’autorité de certification, le certificat parent immédiat du certificat client, dans l’espace de noms.
  2. Configurer les paramètres d’authentification client.
  3. Connecter un client à l’aide du certificat client signé par le certificat d’autorité de certification précédemment chargé.

Prérequis

  • Vous avez besoin d’un espace de noms Event Grid déjà créé.
  • Vous avez besoin d’une chaîne de certificats d’autorité de certification : les certificats client et le certificat parent (généralement un certificat intermédiaire) qui a été utilisé pour signer les certificats client.

Générer un exemple de certificat client et d’empreinte numérique

Si vous n’avez pas encore de certificat, vous pouvez créer un échantillon de certificat à l’aide de Step CLI. Envisagez d’installer manuellement pour Windows.

Une fois que vous avez installé Step, dans Windows PowerShell, exécutez la commande pour créer des certificats racine et intermédiaires.

.\step ca init --deployment-type standalone --name MqttAppSamplesCA --dns localhost --address 127.0.0.1:443 --provisioner MqttAppSamplesCAProvisioner

Utilisation des fichiers d’autorité de certification générés pour créer un certificat pour le client.

.\step certificate create client1-authnID client1-authnID.pem client1-authnID.key --ca .step/certs/intermediate_ca.crt --ca-key .step/secrets/intermediate_ca_key --no-password --insecure --not-after 2400h

Charger le certificat d’autorité de certification dans l’espace de noms

  1. Dans le Portail Azure, accédez à votre espace de noms Event Hubs.
  2. Sous la section MQTT broker dans le rail gauche, accédez au menu Certificats d’autorité de certification.
  3. Sélectionnez + Certificat pour lancer la page Charger le certificat.
  4. Ajoutez le nom du certificat et recherchez le certificat intermédiaire (.step/certs/intermediate_ca.crt), puis sélectionnez Charger. Vous pouvez charger un fichier de type .pem, .cer ou .crt.

Screenshot showing the added CA certificate listed in the CA certificates page.

Remarque

  • Le nom du certificat d’autorité de certification peut être compris entre 3 et 50 caractères.
  • Le nom du certificat d’autorité de certification peut inclure des caractères alphanumériques, des traits d’union(-) et aucun espace.
  • Le nom doit être unique pour chaque espace de noms.

Configurer les paramètres d’authentification client

  1. Accédez à la page Clients.
  2. Sélectionnez + Client pour ajouter un nouveau client. Si vous souhaitez mettre à jour un client existant, vous pouvez sélectionner le nom du client et ouvrir la page Mettre à jour le client.
  3. Dans la page Créer un client, ajoutez le nom du client, le nom d’authentification du client et le schéma de validation de l’authentification par certificat client. En règle générale, le nom d’authentification du client se trouve dans le champ nom de l’objet du certificat client.

Screenshot showing the client metadata using the subject matches the authentication name option.

  1. Sélectionnez le bouton Créer pour créer le client.

Exemple de schéma d’objet de certificat

{
    "properties": {
        "description": "CA certificate description",
        "encodedCertificate": "-----BEGIN CERTIFICATE-----`Base64 encoded Certificate`-----END CERTIFICATE-----"
    }
}

Configuration d’Azure CLI

Utilisez les commandes suivantes pour charger/afficher/supprimer un certificat d’autorité de certification sur le service

Charger le certificat racine ou intermédiaire de l’autorité de certification

az eventgrid namespace ca-certificate create -g myRG --namespace-name myNS -n myCertName --certificate @./resources/ca-cert.json

Afficher les informations de certificat

az eventgrid namespace ca-certificate show -g myRG --namespace-name myNS -n myCertName

Supprimer le certificat

az eventgrid namespace ca-certificate delete -g myRG --namespace-name myNS -n myCertName

Étapes suivantes