Připojení ke službě Azure IoT Central

Tento článek popisuje, jak se zařízení připojují k Azure IoT Central aplikaci. Aby si zařízení mohl vyměňovat data s IoT Central, musí:

  • Ověřte. Ověřování pomocí IoT Central používá token sdíleného přístupového podpisu (SAS) nebo certifikát X.509. Certifikáty X.509 se doporučují v produkčních prostředích.
  • Zaregistrujte. Zařízení musí být zaregistrovaná ve IoT Central aplikaci. Zaregistrovaná zařízení můžete zobrazit na stránce Zařízení v aplikaci.
  • Přidružit k šabloně zařízení. V aplikaci IoT Central šablony zařízení definují uživatelské rozhraní, které operátoři používají k zobrazení a správě připojených zařízení.

IoT Central podporuje následující dva scénáře registrace zařízení:

  • Automatická registrace. Zařízení se při prvním připojení automaticky zaregistruje. Tento scénář umožňuje výrobce OEM sériově vyrábí zařízení, která se mohou připojit bez předchozí registrace. Výrobce OEM vygeneruje vhodné přihlašovací údaje zařízení a nakonfiguruje zařízení v továrně. Volitelně můžete vyžadovat, aby operátor schválil zařízení před tím, než začne odesílat data. V tomto scénáři musíte ve své aplikaci nakonfigurovat registraci skupiny X.509 nebo SAS.
  • Ruční registrace. Operátoři buď zaregistrují jednotlivá zařízení na stránce Zařízení, nebo importuje soubor CSV pro hromadnou registraci zařízení. V tomto scénáři můžete použít registraci skupiny X.509 nebo SAS nebo jednotlivou registraci X.509 nebo SAS.

Zařízení, která se IoT Central, by měla dodržovat IoT Plug and Play konvence. Jednou z těchto konvencí je, že zařízení by mělo odeslat ID modelu, který implementuje při připojování. ID modelu umožňuje aplikaci IoT Central přidružit zařízení ke správné šabloně zařízení.

IoT Central procesu připojení Azure IoT Hub používá službu DPS (Device Provisioning Service). Zařízení se nejprve připojí ke koncovému bodu DPS, aby získalo informace potřebné pro připojení k vaší aplikaci. Interně vaše IoT Central používá centrum IoT ke zpracování připojení zařízení. Použití SLUŽBY DPS umožňuje:

  • IoT Central podporu připojování a připojování zařízení ve velkém měřítku.
  • Můžete generovat přihlašovací údaje zařízení a nakonfigurovat zařízení offline bez registrace zařízení prostřednictvím IoT Central uživatelského rozhraní.
  • Vlastní ID zařízení můžete použít k registraci zařízení v IoT Central. Použití vlastních ID zařízení zjednodušuje integraci se stávajícími systémy back-office.
  • Jeden konzistentní způsob připojení zařízení k IoT Central.

Tento článek popisuje následující kroky připojení zařízení:

Skupinová registrace X.509

V produkčním prostředí je doporučeným mechanismem ověřování zařízení pro ověřování zařízení pro IoT Central. Další informace najdete v tématu Ověřování zařízení pomocí certifikátů certifikační autority X.509.

Připojení zařízení pomocí certifikátu X.509 k aplikaci:

  1. Vytvořte skupinu registrací, která používá typ ověření certifikátem (X.509).
  2. Přidejte a ověřte zprostředkující nebo kořenový certifikát X.509 ve skupině registrací.
  3. Vygenerování listového (koncového) certifikátu z kořenového nebo zprostředkujícího certifikátu ve skupině registrací Po připojení k aplikaci odešlete ze zařízení listový (listový) certifikát.

Další informace najdete v tématu Připojení zařízení pomocí certifikátů X.509.

Pouze pro účely testování

K vygenerování kořenových, zprostředkujících certifikátů a certifikátů zařízení můžete použít následující nástroje:

Registrace skupiny SAS

Připojení zařízení s klíčem SAS zařízení k aplikaci:

  1. Vytvořte skupinu registrací, která používá typ ověření sdíleného přístupového podpisu (SAS).

  2. Zkopírujte primární nebo sekundární klíč skupiny ze skupiny registrací.

  3. Pomocí Azure CLI vygenerování klíče zařízení z klíče skupiny:

    az iot central device compute-device-key --primary-key <enrollment group primary key> --device-id <device ID>
    
  4. Vygenerovaný klíč zařízení použijte, když se zařízení připojí k vaší IoT Central aplikace.

Poznámka

Pokud chcete ve skupinách registrací použít existující klíče SAS, zakažte přepínač Automaticky generovat klíče a zadejte je.

Jednotlivá registrace

Zákazníci, kteří připojují zařízení, která mají vlastní přihlašovací údaje pro ověřování, používají jednotlivé registrace. Jednotlivá registrace je položka pro jedno zařízení, které se může připojit. Jednotlivé registrace mohou jako mechanismy ověřování používat buď listové certifikáty X.509, nebo tokeny SAS (z fyzického nebo virtuálního důvěryhodného modulu platformy). ID zařízení může obsahovat písmena, číslice a - znak. Další informace najdete v tématu Jednotlivá registrace DPS.

Poznámka

Když vytvoříte jednotlivou registraci zařízení, bude mít přednost před výchozími možnostmi skupinové registrace ve vaší IoT Central aplikaci.

Vytvoření jednotlivých registrací

IoT Central podporuje následující mechanismy ověřování pro jednotlivé registrace:

  • Ověření symetrického klíče: Ověření symetrického klíče je jednoduchý přístup k ověřování zařízení v instanci DPS. Pokud chcete vytvořit jednotlivou registraci, která používá symetrické klíče, otevřete stránku Připojení zařízení pro zařízení, jako metodu připojení vyberte Jednotlivá registrace a jako mechanismus sdílený přístupový podpis (SAS). Zadejte primární a sekundární klíče s kódováním base64 a uložte provedené změny. K připojení zařízení použijte rozsah ID , ID zařízení a primární nebo sekundární klíč.

    Tip

    Pro účely testování můžete ke generování klíčů s kódováním Base64 použít OpenSSL:openssl rand -base64 64

  • Certifikáty X.509: Pokud chcete vytvořit jednotlivou registraci pomocí certifikátů X.509, otevřete stránku Připojení zařízení, jako metodu připojení vyberte Jednotlivá registrace a jako mechanismus vyberte Certifikáty (X.509). Certifikáty zařízení použité s jednotlivými položkami registrace mají požadavek, aby vystavitel a předmět cn byly nastavené na ID zařízení.

    Tip

    K vygenerování certifikátu podepsaného svým držitelem můžete pro účely testování použít nástroje pro sadu SDK azure IoT Device Provisioning pro Node.js zařízení: node create_test_cert.js device "mytestdevice"

  • specifikace TPM (Trusted Platform Module) (TPM): TPM je typ modulu hardwarového zabezpečení. Použití čipu TPM je jedním z nejbezpečnějších způsobů připojení zařízení. Tento článek předpokládá, že používáte diskrétní, firmware nebo integrovaný čip TPM. Simulované čipy TPM jsou vhodné pro vytváření prototypů nebo testování, ale neposkytují stejnou úroveň zabezpečení jako diskrétní, firmware nebo integrované čipy TPM. Nepoužívejte softwarové čipy TPM v produkčním prostředí. Pokud chcete vytvořit jednotlivou registraci, která používá čip TPM, otevřete stránku Připojení zařízení, jako metodu připojení vyberte Jednotlivá registrace a jako mechanismus vyberte TPM. Zadejte ověřovací klíč TPM a uložte informace o připojení zařízení.

Registrace zařízení

Než se zařízení může připojit k IoT Central aplikaci, musí být zaregistrované v aplikaci:

  • Zařízení se mohou při prvním připojení automaticky zaregistrovat. Pokud chcete použít tuto možnost, musíte použít skupinovou registraci X.509 nebo skupinovou registraci SAS.
  • Operátor může importovat soubor CSV a hromadně zaregistrovat seznam zařízení v aplikaci.
  • Operátor může ručně zaregistrovat jednotlivá zařízení na stránce Zařízení v aplikaci.

IoT Central umožňuje výrobci OEM hromadně vyrábí zařízení, která se mohou zaregistrovat automaticky. Výrobce OEM vygeneruje vhodné přihlašovací údaje zařízení a nakonfiguruje zařízení v továrně. Když zákazník zařízení poprvé zapne, připojí se ke službě DPS, která pak automaticky připojí zařízení ke správné IoT Central aplikace. Volitelně můžete vyžadovat, aby operátor schválil zařízení před tím, než začne odesílat data do aplikace.

Tip

Na stránce Připojení > zařízení určuje možnost Automaticky schválit, jestli musí operátor zařízení před zahájením odesílání dat ručně schválit.

Automatická registrace zařízení, která používají certifikáty X. 509

  1. Vygenerujte list – certifikáty pro vaše zařízení pomocí kořenového nebo zprostředkujícího certifikátu, který jste přidali do vaší skupiny pro registraci X. 509. Použijte ID zařízení jako CNAME v listových certifikátech. ID zařízení může obsahovat písmena, číslice a - znak.

  2. Jako výrobce OEM, zablikají každé zařízení s ID zařízení, vygenerovaným listem X. 509 list-Certificate a hodnotou oboru ID aplikace. Kód zařízení by měl také odeslat ID modelu modelu zařízení, který implementuje.

  3. Když přepnete zařízení, nejprve se připojí k DPS, aby se načetly informace o IoT Central připojení.

  4. Zařízení používá informace z DPS k připojení a registraci v aplikaci IoT Central.

IoT Central aplikace používá ID modelu odesílané zařízením k přidružení registrovaného zařízení k šabloně zařízení.

Automaticky registrovat zařízení, která používají tokeny SAS

  1. Zkopírujte primární klíč skupiny ze skupiny pro zápis SAS-IoT-Device :

    Skupinový primární klíč ze skupiny SAS-IoT-Devices skupina pro registraci

  2. Pomocí az iot central device compute-device-key příkazu vygenerujte klíče SAS zařízení. Použijte primární klíč skupiny z předchozího kroku. ID zařízení může obsahovat písmena, číslice a - znak:

    az iot central device compute-device-key --primary-key <enrollment group primary key> --device-id <device ID>
    
  3. Jako výrobce OEM, zablikají každé zařízení s ID zařízení, vygenerovanou klíč SAS zařízení a hodnotou rozsahu ID aplikace. Kód zařízení by měl také odeslat ID modelu modelu zařízení, který implementuje.

  4. Když přepnete zařízení do zařízení, nejprve se připojí k DPS, aby se načetly informace o registraci IoT Central.

  5. Zařízení používá informace z DPS k připojení a registraci v aplikaci IoT Central.

IoT Central aplikace používá ID modelu odesílané zařízením k přidružení registrovaného zařízení k šabloně zařízení.

Předem hromadně registrovat zařízení

Pokud chcete v aplikaci IoT Central zaregistrovat velký počet zařízení, použijte k importu ID zařízení a názvů zařízenísoubor CSV.

Pokud vaše zařízení k ověřování používají tokeny SAS, exportujte soubor CSV z aplikace IoT Central. Exportovaný soubor CSV obsahuje ID zařízení a klíče SAS.

Pokud vaše zařízení používají k ověřování certifikáty X. 509, vygenerujte na svých zařízeních hlavní certifikát X. 509 a pomocí kořenového nebo zprostředkujícího certifikátu, který jste nahráli do vaší skupiny pro registraci X. 509. Použijte ID zařízení, která jste importovali jako CNAME hodnotu v listových certifikátech.

Zařízení musí pro svou aplikaci používat hodnotu rozsahu ID a při připojování odesílat ID modelu.

Tip

Hodnotu Rozsah ID můžete najít v části Správa > připojení zařízení.

Předem Zaregistrujte jedno zařízení.

Tento přístup je užitečný při experimentování s IoT Central nebo testováním zařízení. Vyberte + Nová na stránce zařízení a zaregistrujte jednotlivá zařízení. K připojení zařízení k aplikaci IoT Central můžete použít klíče SAS pro připojení zařízení. Zkopírujte klíč SAS zařízení z informací o připojení pro registrované zařízení:

Klíče SAS pro jednotlivá zařízení

Přidružení zařízení k šabloně zařízení

IoT Central automaticky přidružuje zařízení k šabloně zařízení, když se zařízení připojí. Zařízení pošle ID modelu při připojení. IoT Central používá ID modelu k identifikaci šablony zařízení pro konkrétní model zařízení. Proces zjišťování funguje takto:

  1. Pokud je šablona zařízení již publikována v aplikaci IoT Central, je zařízení přidruženo k šabloně zařízení.
  2. Pokud už šablona zařízení není v aplikaci IoT Central publikovaná, IoT Central v úložišti veřejného modeluvyhledá model zařízení. Pokud IoT Central najde model, použije ho k vygenerování základní šablony zařízení.
  3. Pokud IoT Central nenajde model v úložišti veřejného modelu, zařízení se označí jako Nepřidruženo. Operátor může buď vytvořit šablonu zařízení pro zařízení a pak migrovat nepřidružené zařízení do nové šablony zařízení, nebo vygenerovat šablonu zařízení na základě dat, která zařízení odesílá.

Následující snímek obrazovky ukazuje, jak zobrazit ID modelu šablony zařízení v IoT Central. V šabloně zařízení vyberte součást a pak vyberte Upravit identitu:

Snímek obrazovky znázorňující ID modelu v šabloně zařízení termostata

Model termostatu můžete zobrazit v úložišti veřejného modelu. Definice ID modelu vypadá takto:

"@id": "dtmi:com:example:Thermostat;1"

K přidružení zařízení k šabloně zařízení použijte následující datovou část DPS:

{
  "modelId":"dtmi:com:example:TemperatureController;2"
}

Další informace o datové části DPS najdete v ukázkovém kódu použitém v tomto kurzu: vytvoření a připojení klientské aplikace k aplikaci Azure IoT Central.

Hodnoty stavu zařízení

Když se reálné zařízení připojí k vaší aplikaci IoT Central, změní se stav zařízení takto:

  1. Stav zařízení se zaregistruje jako první. Tento stav znamená, že se zařízení vytvoří v IoT Central a má ID zařízení. Zařízení je zaregistrováno v těchto případech:

    • Na stránce zařízení se přidá nové reálné zařízení.
    • Na stránce zařízení se přidá sada zařízení pomocí importu .
  2. Stav zařízení se změní na zřízený , když se zařízení, které je připojené k vaší aplikaci IoT Central s platnými přihlašovacími údaji, dokončí krok zřizování. V tomto kroku zařízení používá DPS k automatickému načítání připojovacího řetězce z IoT Hub používaného vaší aplikací IoT Central. Zařízení se teď může připojit k IoT Central a začít odesílat data.

  3. Operátor může blokovat zařízení. Když je zařízení blokované, nemůže odesílat data do vaší aplikace IoT Central. Blokovaná zařízení mají stav blokováno. Předtím, než bude moct pokračovat v odesílání dat, musí operátor resetovat zařízení. Když operátor odblokuje zařízení, stav se vrátí do předchozí hodnoty, zaregistrováno nebo zřízeno.

  4. Pokud stav zařízení čeká na schválení, znamená to, že je možnost automatického schvalování zakázaná. Operátor musí explicitně schválit zařízení před tím, než začne zasílat data. Zařízení, která nejsou zaregistrovaná ručně na stránce zařízení , ale jsou připojená s platnými přihlašovacími údaji, budou mít stav zařízení čekající na schválení. Operátoři můžou tato zařízení schválit ze stránky zařízení pomocí tlačítka schválit .

  5. Pokud je stav zařízení Nepřidruženo, znamená to, že zařízení připojující se k IoT Central nemá přidruženou šablonu zařízení. K této situaci obvykle dochází v následujících situacích:

    • Sada zařízení se přidá na stránce zařízení pomocí importu bez zadání šablony zařízení.
    • Zařízení se zaregistrovalo ručně na stránce zařízení bez zadání šablony zařízení. Zařízení se pak připojí s platnými přihlašovacími údaji.

    Operátor může přidružit zařízení k šabloně zařízení ze stránky zařízení pomocí tlačítka migrovat .

Stav připojení zařízení

Když se zařízení nebo hraniční zařízení připojí pomocí protokolu MQTT, vygenerují se připojené a odpojené události pro dané zařízení. Tyto události se zařízením neodesílají, jsou vygenerované interně pomocí IoT Central.

Následující diagram znázorňuje, jak se při připojení zařízení zaregistruje připojení na konci časového intervalu. Pokud dojde k více událostem připojení a odpojení, IoT Central zaregistruje tu, která je nejblíže konci časového intervalu. Pokud se třeba zařízení v časovém intervalu odpojí a znovu připojí, IoT Central zaregistruje událost připojení. V současné době je časový interval přibližně jedna minuta.

Diagram, který zobrazuje okno události pro připojené a odpojené události.

Podívejte se na následující video a zjistěte, jak monitorovat stav připojení zařízení:

Události připojení a odpojení můžete zahrnout do exportu z IoT Central. další informace najdete v tématu React IoT Hub události > omezení pro události připojené k zařízení a odpojené zařízení.

Podpora SDK

Sady SDK pro zařízení Azure nabízí nejjednodušší způsob implementace kódu zařízení. K dispozici jsou následující sady SDK pro zařízení:

Funkce sady SDK a připojení IoT Hub

Všechna komunikace zařízení s IoT Hub používá následující možnosti připojení IoT Hub:

Následující tabulka shrnuje, jak se funkce IoT Central zařízení Azure namapují k funkcím IoT Hub:

Azure IoT Central Azure IoT Hub
Telemetrie Zasílání zpráv ze zařízení do cloudu
Offline příkazy Zasílání zpráv z cloudu na zařízení
Vlastnost Nedokončené hlášené vlastnosti zařízení
Vlastnost (zapisovatelné) Požadované a hlášené vlastnosti vlákna zařízení
Příkaz Přímé metody

Protokoly

Sady SDK pro zařízení podporují následující síťové protokoly pro připojení ke službě IoT Hub:

  • MQTT
  • AMQP
  • HTTPS

Informace o těchto rozdílových protokolech a doprovodnéch materiálech k výběru jednoho najdete v tématu Volba komunikačního protokolu.

Pokud zařízení nemůže používat žádné z podporovaných protokolů, použijte k převodu protokolu Azure IoT Edge. IoT Edge podporuje další inteligentní scénáře pro přesměrování zpracování z aplikace Azure IoT Central.

Zabezpečení

Všechna data vyměňované mezi zařízeními a vaším IoT Central Azure jsou šifrovaná. IoT Hub ověří všechny požadavky ze zařízení, které se připojuje k jakémukoli koncovému bodu IoT Hub pro zařízení. Aby se zabránilo výměně přihlašovacích údajů po kabelech, zařízení používá k ověření podepsané tokeny. Další informace najdete v tématu řízení přístupu k IoT Hub.

Další kroky

Některé z navrhovaných dalších kroků: