Freigeben über


Client-Authentifizierung unter Verwendung einer Zertifikatkette von Zertifizierungsstellen

Verwenden Sie die Zertifikatskette der Zertifizierungsstelle 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 Zertifikatkette einer Zertifizierungsstelle: Clientzertifikate und das übergeordnete Zertifikat (in der Regel ein Zwischenzertifikat), das zur Signierung 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.

  1. 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
  1. 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
  1. Führen Sie zum Anzeigen des Fingerabdrucks den Step-Befehl aus.
step certificate fingerprint client1-authn-ID.pem

Laden Sie das Zertifikats der Zertifizierungsstelle in den Namespace hoch

  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: Hinzugefügtes CA-Zertifikat, das auf der Seite „CA-Zertifikate“ aufgelistet wird.

Hinweis

  • Der Name des Zertifizierungsstellenzertifikats kann zwischen 3 und 50 Zeichen lang sein.
  • Der Name des CA-Zertifikats kann alphanumerische Zeichen und Bindestriche (-) enthalten, aber keine Leerzeichen.
  • 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 Authentifizierungsname des Clients im Feld „Betreffname“ für das Clientzertifikat.

Screenshot: Clientmetadaten stimmen unter Verwendung des Antragstellers mit der Option „Authentifizierungsname“ überein.

  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