Freigeben über


Was ist Azure IoT Hub Device Provisioning Service?

IoT Hub Device Provisioning Service (DPS) ist ein Hilfsdienst für IoT Hub und ermöglicht eine unbeaufsichtigte Just-In-Time-Bereitstellung im richtigen IoT-Hub ganz ohne Benutzereingriff. In einer cloudbasierten Lösung ermöglicht DPS die Bereitstellung von Millionen von Geräten auf sichere und skalierbare Weise. Viele der normalerweise mit der Bereitstellung verbundenen manuellen Schritte sind bei DPS automatisiert, um die Bereitstellung von IoT-Geräten zu beschleunigen und das Risiko manueller Fehler zu verringern.

Funktionsweise des Gerätebereitstellungsdiensts

Das folgende Diagramm veranschaulicht, was bei der Bereitstellung eines Geräts mit DPS geschieht.

Diagramm: Zusammenspiel von Gerät, Device Provisioning Service and IoT Hub

Vor Beginn der Gerätebereitstellung sind zwei manuelle Vorbereitungsschritte erforderlich:

  • Auf der Geräteseite bereitet der Gerätehersteller das Gerät für die Bereitstellung vor, indem er es mit Authentifizierungsanmeldeinformationen und der zugewiesenen DPS-ID (Device Provisioning Service) sowie dem zugewiesenen Endpunkt vorkonfiguriert.
  • Auf der Cloudseite bereiten Sie oder der Gerätehersteller die Device Provisioning Service-Instanz mit Registrierungen vor, die gültige Geräte identifizieren und definieren, wie sie bereitgestellt werden sollen.

Sobald das Gerät und die Cloud für die Bereitstellung eingerichtet sind, beginnen die folgenden Schritte automatisch, wenn das Gerät zum ersten Mal aktiviert wird:

  1. Das Gerät wird zum ersten Mal eingeschaltet, stellt dann eine Verbindung mit dem DPS-Endpunkt her und präsentiert seine Anmeldedaten.
  2. Die DPS-Instanz überprüft die Identität des Geräts anhand der Registrierungsliste. Nachdem die Geräteidentität überprüft wurde, weist DPS das Gerät einem IoT-Hub zu und registriert es beim Hub.
  3. Die DPS-Instanz empfängt die Geräte-ID und die Registrierungsinformationen vom zugewiesenen Hub und gibt sie an das Gerät zurück.
  4. Das Gerät verwendet die Registrierungsinformationen, um eine direkte Verbindung mit dem zugewiesenen IoT-Hub herzustellen und sich zu authentifizieren.
  5. Das Gerät und der IoT-Hub beginnen mit der direkten Kommunikation. Die DPS-Instanz hat keine weitere Funktion als Vermittler, es sei denn, das Gerät muss neu bereitgestellt werden.

Wann sollte der Device Provisioning-Dienst verwendet werden?

DPS ist in vielen Bereitstellungsszenarien eine hervorragende Wahl, um Geräte mit IoT Hub zu verbinden für IoT Hub zu konfigurieren. Beispiele wären etwa:

  • Bereitstellung ohne manuelles Eingreifen für eine einzelne IoT-Lösung ohne werkseitige Hartcodierung von IoT Hub-Verbindungsinformationen (Anfangssetup)
  • Hubübergreifender Lastenausgleich für Geräte
  • Herstellen der Verbindung von Geräten mit der IoT-Lösung ihrer Besitzer auf Basis der Verkaufstransaktionsdaten (Mehrinstanzenfähigkeit)
  • Herstellen der Verbindung von Geräten mit einer bestimmten IoT-Lösung abhängig vom Anwendungsfall (Lösungsisolation)
  • Herstellen der Verbindung eines Geräts mit IoT Hub mit der geringsten Wartezeit (Geo-Sharding)
  • Erneute Bereitstellung basierend auf einer Änderung im Gerät
  • Wechseln der Schlüssel, die vom Gerät verwendet werden, um eine Verbindung mit IoT Hub herzustellen (wenn keine X. 509-Zertifikate verwendet werden, um Verbindungen herstellen)

Die Bereitstellung geschachtelter IoT Edge-Geräte (Hierarchien mit über- und untergeordneten Elementen) wird derzeit von DPS nicht unterstützt.

Bereitstellung

Es gibt zwei Schritte, die vor einer Gerätebereitstellung mit DPS erfolgen:

  • Der Fertigungsschritt, in dem das Gerät werkseitig erstellt und vorbereitet wird, und
  • Der Cloudeinrichtungsschritt, in dem der Device Provisioning-Dienst für die automatisierte Bereitstellung konfiguriert wird.

Beide Schritte können nahtlos in bestehende Fertigungs- und Bereitstellungsprozesse eingefügt werden. DPS vereinfacht sogar einige Bereitstellungsprozesse, die mit manuellen Schritten verbunden sind, um Verbindungsinformationen auf das Gerät zu übertragen.

Fertigungsschritt

Dieser Schritt umfasst alles, was in der Fertigung geschieht. Zu den Rollen in diesem Schritt gehören Siliziumdesigner, Siliziumhersteller, Integrator und/oder Endhersteller des Geräts. Dieser Schritt betrifft das Erstellen der Hardware selbst.

DPS fügt dem Fertigungsprozess keinen neuen Schritt hinzu, sondern wird vielmehr in den vorhandenen Schritt eingebunden, mit dem die grundlegende Software und (im Idealfall) das Hardwaresicherheitsmodul (HSM) auf dem Gerät installiert werden. Anstatt in diesem Schritt eine Geräte-ID zu erstellen, wird das Gerät mit den Bereitstellungsdienstinformationen programmiert, sodass er den Bereitstellungsdienst aufruft, um seine Verbindungsinformationen/IoT-Lösungszuweisung abzurufen, wenn es aktiviert wird.

Auch in diesem Schritt liefert der Hersteller dem Bereitsteller/Bediener des Geräts Indentifikationsschlüsselinformationen. Die Angabe dieser Informationen ist möglicherweise einfach nur die Bestätigung, dass alle Geräte über ein X.509-Zertifikat verfügen, das aus einem vom Gerätebereitsteller/-bediener bereitgestellten Signaturzertifikat generiert wurde, kann jedoch auch komplexer sein und das Extrahieren des öffentlichen Teils eines TPM-Endorsement Keys aus jedem TPM-Gerät beinhalten. Viele Siliziumhersteller bieten diese Dienste an.

Cloudeinrichtungsschritt

In diesem Schritt wird die Cloud für die ordnungsgemäße automatische Bereitstellung konfiguriert. Im Allgemeinen sind zwei Arten von Benutzern am Cloudeinrichtungsschritt beteiligt: eine Person (ein Gerätebediener), die weiß, wie Geräte erstmalig eingerichtet werden müssen, und eine andere Person (ein Lösungsoperator), die weiß, wie Geräte auf die IoT Hubs aufgeteilt werden sollen.

Es gibt eine einmalige Ersteinrichtung des Bereitstellungsdienstes, um die sich in der Regel der Lösungsbetreiber kümmert. Sobald der Bereitstellungsdienst konfiguriert ist, muss er nicht mehr geändert werden, solange sich der Anwendungsfall nicht ändert.

Wenn der Dienst für die automatische Bereitstellung konfiguriert ist, muss er auf das Registrieren von Geräten vorbereitet werden. Dieser Schritt wird vom Gerätebediener ausgeführt. Er ist mit der gewünschten Konfiguration der Geräte vertraut und sogt dafür, dass der Bereitstellungsdienst ordnungsgemäß die Identität des Geräts nachweisen kann. Die Gerätebediener übernimmt die Indentifikationsschlüsselinformationen vom Hersteller und fügt sie der Registrierungsliste hinzu. Die Registrierungsliste kann später aktualisiert werden, indem neue Einträge hinzugefügt oder vorhandene Einträge mit den neuesten Informationen zu den Geräten aktualisiert werden.

Registrierung und Bereitstellung

Bereitstellung kann abhängig von der Branche, wo der Begriff verwendet wird, verschiedene Bedeutungen haben. Im Kontext der Bereitstellung von IoT-Geräten für ihre Cloudlösung ist sie ein aus zwei Teilen bestehender Prozess:

  • Im ersten Teil wird durch Registrieren des Geräts eine erstmalige Verbindung des Geräts mit der IoT-Lösung hergestellt.
  • Im zweiten Schritt wird die richtige Konfiguration des Geräts basierend auf den spezifischen Anforderungen der Lösung, für die es registriert wurde, angewendet.

Sobald beide Schritte abgeschlossen sind, können wir sagen, dass das Gerät vollständig bereitgestellt ist.

Features des Device Provisioning-Diensts

Dank zahlreicher Features eignet sich DPS perfekt für die Bereitstellung von Geräten.

  • Unterstützung des sicheren Nachweises für Identitäten auf X.509- und TPM-Basis.
  • Registrierungsliste , die den vollständigen Datensatz von Geräten/Gruppen von Geräten enthält, die sich zu einem bestimmten Zeitpunkt registrieren können. Die Registrierungsliste enthält Informationen zu der gewünschten Konfiguration eines Geräts, sobald es registriert ist und sie kann jederzeit aktualisiert werden.
  • Mehrere Zuordnungsrichtlinien, um die DPS-basierte Zuweisung von Geräten zu IoT-Hubs für Ihre Szenarien zu steuern: Kürzeste Wartezeit, gleichmäßig gewichtete Verteilung (Standard) und statische Konfiguration. Mit der benutzerdefinierten Zuordnung können Sie eigene Zuordnungsrichtlinien über in Azure-Funktionen gehostete Webhooks implementieren, anstatt einen der Standardwerte zu verwenden.
  • Überwachungs- und Diagnoseprotokolle, um sicherzustellen, dass alles ordnungsgemäß funktioniert
  • Unterstützung für mehrere Hubs, sodass Device Provisioning Service (DPS) Geräte mehreren IoT Hubs zuweisen kann. DPS kann über mehrere Azure-Abonnements hinweg mit Hubs kommunizieren.
  • Regionsübergreifende Unterstützung, um DPS das Zuweisen von Geräten zu IoT-Hubs in anderen Regionen zu ermöglichen.
  • Mit der Verschlüsselung für ruhende Daten können Daten in DPS auf transparente Weise mit der 256-Bit-AES-Verschlüsselung – einer der stärksten verfügbaren Blockchiffren – ver- und entschlüsselt werden. Die Verschlüsselung ist darüber hinaus mit dem FIPS 140-2-Standard konform.

Weitere Informationen zu den mit der Gerätebereitstellung verbundenen Konzepten und Features finden Sie im Artikel Terminologie: Azure IoT Hub Device Provisioning Service (DPS) sowie in den anderen konzeptionellen Artikeln im gleichen Abschnitt.

Plattformübergreifende Unterstützung

DPS kann wie alle Azure IoT-Dienste plattformübergreifend mit verschiedenen Betriebssystemen verwendet werden. Azure bietet Open-Source-SDKs in verschiedenen Programmiersprachen, um das Herstellen von Geräteverbindungen sowie die Dienstverwaltung zu vereinfachen.

DPS unterstützt die folgenden Protokolle zum Verbinden von Geräten:

  • HTTPS*
  • AMQP
  • AMQP über Websockets
  • MQTT
  • MQTT über Websockets

*DPS unterstützt nur HTTPS-Verbindungen für Dienstvorgänge.

Regionen

DPS steht in vielen Regionen zur Verfügung. Eine Liste der unterstützten Regionen für alle Dienste finden Sie unter Azure-Regionen. Sie können die Verfügbarkeit des Gerätebereitstellungsdiensts auf der Azure-Statusseite überprüfen.

Für Resilienz und Zuverlässigkeit empfehlen wir die Bereitstellung in einer der Regionen, die Verfügbarkeitszonen unterstützen.

Überlegungen zur Datenresidenz

Der Gerätebereitstellungsdienst speichert Kundendaten. Standardmäßig werden Kundendaten in eine sekundäre Region repliziert, um Notfallwiederherstellungsszenarien zu unterstützen. Bei Bereitstellungen in „Asien, Südosten“ und „Brasilien, Süden2 können Kunden ihre Daten nur innerhalb dieser Region beibehalten, indem sie die Notfallwiederherstellung deaktivieren. Weitere Informationen finden Sie unter Regionsübergreifende Replikation in Azure.

DPS verwendet den gleichen Endpunkt für die Gerätebereitstellung für alle Bereitstellungsdienstinstanzen und führt den Lastenausgleich des Datenverkehrs für den nächstgelegenen verfügbaren Dienstendpunkt durch. Daher können Authentifizierungsgeheimnisse vorübergehend außerhalb der Region übertragen werden, in der die DPS-Instanz ursprünglich erstellt wurde. Sobald das Gerät verbunden ist, werden die Gerätedaten jedoch direkt in die ursprüngliche Region der DPS-Instanz übertragen. Um sicherzustellen, dass Ihre Daten die ursprüngliche oder sekundäre Region nicht verlassen, verwenden Sie einen privaten Endpunkt. Informationen zum Einrichten privater Endpunkte finden Sie unter DPS-Unterstützung für virtuelle Netzwerke.

Kontingente und Grenzwerte

Jedes Azure-Abonnement verfügt über Standardkontingentbeschränkungen, die sich auf den Umfang Ihrer IoT-Lösung auswirken können. Die aktuelle Grenze sind 10 Gerätebereitstellungsdienste pro Abonnement.

Weitere Informationen zu Kontingentbeschränkungen finden Sie unter Azure-Abonnementdienstbeschränkungen.

Die folgende Tabelle enthält die Grenzwerte, die für Ressourcen des Azure IoT Hub Device Provisioning-Diensts gelten.

Ressource Begrenzung
Maximale Anzahl von Gerätebereitstellungsdiensten pro Azure-Abonnement 10
Maximale Anzahl von Registrierungen (Registrations) 1\.000.000
Maximale Anzahl individueller Registrierungen 1\.000.000
Maximale Anzahl von Registrierungsgruppen (X.509-Zertifikat) 100
Maximale Anzahl von Registrierungsgruppen (symmetrischer Schlüssel) 100
Maximale Anzahl von Zertifizierungsstellen 25
Maximale Anzahl der verknüpften IoT-Hubs 50
Maximale Nachrichtengröße 96 KB

Tipp

Wenn das harte Limit für symmetrische Schlüsselregistrierungsgruppen ein Blockierungsproblem ist, verwenden Sie einzelne Registrierungen als Problemumgehung.

Für den Device Provisioning-Dienst gelten die folgenden Ratenbegrenzungen.

Zinssatz Wert pro Einheit
Vorgänge 1.000/Min./Dienst
Geräteregistrierungen 1.000/Min./Dienst
Abrufvorgang für Geräte 5/10 Sekunden/Gerät

Abrechenbare Dienstvorgänge und Preise

Jeder API-Aufruf von DPS, ob aus den Dienst-APIs oder der Geräteregistrierungs-API, kann als ein Vorgang abgerechnet werden.

Die folgenden Tabellen zeigen den aktuellen abrechnungsfähigen Status für jeden DPS-API-Vorgang. Wenn Sie sich zu den Preisen für DPS informieren möchten, wählen Sie oben auf der Seite Azure IoT Hub – Preise die Tabelle Preise aus. Wählen Sie dann die Registerkarte IoT Hub Device Provisioning Service sowie die Währung und Region für Ihren Dienst aus.

Programmierschnittstelle (API) Vorgang Abrechenbar?
DPS-Geräte-API – Laufzeitregistrierung Ermitteln des Geräteregistrierungsstatus Nein
Vorgangsstatussuche Nein
Gerät registrieren Ja
DPS-Dienst-API – Geräteregistrierungsstatus Alle Ja
DPS-Dienst-API – Registrierungsgruppe Alle Ja
DPS-Dienst-API – individuelle Registrierung Alle Ja
DPS-Zertifikat-API Alle Nein
IoT DPS-Ressourcen-API Alle Nein

DPS automatisiert die Gerätebereitstellung mit Azure IoT Hub. Erfahren Sie mehr über IoT Hub.

IoT Central-Anwendungen verwenden eine interne DPS-Instanz, um Geräteverbindungen zu verwalten. Weitere Informationen finden Sie unter Verbinden eines Geräts mit IoT Central.

Nächste Schritte

Einrichten von IoT Hub Device Provisioning Service über das Azure-Portal

Erstellen und Bereitstellen eines simulierten Geräts