Übung: Aufheben der Gruppenregistrierung

Abgeschlossen

In dieser Übung heben Sie vollständige Registrierungsgruppe auf, einschließlich der Registrierung von Device Provisioning Service (DPS) und der Registrierung der Geräte aus IoT Hub.

Aufgabe 1: Aufheben der Registrierungsgruppe von DPS

In dieser Aufgabe heben Sie die Registrierungsgruppe von DPS auf, wodurch die registrierten Geräte deaktiviert werden. Wenn Sie die Registrierung der Geräte vorübergehend aufheben möchten, können Sie die Registrierungsgruppe deaktivieren. Löschen Sie für eine dauerhafte Aufhebung der Registrierung die Registrierungsgruppe.

  1. Deaktivieren oder löschen Sie Ihre Registrierungsgruppe in der Azure-Sandbox.

    Deaktivieren:

    az iot dps enrollment-group update --dps-name dps-$suffix --enrollment-id enrollgroup-sensors --provisioning-status disabled
    

    Delete (Löschen):

    az iot dps enrollment-group delete --dps-name dps-$suffix --enrollment-id enrollgroup-sensors
    

Wenn Sie das simulierte Gerät „sensor-thl-001“ jetzt ausführen, wird eine Fehlermeldung angezeigt, die mit der deaktivierten individuellen Registrierung vergleichbar ist.

Hinweis

Wenn Sie eine Registrierungsgruppe für ein Zertifikat löschen, können Geräte, die dieses Zertifikat in der Zertifikatkette enthalten, weiterhin registriert werden – vorausgesetzt eine andere, aktivierte Registrierungsgruppe für das Stammzertifikat oder ein anderes Zwischenzertifikat ist weiter oben in der Zertifikatkette vorhanden.

Aufgabe 2: Aufheben der Registrierung der Geräte von IoT Hub

Wenn die Registrierungsgruppe aus dem Device Provisioning Service-Dienst (DPS) entfernt wurde, ist die Geräteregistrierung weiterhin in Azure IoT Hub vorhanden. Um die Registrierung der Geräte vollständig aufzuheben, müssen Sie diese Registrierung ebenfalls entfernen.

  1. Löschen Sie in der Azure-Sandbox das Gerät aus Ihrer IoT Hub-Geräteregistrierung.

    az iot hub device-identity delete --hub-name hub-$suffix --device-id sensor-thl-001
    

Aufgabe 3: Vergewissern, dass die Bereitstellung Ihrer Geräte aufgehoben wurde

Wenn die Gruppenregistrierung aus dem DPS-Dienst gelöscht wurde und das Gerät aus der Azure IoT Hub-Geräteregistrierung gelöscht wurde, werden die Geräte vollständig aus der Lösung entfernt.

  1. Wechseln Sie zum Visual Studio Code-Fenster, das Ihr „sensor-thl-001-device“-Codeprojekt enthält.

  2. Führen Sie die simulierte Geräte-App aus, und geben Sie den folgenden Befehl ein:

    dotnet run
    
  3. Beachten Sie die Ausnahmen, die beim Bereitstellen des Geräts aufgeführt werden.

    Nachdem die Gruppenregistrierung und das registrierte Gerät gelöscht wurden, kann das simulierte Gerät nicht mehr bereitstellen oder eine Verbindung herstellen. Wenn die Anwendung versucht, das konfigurierte X.509-Zertifikat für die Verbindung mit DPS zu verwenden, wird eine ProvisioningTransportException-Fehlermeldung zurückgegeben.

    Found certificate: AFF851ED016CA5AEB71E5749BCBE3415F8CF4F37 CN=sensor-thl-001; PrivateKey: True
    Using certificate AFF851ED016CA5AEB71E5749BCBE3415F8CF4F37 CN=sensor-thl-001
    RegistrationID = sensor-thl-001
    ProvisioningClient RegisterAsync . . . Unhandled exception. Microsoft.Azure.Devices.Provisioning.Client.ProvisioningTransportException: {"errorCode":401002,"trackingId":"df969401-c766-49a4-bab7-e769cd3cb585","message":"Unauthorized","timestampUtc":"2019-12-20T21:30:46.6730046Z"}
       at Microsoft.Azure.Devices.Provisioning.Client.Transport.ProvisioningTransportHandlerAmqp.ValidateOutcome(Outcome outcome)
       at Microsoft.Azure.Devices.Provisioning.Client.Transport.ProvisioningTransportHandlerAmqp.RegisterDeviceAsync(AmqpClientConnection client, String correlationId, DeviceRegistration deviceRegistration)
       at Microsoft.Azure.Devices.Provisioning.Client.Transport.ProvisioningTransportHandlerAmqp.RegisterAsync(ProvisioningTransportRegisterMessage message, CancellationToken cancellationToken)
    

Sie haben die Registrierung, Konfiguration und die Aufhebung der Bereitstellung im Rahmen des IoT-Gerätelebenszyklus mit dem DPS-Dienst abgeschlossen.

Überprüfen Ihrer Arbeit

  1. Überprüfen Sie, ob die Registrierungsgruppe deaktiviert oder aus DPS gelöscht wurde.

    az iot dps enrollment-group show --dps-name dps-$suffix --enrollment-id enrollgroup-sensors
    

    Wenn die Registrierungsgruppe deaktiviert ist, sollte die Befehlsausgabe anzeigen, dass provisioningStatus deaktiviert ist.

    "provisioningStatus": "disabled"
    

    Wenn die Registrierungsgruppe gelöscht wird, sollte eine Meldung angezeigt werden, die der folgenden ähnelt.

    {'code': 404204, 'message': 'Not Found.', 'trackingId': '3a1badb5-c1db-4dff-a001-69a5e6e252f4'}
    
  2. Stellen Sie sicher, dass die Registrierung von „device sensor-thl-001“ im IoT-Hub aufgehoben (gelöscht) wurde.

    az iot hub device-identity show --hub-name hub-$suffix --device-id sensor-thl-001
    

    Es sollte eine DeviceNotFound-Fehlermeldung ähnlich der folgenden angezeigt werden:

     {'Message': 'ErrorCode:DeviceNotFound;sensor-thl-001', 'ExceptionMessage': 'Tracking ID:06e0221675514160850421f0b3b787a9-G:0-TimeStamp:10/24/2023 16:57:00'}