Ausstellung von Gerätezertifikaten in Azure IoT Hub Zertifikatverwaltung (Vorschau)

Die Gerätezertifikatausstellung ist der Prozess, mit dem Geräte ein Zertifikat als Teil der Bereitstellung anfordern und empfangen. Azure Device Registry (ADR) generiert und gibt während der Bereitstellung ein neues X.509-Zertifikat auf Ihre IoT-Geräte aus. In diesem Artikel wird die Verantwortung eines Geräts zum Senden einer Zertifikatsignierungsanforderung (CERTIFICATE Signing Request, CSR) erläutert, wie ADR und Device Provisioning Service (DPS) zusammenarbeiten, um Zertifikate im Maßstab auszustellen und wie IoT Hub den ausgestellten Zertifikaten vertraut.

Important

Azure IoT Hub mit Azure Geräteregistrierungsintegration und Microsoft gesicherten X.509-Zertifikatverwaltung befindet sich in public preview und wird für Produktionsworkloads nicht empfohlen. Weitere Informationen finden Sie unter FAQ: Neuerungen in IoT Hub?.

Funktionsweise der Gerätezertifikatausstellung

Die folgenden Schritte beschreiben den Gesamtablauf der Ausstellung:

  1. Das IoT-Gerät stellt eine Verbindung mit dem DPS-Endpunkt und authentifiziert sich mithilfe der vorkonfigurierten Onboarding-Anmeldeinformationen, z. B. eines symmetrischen Schlüssels, eines X.509-Zertifikats oder eines Trusted Platform Module (TPM). Im Rahmen dieses Registrierungsaufrufs sendet das Gerät eine Zertifikatsignaturanforderung (CSR), die den öffentlichen Schlüssel des Geräts und seine Registrierungs-ID enthält.
  2. DPS weist das IoT-Gerät einem IoT Hub basierend auf der Registrierungskonfiguration zu.
  3. Die Geräteidentität wird in IoT Hub erstellt und im ADR-Namespace registriert. Die CSR wird an die eindeutige PKI weitergeleitet, die dem ADR-Namespace zugewiesen ist. Die PKI überprüft die Anforderung und leitet sie an die Richtlinie weiter, die mit der DPS-Registrierung verknüpft ist.
  4. Die die Richtlinie ausstellende ZS signiert das Betriebszertifikat und stellt es aus.
  5. DPS gibt das ausgestellte Zertifikat und IoT Hub Verbindungsdetails an das Gerät zurück.
  6. Das Gerät authentifiziert sich mit IoT Hub, indem die vollständige Zertifikatkette präsentiert wird.

Diagramm, das zeigt, wie Azure Geräteregistrierung bei der Bereitstellung in IoT Hub und DPS für die Zertifikatverwaltung integriert wird.

Anforderungen für die Zertifikatsignierungsanforderung

Wenn ein Gerät bereitgestellt oder erneut bereitgestellt wird, sendet es eine CSR an DPS. DPS erwartet, dass die CSR die folgenden Anforderungen erfüllt:

  • Format: Base64-kodierte Distinguished Encoding Rules (DER) gemäß der Public Key Cryptography Standards (PKCS) #10-Spezifikation. PEM-Kopf- und Fußzeilen (Privacy-Enhanced Mail) können nicht einbezogen werden.
  • Allgemeiner Name (CN): Das Feld "CN" muss exakt mit der DPS-Registrierungs-ID des Geräts übereinstimmen.
  • Schlüsselalgorithmus: Elliptische-Kurven-Schlüssel (EC) unter Verwendung der NIST P-384-Kurve. RSA-Schlüssel werden in der aktuellen Vorschau nicht unterstützt.

Implementierungsbeispiele finden Sie unter DPS-Geräte-SDK-Beispiele.

Kryptografische Algorithmen

Die Zertifikatverwaltung verwendet die folgenden kryptografischen Standards für alle zertifikate, die von einer Richtlinie ausgestellt wurden:

Eigentum Wert
Schlüsselalgorithmus ECC (ECDSA)
Kurve NIST P-384 (secp384r1)
Hashalgorithmus SHA-384
Schlüsselspeicher Verwaltetes Azure-HSM

ECC mit P-384 bietet eine gleichwertige Sicherheit für RSA bei viel kleineren Schlüsselgrößen. Dieser Algorithmus erzeugt kleinere Zertifikate, schnellere TLS-Handshakes und einen geringeren Stromverbrauch auf eingeschränkten IoT-Geräten.

IoT Hub Synchronisierung von Vertrauens- und Anmeldeinformationen

Damit ein Gerät sich mit IoT Hub mithilfe seines ausgestellten Zertifikats authentifiziert, muss IoT Hub der ausstellenden Zertifizierungsstelle vertrauen, die das Gerätezertifikat signiert hat. ADR verwaltet diese Vertrauensstellung mithilfe der Synchronisierung von Anmeldeinformationen, wodurch das Zertifikat der ausstellenden Zertifizierungsstelle aus ADR an Ihre verknüpften IoT-Hubs weitergeleitet werden.

Um die Synchronisierung von Anmeldeinformationen manuell auszuführen, verwenden Sie den folgenden Azure CLI Befehl:

az iot adr ns credential sync --namespace <namespace> -g <resource-group>

Der IoT-Hub speichert das Zertifikat der ausstellenden Zertifizierungsstelle und verwendet es zur Validierung der Zertifikatskette, die Ihre Geräte bei der TLS-Authentifizierung vorlegen.