Självstudie: etablera enheten till en IoT-hubb med Azure-IoT Hub Device Provisioning ServiceTutorial: Provision the device to an IoT hub using the Azure IoT Hub Device Provisioning Service

I den förra självstudien lärde du dig att konfigurera en enhet för att ansluta till din enhetsetableringstjänst.In the previous tutorial, you learned how to set up a device to connect to your Device Provisioning service. I den här självstudien lär du dig att använda tjänsten för att etablera enheten till en enda IoT-hubb, med hjälp av automatisk etablering och registreringslistor.In this tutorial, you learn how to use this service to provision your device to a single IoT hub, using auto-provisioning and enrollment lists. I den här självstudiekursen lär du dig att:This tutorial shows you how to:

  • Registrera enhetenEnroll the device
  • Starta enhetenStart the device
  • Kontrollera att enheten är registreradVerify the device is registered

FörutsättningarPrerequisites

Innan du fortsätter måste du konfigurera din enhet enligt anvisningarna i självstudien Konfigurera en enhet för etablering med Azure IoT Hub Device Provisioning-tjänsten.Before you proceed, make sure to configure your device as discussed in the tutorial Setup a device to provision using Azure IoT Hub Device Provisioning Service.

Om du inte är bekant med processen för automatisk etablering, granskar du etablerings översikten innan du fortsätter.If you're unfamiliar with the process of auto-provisioning, review the provisioning overview before continuing.

Registrera enhetenEnroll the device

I det här steget ska du lägga till enhetens unika säkerhetsartefakter till enhetsetableringstjänsten.This step involves adding the device's unique security artifacts to the Device Provisioning Service. Säkerhetsartefakterna baseras på enhetens attesteringsmekanism enligt följande:These security artifacts are based on the device's Attestation mechanism as follows:

  • För TPM-baserade enheter behöver du:For TPM-based devices you need:

    • Bekräftelsenyckeln som är unik för varje TPM-krets eller -simulering, som hämtas från tillverkaren av TPM-kretsen.The Endorsement Key that is unique to each TPM chip or simulation, which is obtained from the TPM chip manufacturer. Läs Understand TPM Endorsement Key (Förstå TPM-bekräftelsenyckeln) för mer information.Read the Understand TPM Endorsement Key for more information.

    • Registrerings-ID:t som används för att unikt identifiera en enhet i namnrymden/omfattningen.The Registration ID that is used to uniquely identify a device in the namespace/scope. ID:t kanske eller kanske inte är samma som enhetens ID.This ID may or may not be the same as the device ID. ID:t är obligatoriskt för alla enheter.The ID is mandatory for every device. För TPM-baserade enheter kan registrerings-ID:t härledas från själv TPM, till exempel en SHA-256-hash för TPM-bekräftelsenyckeln.For TPM-based devices, the registration ID may be derived from the TPM itself, for example, an SHA-256 hash of the TPM Endorsement Key.

      Registrerings information för TPM i portalenEnrollment information for TPM in the portal

  • För X.509-baserade enheter behöver du:For X.509 based devices you need:

    • Certifikatet som utfärdats till X.509-kretsen eller -simuleringen, som antingen en .pem- eller .cer-fil.The certificate issued to the X.509 chip or simulation, in the form of either a .pem or a .cer file. För enskild registrering måste du använda det signerade certifikatet per enhet för ditt X. 509-system, och för registrerings grupper måste du använda rot certifikatet.For individual enrollment, you need to use the per-device signed certificate for your X.509 system, while for enrollment groups, you need to use the root certificate.

      Lägg till enskild registrering för X. 509-attestering i portalenAdd individual enrollment for X.509 attestation in the portal

Det finns två sätt att registrera enheten till enhetsetableringstjänsten:There are two ways to enroll the device to the Device Provisioning Service:

  • Registreringsgrupper Det här representerar en grupp med enheter som delar en specifik attesteringsmekanism.Enrollment Groups This represents a group of devices that share a specific attestation mechanism. Vi rekommenderar att du använder en registreringsgrupp för ett stort antal enheter som delar en önskad inledande konfiguration, eller för enheter som ska till samma klient.We recommend using an enrollment group for a large number of devices, which share a desired initial configuration, or for devices all going to the same tenant. Mer information om identitetsattestering för registreringsgrupper finns i Säkerhet.For more information on Identity attestation for enrollment groups, see Security.

    Lägg till grupp registrering för X. 509-attestering i portalenAdd group enrollment for X.509 attestation in the portal

  • Enskilda registreringar Detta representerar en inmatning för en enskild enhet som kan registreras med enhetsetableringstjänsten.Individual Enrollments This represents an entry for a single device that may register with the Device Provisioning Service. Enskilda registreringar kan använda antingen x509-certifikat eller SAS-token (i en verklig eller virtuell TPM) som attesteringsmekanismer.Individual enrollments may use either x509 certificates or SAS tokens (in a real or virtual TPM) as attestation mechanisms. Vi rekommenderar att du använder enskilda registreringar för enheter som kräver unika första konfigurationer och enheter som endast kan använda SAS-token via TPM eller virtuella TPM:er som attesteringsmekanism.We recommend using individual enrollments for devices that require unique initial configurations, and devices that can only use SAS tokens via TPM or virtual TPM as the attestation mechanism. Enskilda registreringar kan ha angivet önskat enhets-ID för IoT Hub.Individual enrollments may have the desired IoT hub device ID specified.

Nu registrerar du enheten med enhetsetableringstjänstens instans, med de säkerhetsartefakter som krävs baserat på enhetens attesteringsmekanism:Now you enroll the device with your Device Provisioning Service instance, using the required security artifacts based on the device's attestation mechanism:

  1. Logga in på Azure-portalen, klicka på knappen Alla resurser i den vänstra menyn och öppna Device Provisioning-tjänsten.Sign in to the Azure portal, click on the All resources button on the left-hand menu and open your Device Provisioning service.

  2. På sammanfattningsbladet för Device Provisioning-tjänsten väljer du Manage enrollments (Hantera registreringar).On the Device Provisioning Service summary blade, select Manage enrollments. Markera fliken Enskilda registreringar eller Registreringsgrupper enligt enhetskonfigurationen.Select either Individual Enrollments tab or the Enrollment Groups tab as per your device setup. Klicka på knappen Lägg till längst upp.Click the Add button at the top. Välj TPM eller X.509 som identitet för bestyrkande mekanism och ange lämpliga säkerhetsartefakter som diskuterades ovan.Select TPM or X.509 as the identity attestation Mechanism, and enter the appropriate security artifacts as discussed previously. Du kan ange ett nytt Enhets-ID för IoT Hub.You may enter a new IoT Hub device ID. Klicka på knappen Spara när det är klart.Once complete, click the Save button.

  3. När enheten har registrerats bör du se den i portalen på följande sätt:When the device is successfully enrolled, you should see it displayed in the portal as follows:

    Lyckad TPM-registrering i portalen

Efter registreringen väntar etableringstjänsten tills enheten har startats och ansluter till den vid en senare tidpunkt.After enrollment, the provisioning service then waits for the device to boot and connect with it at any later point in time. När enheten startar för första gången interagerar klient-SDK-biblioteket med din krets för att extrahera säkerhetsuppgifter från enheten och verifierar registreringen med enhetsetableringstjänsten.When your device boots for the first time, the client SDK library interacts with your chip to extract the security artifacts from the device, and verifies registration with your Device Provisioning service.

Starta IoT-enhetenStart the IoT device

IoT-enheten kan vara en riktig enhet eller en simulerad enhet.Your IoT device can be a real device, or a simulated device. Eftersom IoT-enheten nu har registrerats med en instans av enhetsetableringstjänsten kan enheten nu starta och anropa etableringstjänsten för att identifieras med hjälp av attesteringsmetoden.Since the IoT device has now been enrolled with a Device Provisioning Service instance, the device can now boot up, and call the provisioning service to be recognized using the attestation mechanism. När etableringstjänsten har identifierat enheten tilldelas den till en IoT-hubb.Once the provisioning service has recognized the device, it will be assigned to an IoT hub.

Exempel av simulerade enheter, med både TPM- och X.509-attestering, ingår för C, Java, C#, Node.js och Python.Simulated device examples, using both TPM and X.509 attestation, are included for C, Java, C#, Node.js, and Python. Till exempel skulle en simulerad enhet med TPM och Azure IoT C SDK följa den process som beskrivs i avsnittet om att simulera den första startsekvensen för en enhet.For example, a simulated device using TPM and the Azure IoT C SDK would follow the process covered in the Simulate first boot sequence for a device section. För samma enhet som använder X.509-certifikatattestering skulle det här avsnittet om startsekvens gälla.The same device using X.509 certificate attestation would refer to this boot sequence section.

Se instruktionsguiden för MXChip Iot DevKit för ett exempel på en riktig enhet.Refer to the How-to guide for the MXChip Iot DevKit as an example for a real device.

Starta enheten för att låta enhetens klientprogram starta registreringen med din enhetsetableringstjänst.Start the device to allow your device's client application to start the registration with your Device Provisioning service.

Kontrollera att enheten är registreradVerify the device is registered

När enheten startar ska följande åtgärder utföras:Once your device boots, the following actions should take place:

  1. Enheten skickar en registreringsbegäran till enhetsetableringstjänsten.The device sends a registration request to your Device Provisioning service.

  2. För TPM-enheten skickar enhetsetableringstjänsten tillbaka en registreringskontroll som enheten svarar på.For TPM devices, the Device Provisioning Service sends back a registration challenge to which your device responds.

  3. Om registringen har lyckats skickar enhetsetableringstjänsten tillbaka IoT-hubbens URI, enhets-ID och den krypterade nyckeln till enheten.On successful registration, the Device Provisioning Service sends the IoT hub URI, device ID, and the encrypted key back to the device.

  4. IoT Hub-klientprogrammet på enheten ansluter därefter till hubben.The IoT Hub client application on the device then connects to your hub.

  5. Om anslutningen till hubben lyckas bör enheten visas i IoT-hubbens utforskare för IoT-enheter.On successful connection to the hub, you should see the device appear in the IoT hub's IoT Devices explorer.

    Lyckad anslutning till hubben i portalen

Mer information finns i exemplet med etablering av enhetsklient, prov_dev_client_sample.c.For more information, see the provisioning device client sample, prov_dev_client_sample.c. Exemplet demonstrerar etablering av en simulerad enhet med hjälp av TPM, X.509-certifikat och symmetriska nycklar.The sample demonstrates provisioning a simulated device using TPM, X.509 certificates and symmetric keys. Stegvisa instruktioner om hur du använder exemplet finns i snabbstarterna om attestering med TPM, X.509 och symmetrisk nyckel.Refer back to the TPM, X.509, and Symmetric key attestation quickstarts for step-by-step instructions on using the sample.

Nästa stegNext steps

I den här självstudiekursen lärde du dig att:In this tutorial, you learned how to:

  • Registrera enhetenEnroll the device
  • Starta enhetenStart the device
  • Kontrollera att enheten är registreradVerify the device is registered

Gå vidare till nästa självstudie för att lära dig hur du etablerar flera enheter över belastningsutjämnade hubbarAdvance to the next tutorial to learn how to provision multiple devices across load-balanced hubs