Terminologi för IoT Hub Device Provisioning Service

IoT Hub Device Provisioning Service (DPS) är en hjälptjänst för IoT Hub som möjliggör zero-touch-enhetsetablering till IoT-hubbar. Med enhetsetableringstjänsten kan du etablera miljontals enheter på ett säkert och skalbart sätt.

Enhetsetablering är en process i två delar.

  1. Den första delen upprättar den första anslutningen mellan enheten och IoT-lösningen genom att registrera enheten.
  2. Den andra delen tillämpar rätt konfiguration på enheten baserat på de specifika kraven för lösningen.

När båda stegen har slutförts har enheten etablerats helt. Enhetsetableringstjänsten automatiserar båda stegen och ger sömlös etablering av enheten.

Den här artikeln ger en översikt över de etableringsbegrepp som gäller för hantering av tjänsten. Den här artikeln är mest relevant för personer som ingår i molnkonfigurationssteget för att förbereda en enhet för distribution.

Slutpunkt för tjänståtgärder

Slutpunkten för tjänståtgärder är slutpunkten för att hantera tjänstinställningarna och underhålla registreringslistan. Den här slutpunkten används endast av tjänstadministratören. Den används inte av enheter.

Slutpunkt för enhetsetablering

Slutpunkten för enhetsetablering är den enda slutpunkt som alla enheter använder för etablering. URL:en är densamma för alla etableringstjänstinstanser, vilket eliminerar behovet av att omvänt snedstrecka enheter med ny anslutningsinformation i leveranskedjescenarier. ID-omfånget säkerställer klientisolering.

Länkade IoT-hubbar

Device Provisioning Service kan bara etablera enheter till IoT-hubbar som har länkats till den. Om du länkar en IoT-hubb till en instans av Device Provisioning Service får tjänsten läs-/skrivbehörighet till IoT-hubbens enhetsregister. Med länken kan en enhetsetableringstjänst registrera ett enhets-ID och ange den första konfigurationen i enhetstvillingen. Länkade IoT-hubbar kan finnas i valfri Azure-region. Du kan länka hubbar i andra prenumerationer till din etableringstjänst.

Mer information finns i Länka och hantera IoT-hubbar

Fördelningspolicy

Allokeringsprincipen är en inställning på tjänstnivå som avgör hur Enhetsetableringstjänsten tilldelar enheter till en IoT-hubb. Det finns fyra allokeringsprinciper som stöds:

  • Jämnt viktad distribution: länkade IoT-hubbar är lika benägna att etablera enheter till dem. Standardinställningen. Om du bara etablerar enheter till en IoT-hubb kan du behålla den här inställningen.

  • Lägsta svarstid: Enheter etableras till en IoT-hubb med den lägsta svarstiden till enheten. Om flera länkade IoT-hubbar skulle ge samma lägsta svarstid, hashar etableringstjänsten enheter över dessa hubbar

  • Statisk konfiguration via registreringslistan: specifikationen av den önskade IoT-hubben i registreringslistan prioriteras framför allokeringsprincipen på tjänstnivå.

  • Anpassad (Använd Azure-funktion): En anpassad allokeringsprincip ger dig mer kontroll över hur enheter tilldelas till en IoT-hubb. Anpassade allokeringsprinciper använder en Azure-funktion för att tilldela enheter till en IoT-hubb. Enhetsetableringstjänsten anropar din Azure-funktionskod som ger all relevant information om enheten och registreringen till din kod. Funktionskoden körs och returnerar den IoT Hub-information som används för att etablera enheten. Mer information finns i Förstå anpassade allokeringsprinciper.

Mer information finns i Använda allokeringsprinciper.

Registrering

En registrering är en post för enheter eller grupper av enheter som kan registreras via automatisk avetablering. Registreringsposten innehåller information om enheten eller gruppen med enheter, inklusive:

  • Attesteringsmekanismen som används av enheten
  • Den valfria inledande önskade konfigurationen
  • Önskad IoT-hubb
  • Önskat enhets-ID

Det finns två typer av registreringar som stöds av Device Provisioning Service: registreringsgrupper och enskilda registreringar.

Registreringsgrupp

En registreringsgrupp är en grupp med enheter som delar en specifik attesteringsmekanism. Registreringsgrupper stöder X.509-certifikat eller symmetrisk nyckelattestering.

Namnet på registreringsgruppen och registrerings-ID:t som presenteras av enheter måste vara skiftlägesokänsliga strängar med alfanumeriska tecken plus specialtecken: - . _ :. Det sista tecknet måste vara alfanumeriskt eller streck (-). Namnet på registreringsgruppen kan vara upp till 128 tecken långt. I symmetriska nyckelregistreringsgrupper kan registrerings-ID:t som presenteras av enheter vara upp till 128 tecken långa. Men i X.509-registreringsgrupper är registrerings-ID:na begränsade till 64 tecken, eftersom den maximala längden på det gemensamma namnet i ett X.509-certifikat är 64 tecken.

Enheter i en X.509-registreringsgrupp presenterar X.509-certifikat som är signerade av samma rotcertifikatutfärdare eller mellanliggande certifikatutfärdare (CA). Ämnesnamnet (CN) för varje enhets slutentitetscertifikat (löv) blir registrerings-ID för den enheten. Enheter i en symmetrisk nyckelregistreringsgrupp presenterar SAS-token som härletts från gruppens symmetriska nyckel.

För enheter i en registreringsgrupp används även registrerings-ID:t som det enhets-ID som är registrerat på IoT Hub.

Dricks

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 alla går till samma klientorganisation.

Individuell registrering

En enskild registrering är en post för en enskild enhet som kan registreras. Enskilda registreringar kan använda antingen X.509-lövcertifikat eller SAS-token (från en fysisk eller virtuell TPM) som attesteringsmekanismer.

Registrerings-ID:t i en enskild registrering är en skiftlägeskänslig sträng med alfanumeriska tecken plus specialtecken: - . _ :. Det sista tecknet måste vara alfanumeriskt eller streck (-). DPS har stöd för registrerings-ID:er på upp till 128 tecken.

För enskilda X.509-registreringar måste certifikatets ämnesnamn (CN) matcha registrerings-ID:t, så det gemensamma namnet måste följa registrerings-ID-strängformatet. Ämnets gemensamma namn har en maximal längd på 64 tecken, så registrerings-ID:t är begränsat till 64 tecken för X.509-registreringar.

Enskilda registreringar kan ha önskat IoT Hub-enhets-ID som anges i registreringsposten. Om det inte anges blir registrerings-ID:t det enhets-ID som är registrerat på IoT Hub.

Dricks

Vi rekommenderar att du använder enskilda registreringar för enheter som kräver unika inledande konfigurationer eller för enheter som bara kan autentisera med SAS-token via TPM-attestering.

Attesteringsmekanism

En attesteringsmekanism är den metod som används för att bekräfta en enhets identitet. Attesteringsmekanismen konfigureras på en registreringspost och anger för etableringstjänsten vilken metod som ska användas när identiteten för en enhet verifieras under registreringen.

Kommentar

IoT Hub använder "autentiseringsschema" för ett liknande begrepp i den tjänsten.

Device Provisioning Service stöder följande former av attestering:

  • X.509-certifikat baserat på X.509-standardcertifikatautentiseringsflödet . Mer information finns i X.509-attestering.
  • Trusted Platform Module (TPM) baserat på en nonce-utmaning, med hjälp av TPM-standarden för nycklar för att presentera en signerad SAS-token (Signatur för delad åtkomst). Detta kräver inte en fysisk TPM på enheten, men tjänsten förväntar sig att intyga med hjälp av bekräftelsenyckeln enligt TPM-specifikationen. Mer information finns i TPM-attestering.
  • Symmetrisk nyckel baserad på SAS-sas-token (signatur för delad åtkomst), som innehåller en hash-signatur och en inbäddad förfallotid. Mer information finns i Symmetrisk nyckelattestering.

Modul för maskinvarusäkerhet

En maskinvarusäkerhetsmodul, eller HSM, används för säker, maskinvarubaserad lagring av enhetshemligheter och är den säkraste formen av hemlig lagring. Både X.509-certifikat och SAS-token kan lagras i en HSM.

Dricks

Vi rekommenderar starkt att du använder en HSM med enheter för att lagra hemligheter på dina enheter på ett säkert sätt.

Enhetshemligheter kan också lagras i programvara (minne), men det är en mindre säker form av lagring än en HSM.

ID-omfång

ID-omfånget tilldelas till en enhetsetableringstjänst när den skapas och används för att unikt identifiera den specifika etableringstjänsten. ID-omfånget genereras av tjänsten och är oföränderligt, vilket garanterar unikhet. Unikhet för ID-omfång är viktigt för långvariga distributionsåtgärder och fusions- och förvärvsscenarier.

Registreringspost

En registreringspost är posten för en enhet som registrerar/etablerar till en IoT Hub via device provisioning-tjänsten. Registreringsposter skapas automatiskt. de kan tas bort, men de kan inte uppdateras.

Registrerings-ID

Registrerings-ID:t används för att unikt identifiera en enhetsregistrering med Device Provisioning Service. Registrerings-ID:t måste vara unikt i etableringstjänstens ID-omfång. Varje enhet måste ha ett registrerings-ID. Registrerings-ID:t är en skiftlägeskänslig sträng med alfanumeriska tecken plus specialtecken: - . _ :. Det sista tecknet måste vara alfanumeriskt eller streck (-). DPS har stöd för registrerings-ID:er på upp till 128 tecken.

  • Med TPM-attestering tillhandahålls registrerings-ID:t av själva TPM.
  • Med X.509-baserad attestering anges registrerings-ID:t till enhetscertifikatets ämnesnamn (CN). Därför måste det gemensamma namnet följa registrerings-ID-strängformatet. Registrerings-ID:t är dock begränsat till 64 tecken eftersom det är den maximala längden på ämnets gemensamma namn i ett X.509-certifikat.

Enhets-ID

Enhets-ID:t är det ID som visas i IoT Hub. Det önskade enhets-ID:t kan anges i registreringsposten, men det krävs inte att det anges. Det går bara att ange önskat enhets-ID i enskilda registreringar. Om inget önskat enhets-ID anges i registreringslistan används registrerings-ID:t som enhets-ID när enheten registreras. Läs mer om enhets-ID:n i IoT Hub.

Operations

Åtgärder är faktureringsenheten för enhetsetableringstjänsten. En åtgärd är att slutföra en instruktion till tjänsten. Åtgärder kan omfatta enhetsregistreringar och omregistreringar samt ändringar på tjänstsidan som att lägga till och uppdatera poster i registreringslistan.