Teilen über


Clientauthentifizierung mithilfe von Zertifizierungsstellen-Zertifikatketten

Verwenden der Zertifizierungsstellen-Zertifikatkette in Azure Event Grid, um Clients zu authentifizieren, während Sie eine Verbindung mit dem Dienst herstellen.

In diesem Leitfaden führen Sie die folgenden Aufgaben aus:

  1. Hochladen eines Zertifizierungsstellenzertifikats, das unmittelbar übergeordnete Zertifikat des Clientzertifikats, in den Namespace.
  2. Konfigurieren von Clientauthentifizierungseinstellungen.
  3. Verbinden eines Clients mithilfe des Clientzertifikats, das vom zuvor hochgeladenen Zertifizierungsstellenzertifikat signiert wurde.

Voraussetzungen

  • Sie benötigen einen Event Grid-Namespace, der bereits erstellt wurde.
  • Sie benötigen eine Zertifizierungsstellen-Zertifikatkette: Clientzertifikate und das übergeordnete Zertifikat (in der Regel ein Zwischenzertifikat), das zum Signieren der Clientzertifikate verwendet wurde.

Generieren eines Beispielclientzertifikats und Fingerabdrucks

Wenn Sie noch kein Zertifikat besitzen, können Sie mit der Step CLI ein Beispielzertifikat generieren. Erwägen Sie die manuelle Installation für Windows.

Führen Sie nach der Installation von Step in Windows PowerShell den Befehl aus, um Stamm- und Zwischenzertifikate zu erstellen.

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

Verwenden der generierten Zertifizierungsstellendateien zum Erstellen eines Zertifikats für den 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

Hochladen des Zertifizierungsstellenzertifikats in den Namespace

  1. Navigieren Sie im Azure-Portal zu Ihrem Event Grid-Namespace.
  2. Navigieren Sie im Abschnitt MQTT-Broker im linken Bereich zum Menü „Zertifizierungsstellenzertifikate“.
  3. Wählen Sie + Zertifikat aus, um die Seite „Zertifikat hochladen“ zu öffnen.
  4. Fügen Sie den Zertifikatnamen hinzu, suchen Sie nach dem Zertifikat für Fortgeschrittene (.step/certs/intermediate_ca.crt), und wählen Sie Hochladen aus. Sie können eine Datei vom Typ .pem, .cer oder .crt hochladen.

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

Hinweis

  • Der Name des Zertifizierungsstellenzertifikats kann zwischen 3 und 50 Zeichen lang sein.
  • Der Name des Zertifizierungsstellenzertifikats kann alphanumerische Zeichen und Bindestriche (-), aber keine Leerzeichen enthalten.
  • Der Name muss pro Namespace eindeutig sein.

Konfigurieren von Clientauthentifizierungseinstellungen

  1. Navigieren Sie zur Seite „Clients“.
  2. Wählen Sie + Client aus, um einen neuen Client hinzuzufügen. Wenn Sie einen vorhandenen Client aktualisieren möchten, können Sie den Clientnamen auswählen und die Seite „Client aktualisieren“ öffnen.
  3. Fügen Sie auf der Seite „Client erstellen“ den Clientnamen, den Clientauthentifizierungsnamen und das Überprüfungsschema für die Clientzertifikatauthentifizierung hinzu. In der Regel befindet sich der Clientauthentifizierungsname im Feld „Antragstellername“ für das Clientzertifikat.

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

  1. Klicken Sie auf die Schaltfläche Erstellen, um den Client zu erstellen.

Beispielschema für Zertifikatobjekt

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

Azure CLI-Konfiguration

Verwenden Sie die folgenden Befehle, um ein Zertifizierungsstellenzertifikat in den Dienst hochzuladen, anzuzeigen oder zu löschen.

Hochladen des Stamm- oder Zwischenzertifikats der Zertifizierungsstelle

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

Anzeigen von Zertifikatinformationen

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

Löschen eines Zertifikats

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

Nächste Schritte