Freigeben über


Rollen von X.509-Gerätezertifikaten

Während des Lebenszyklus Ihrer IoT-Lösung müssen Sie Zertifikate „rollen“ (festlegen, dass ein neues Zertifikat ab einem bestimmten Zeitpunkt zum aktuellen Zertifikat wird). Zwei der wichtigsten Gründe für das Rollen von Zertifikaten sind Sicherheitsverletzungen und der Ablauf von Zertifikaten.

Das Rollen von Zertifikaten ist eine bewährte Methode zur Sicherheit Ihres Systems, wenn eine Sicherheitsverletzung vorliegt. Im Rahmen der "Assume Breach Methodology" befürwortet Microsoft die Notwendigkeit, reaktive Sicherheitsprozesse zusammen mit präventiven Maßnahmen zu erhalten. Das Rollen Ihrer Gerätezertifikate sollte ein Bestandteil dieser Sicherheitsprozesse sein. Die Häufigkeit, mit der Sie Ihre Zertifikate rollen, hängt von den Sicherheitsanforderungen Ihrer Lösung ab. Kunden, deren Lösungen sensible Daten beinhalten, rotieren Zertifikate möglicherweise täglich, während andere ihre Zertifikate alle zwei Jahre rotieren.

Beim Rollen von Gerätezertifikaten müssen das auf dem Gerät gespeicherte Zertifikat und der IoT Hub aktualisiert werden. Anschließend kann das Gerät sich selbst mit dem IoT Hub anhand der normalen Bereitstellung mit Device Provisioning Service (DPS) erneut bereitstellen.

Abrufen neuer Zertifikate

Es gibt viele Möglichkeiten, neue Zertifikate für Ihre IoT-Geräte abzurufen, einschließlich des Abrufens von Zertifikaten aus der Gerätefactory, das Generieren eigener Zertifikate und das Verwalten der Zertifikaterstellung durch einen Nicht-Microsoft-Anbieter.

Zertifikate können sich gegenseitig signieren, um eine Vertrauenskette von einem Zertifikat der Stammzertifizierungsstelle zu einem Blattzertifikat zu bilden. Ein Signaturzertifikat ist das Zertifikat, das zum Signieren des Blattzertifikats am Ende der Vertrauenskette verwendet wird. Ein Signaturzertifikat kann ein Zertifikat der Stammzertifizierungsstelle oder ein Zwischenzertifikat in der Vertrauenskette sein. Weitere Informationen finden Sie unter X.509-Zertifikatnachweis.

Es gibt zwei verschiedene Möglichkeiten zum Abrufen eines Signaturzertifikats. Die erste Methode, die für Produktionssysteme empfohlen wird, besteht darin, ein Signaturzertifikat von einer Stammzertifizierungsstelle (Ca) zu erwerben. Auf diese Weise wird die Sicherheit an eine vertrauenswürdige Quelle gebunden.

Die zweite Möglichkeit besteht darin, eigene X.509-Zertifikate mit einem Tool wie OpenSSL zu erstellen. Dieser Ansatz eignet sich hervorragend zum Testen von X.509-Zertifikaten, bietet jedoch nur wenige Garantien für die Sicherheit. Es wird empfohlen, diesen Ansatz nur für Tests zu verwenden, es sei denn, Sie sind bereit, als eigener Zertifizierungsstellenanbieter zu fungieren.

Rollen des Zertifikats auf dem Gerät

Zertifikate auf einem Gerät sollten immer an einem sicheren Ort wie einem Hardwaresicherheitsmodul (HARDWARE Security Module, HSM) gespeichert werden. Die Art und Weise, wie Sie Gerätezertifikate verwalten, hängt davon ab, wie sie ursprünglich auf den Geräten erstellt und installiert wurden.

Wenn Sie Ihre Zertifikate von einem Nicht-Microsoft-Anbieter erhalten haben, müssen Sie prüfen, wie sie ihre Zertifikate ausstellen. Der Prozess kann in Ihre Vereinbarung mit ihnen aufgenommen werden, oder es ist ein separater Service, den sie anbieten.

Wenn Sie Ihre eigenen Gerätezertifikate verwalten, müssen Sie ihre eigene Pipeline zum Aktualisieren von Zertifikaten erstellen. Stellen Sie sicher, dass sowohl alte als auch neue Blattzertifikate den gleichen gemeinsamen Namen (CN) haben. Durch die Verwendung desselben allgemeinen Namens kann das Gerät sich selbst erneut bereitstellen, ohne einen doppelten Registrierungseintrag zu erstellen.

Die Mechanik der Installation eines neuen Zertifikats auf einem Gerät umfasst häufig einen der folgenden Ansätze:

  • Sie können betroffene Geräte auslösen, um eine neue Zertifikatsignaturanforderung (CSR) an Ihre PKI-Zertifizierungsstelle zu senden. In diesem Fall kann jedes Gerät wahrscheinlich sein neues Gerätezertifikat direkt von der Zertifizierungsstelle herunterladen.

  • Sie können eine CSR von jedem Gerät aufbewahren und verwenden, um ein neues Gerätezertifikat von der PKI-Zertifizierungsstelle zu erhalten. In diesem Fall müssen Sie das neue Zertifikat an jedes Gerät in einem Firmwareupdate mit einem sicheren OTA-Updatedienst wie Device Update für IoT Hub übertragen.

Rollieren eines Zertifikats in DPS

Das Gerätezertifikat kann einem IoT-Hub manuell hinzugefügt werden. Das Zertifikat kann auch mithilfe einer Device Provisioning Service-Instanz automatisiert werden. In diesem Artikel wird davon ausgegangen, dass eine Gerätebereitstellungsdienstinstanz verwendet wird, um die automatische Bereitstellung zu unterstützen.

Wenn ein Gerät anfänglich über die automatische Bereitstellung bereitgestellt wird, wird es gestartet und kontaktiert den Bereitstellungsdienst. Der Bereitstellungsdienst antwortet, indem er eine Identitätsprüfung vor dem Erstellen einer Geräteidentität in einem IoT-Hub unter Verwendung des Blattzertifikats des Geräts als Anmeldeinformationen durchführt. Der Bereitstellungsdienst teilt dem Gerät dann mit, welchem IoT-Hub es zugewiesen ist, und das Gerät verwendet dann sein blattbasiertes Zertifikat, um sich zu authentifizieren und eine Verbindung mit dem IoT-Hub herzustellen.

Sobald ein neues Blattzertifikat auf das Gerät gerollt wurde, kann es keine Verbindung mit dem IoT-Hub mehr herstellen, da es ein neues Zertifikat zum Herstellen einer Verbindung verwendet. Der IoT-Hub erkennt das Gerät nur mit dem alten Zertifikat. Das Ergebnis des Verbindungsversuchs des Geräts ist ein "nicht autorisierter" Verbindungsfehler. Um diesen Fehler zu beheben, müssen Sie den Registrierungseintrag für das Gerät aktualisieren, um das neue Blattzertifikat des Geräts zu berücksichtigen. Anschließend kann der Bereitstellungsdienst die IoT Hub-Geräteregistrierungsinformationen nach Bedarf aktualisieren, wenn das Gerät neu bereitgestellt wird.

Eine mögliche Ausnahme dieses Verbindungsfehlers wäre ein Szenario, in dem Sie eine Registrierungsgruppe für Ihr Gerät im Bereitstellungsdienst erstellen. Rollen Sie in diesem Fall die Stamm- oder Zwischenzertifikate in der Vertrauenskette des Geräts nicht, wird das Gerät erkannt, sofern das neue Zertifikat Teil der in der Registrierungsgruppe definierten Vertrauenskette ist. Wenn dieses Szenario als Reaktion auf eine Sicherheitsverletzung auftritt, sollten Sie zumindest die spezifischen Gerätezertifikate in der Gruppe, die als verletzt eingestuft werden, verbieten. Weitere Informationen finden Sie unter Ausschließen bestimmter Geräte in einer X.509-Registrierungsgruppe

Wie Sie die Aktualisierung des Registrierungseintrags behandeln, hängt davon ab, ob Sie einzelne Registrierungen oder Gruppenregistrierungen verwenden. Außerdem unterscheiden sich die empfohlenen Verfahren je nachdem, ob Sie Zertifikate aufgrund einer Sicherheitsverletzung oder aufgrund eines Zertifikatablaufs rollen. In den folgenden Abschnitten wird beschrieben, wie diese Updates behandelt werden.

Zertifikate für einzelne Einschreibungen erstellen

Wenn Sie Zertifikate als Reaktion auf eine Sicherheitsverletzung einführen, sollten Sie alle kompromittierten Zertifikate sofort löschen.

Wenn Sie Zertifikate rollieren, da Zertifikate ablaufen, sollten Sie die Konfiguration des sekundären Zertifikats wie folgt verwenden, um die Downtime für Geräte zu reduzieren, die bereitgestellt werden sollen. Wenn zu einem späteren Zeitpunkt das sekundäre Zertifikat bald abläuft und rolliert werden muss, können Sie zur Verwendung der primären Konfiguration wechseln. Ein solcher Wechsel zwischen primärem und sekundärem Zertifikat reduziert die Downtime für Geräte, die sich bereitzustellen versuchen.

Die Registrierungseinträge für gerollte Zertifikate werden auf der Seite Registrierungen verwalten aktualisiert. Führen Sie die folgenden Schritte aus, um auf diese Seite zuzugreifen:

  1. Melden Sie sich beim Azure-Portal an, und navigieren Sie zur Device Provisioning Service-Instanz, die über den Registrierungseintrag für Ihr Gerät verfügt.

  2. Wählen Sie "Registrierungen verwalten" aus.

    Screenshot der Seite

  3. Wählen Sie die Registerkarte "Einzelne Registrierungen " und dann den Registrierungs-ID-Eintrag aus der Liste aus.

  4. Aktivieren Sie die Kontrollkästchen "Primäres/sekundäres Zertifikat entfernen oder ersetzen ", wenn Sie ein vorhandenes Zertifikat löschen möchten. Wählen Sie das Dateiordnersymbol aus, um nach den neuen Zertifikaten zu suchen und hochzuladen.

    Wenn eines Ihrer Zertifikate kompromittiert wurde, sollten Sie sie so schnell wie möglich entfernen.

    Wenn sich eines Ihrer Zertifikate dem Ablauf nähert, können Sie es beibehalten, solange das zweite Zertifikat nach diesem Datum noch aktiv ist.

    Screenshot, der zeigt, wie Sie ein Zertifikat entfernen und neue hochladen.

  5. Wählen Sie "Speichern" aus, wenn Sie fertig sind.

  6. Wenn Sie ein kompromittiertes Zertifikat aus dem Bereitstellungsdienst entfernt haben, kann das Zertifikat weiterhin verwendet werden, um Geräteverbindungen mit dem IoT-Hub herzustellen, solange dort eine Geräteregistrierung vorhanden ist. Sie können dies auf zwei Arten behandeln:

    Die erste Möglichkeit wäre, manuell zu Ihrem IoT-Hub zu navigieren und sofort die Geräteregistrierung zu entfernen, die mit dem kompromittierten Zertifikat verknüpft ist. Wenn das Gerät dann erneut mit einem aktualisierten Zertifikat bereit gestellt wird, wird eine neue Geräteregistrierung erstellt.

    Die zweite Möglichkeit ist die Verwendung der Unterstützung für die erneute Bereitstellung, um das Gerät auf demselben IoT-Hub erneut bereitzustellen. Dieser Ansatz kann verwendet werden, um das Zertifikat für die Geräteregistrierung auf dem IoT-Hub zu ersetzen. Weitere Informationen finden Sie unter How to reprovision devices (Erneutes Bereitstellen von Geräten).

Rollen von Zertifikaten für Registrierungsgruppen

Um eine Gruppenregistrierung als Reaktion auf eine Sicherheitsverletzung zu aktualisieren, sollten Sie das kompromittierte Stamm- oder Zwischenzertifikat sofort löschen.

Wenn Sie Zertifikate rollen, da Zertifikate ablaufen, sollten Sie die Konfiguration des sekundären Zertifikats verwenden, um sicherzustellen, dass keine Downtime für Geräte auftritt, die bereitgestellt werden sollen. Wenn später auch das sekundäre Zertifikat bald abläuft und gerollt werden muss, können Sie zur Verwendung der primären Konfiguration wechseln. Ein solcher Wechsel zwischen primärem und sekundärem Zertifikat stellt sicher, dass keine Downtime für Geräte auftritt, die sich bereitzustellen versuchen.

Stammzertifikate aktualisieren

  1. Wählen Sie "Zertifikate " im Abschnitt "Einstellungen" des Navigationsmenüs für Ihre Gerätebereitstellungsdienstinstanz aus.

    Screenshot der Seite

  2. Wählen Sie das kompromittierte oder abgelaufene Zertifikat aus der Liste und dann "Löschen" aus. Bestätigen Sie den Löschvorgang, indem Sie den Zertifikatnamen eingeben und "OK" auswählen.

  3. Führen Sie die schritte aus, die unter " So überprüfen Sie X.509-Zertifizierungsstellenzertifikate mit Ihrem Gerätebereitstellungsdienst " beschrieben werden, um neue Stammzertifizierungsstellenzertifikate hinzuzufügen und zu überprüfen.

  4. Wählen Sie " Registrierungen verwalten " im Abschnitt "Einstellungen" des Navigationsmenüs für Ihre Gerätebereitstellungsdienstinstanz aus, und wählen Sie die Registerkarte " Registrierungsgruppen " aus.

  5. Wählen Sie ihren Namen der Registrierungsgruppe aus der Liste aus.

  6. Wählen Sie im Abschnitt "X.509-Zertifikateinstellungen " Ihr neues Zertifikat der Stammzertifizierungsstelle aus, um das kompromittierte oder abgelaufene Zertifikat zu ersetzen oder als sekundäres Zertifikat hinzuzufügen.

    Screenshot der Auswahl eines neuen hochgeladenen Zertifikats für eine Registrierungsgruppe.

  7. Wählen Sie Speichern aus.

  8. Wenn Sie ein kompromittiertes Zertifikat aus dem Bereitstellungsdienst entfernt haben, kann das Zertifikat weiterhin verwendet werden, um Geräteverbindungen mit dem IoT-Hub herzustellen, solange dort Geräteregistrierungen vorhanden sind. Sie können dies auf zwei Arten behandeln:

    Die erste Möglichkeit wäre, manuell zu Ihrem IoT-Hub zu navigieren und sofort die Geräteregistrierungen zu entfernen, die dem kompromittierten Zertifikat zugeordnet sind. Wenn Ihre Geräte dann erneut mit aktualisierten Zertifikaten bereitgestellt werden, wird für jedes gerät eine neue Geräteregistrierung erstellt.

    Die zweite Möglichkeit ist die Verwendung der Unterstützung für die erneute Bereitstellung, um Ihre Geräte auf demselben IoT-Hub erneut bereitzustellen. Dieser Ansatz kann verwendet werden, um Zertifikate für Geräteregistrierungen im IoT-Hub zu ersetzen. Weitere Informationen finden Sie unter How to reprovision devices (Erneutes Bereitstellen von Geräten).

Aktualisieren von Zwischenzertifikaten

  1. Wählen Sie " Registrierungen verwalten " im Abschnitt "Einstellungen" des Navigationsmenüs für Ihre Gerätebereitstellungsdienstinstanz aus, und wählen Sie die Registerkarte " Registrierungsgruppen " aus.

  2. Wählen Sie den Gruppennamen aus der Liste aus.

  3. Aktivieren Sie die Kontrollkästchen "Primäres/sekundäres Zertifikat entfernen oder ersetzen ", wenn Sie ein vorhandenes Zertifikat löschen möchten. Wählen Sie das Dateiordnersymbol aus, um nach den neuen Zertifikaten zu suchen und hochzuladen.

    Wenn eines Ihrer Zertifikate kompromittiert wurde, sollten Sie sie so schnell wie möglich entfernen.

    Wenn sich eines Ihrer Zertifikate dem Ablauf nähert, können Sie es beibehalten, solange das zweite Zertifikat nach diesem Datum noch aktiv ist.

    Jedes Zwischenzertifikat sollte mit einem bereits dem Bereitstellungsdienst hinzugefügten und bestätigten Root-CA-Zertifikat signiert werden. Weitere Informationen finden Sie unter X.509-Zertifikatnachweis.

    Screenshot, der das Ersetzen eines Zwischenzertifikats für eine Einschreibungsgruppe zeigt.

  4. Wenn Sie ein kompromittiertes Zertifikat aus dem Bereitstellungsdienst entfernt haben, kann das Zertifikat weiterhin verwendet werden, um Geräteverbindungen mit dem IoT-Hub herzustellen, solange dort Geräteregistrierungen vorhanden sind. Sie können dies auf zwei Arten behandeln:

    Die erste Möglichkeit wäre, manuell zu Ihrem IoT-Hub zu navigieren und sofort die Geräteregistrierung zu entfernen, die mit dem kompromittierten Zertifikat verknüpft ist. Wenn Ihre Geräte dann erneut mit aktualisierten Zertifikaten bereitgestellt werden, wird für jedes gerät eine neue Geräteregistrierung erstellt.

    Die zweite Möglichkeit ist die Verwendung der Unterstützung für die erneute Bereitstellung, um Ihre Geräte auf demselben IoT-Hub erneut bereitzustellen. Dieser Ansatz kann verwendet werden, um Zertifikate für Geräteregistrierungen im IoT-Hub zu ersetzen. Weitere Informationen finden Sie unter How to reprovision devices (Erneutes Bereitstellen von Geräten).

Gerät neu bereitstellen

Nachdem das Zertifikat auf das Gerät und in Device Provisioning Service gerollt wurde, kann das Gerät sich selbst erneut bereitstellen, indem es eine Verbindung mit Device Provisioning Service herstellt.

Eine einfache Möglichkeit zum Programmieren von Geräten zur erneuten Bereitstellung besteht darin, dass Gerät so zu programmieren, dass es zum Durchführen des Bereitstellungsablaufs eine Verbindung mit Provisioning Service herstellt, wenn es beim Verbindungsversuch mit dem IoT Hub einen Fehler vom Typ „nicht autorisiert“ empfängt.

Eine weitere Möglichkeit besteht darin, dass sowohl die alten als auch die neuen Zertifikate für eine kurze Überlappung gültig sind, und den IoT-Hub verwenden, um einen Befehl an Geräte zu senden, um sie über den Bereitstellungsdienst neu zu registrieren, um ihre IoT Hub-Verbindungsinformationen zu aktualisieren. Da jedes Gerät Befehle anders verarbeiten kann, müssen Sie Ihr Gerät programmieren, um zu wissen, was sie tun müssen, wenn der Befehl aufgerufen wird. Es gibt verschiedene Möglichkeiten, ihr Gerät über IoT Hub zu befehlen, und wir empfehlen die Verwendung direkter Methoden oder Aufträge , um den Prozess zu initiieren.

Nachdem die erneute Bereitstellung abgeschlossen ist, können Geräte mit ihren neuen Zertifikaten eine Verbindung mit IoT Hub herstellen.

Zertifikate nicht zulassen

Als Reaktion auf eine Sicherheitsverletzung müssen Sie möglicherweise ein Gerätezertifikat nicht zulassen. Um ein Gerätezertifikat zu verbieten, deaktivieren Sie den Registrierungseintrag für das Zielgerät/das Zielzertifikat. Weitere Informationen finden Sie unter "Aufheben der Registrierung oder Widerrufen eines Geräts vom Azure IoT Hub Device Provisioning Service".

Sobald ein Zertifikat als Teil eines deaktivierten Registrierungseintrags enthalten ist, schlägt jeder Versuch, sich mit einem IoT-Hub mit diesem Zertifikat zu registrieren, fehl, auch wenn das Zertifikat als Teil eines anderen Registrierungseintrags aktiviert ist.

Nächste Schritte