Sdílet prostřednictvím


Podpora služby Azure IoT Hub Device Provisioning Service (DPS) pro virtuální sítě

Tento článek představuje model připojení virtuální sítě pro provisioning zařízení IoT pomocí IoT centra a DPS. Tento model poskytuje privátní připojení mezi zařízeními, DPS a centrem IoT v rámci virtuální sítě Azure vlastněné zákazníkem.

Ve většině scénářů, ve kterých je služba DPS nakonfigurovaná s virtuální sítí, je centrum IoT také nakonfigurované ve stejné virtuální síti. Další informace o podpoře a konfiguraci virtuálních sítí pro centra IoT najdete v tématu Podpora služby IoT Hub pro virtuální sítě pomocí služby Azure Private Link.

Úvod

Ve výchozím nastavení se názvy hostitelů DPS mapují na veřejný koncový bod s veřejně směrovatelnou IP adresou přes internet. Tento veřejný koncový bod je viditelný pro všechny zákazníky. Zařízení IoT v širokopásmových a lokálních sítích mohou se pokusit o přístup k veřejnému koncovému bodu.

Zákazníci můžou z několika důvodů chtít omezit připojení k prostředkům Azure, jako je DPS. Mezi tyto důvody patří:

  • Zabránit odhalení připojení na veřejném internetu. Vystavení je možné snížit zavedením více vrstev zabezpečení prostřednictvím izolace na úrovni sítě pro vaše prostředky IoT Hubu a DPS.

  • Povolení privátního připojení z místních síťových prostředků zajišťuje, aby se vaše data a provoz přenášely přímo do páteřní sítě Azure.

  • Prevence útoků exfiltrace z citlivých místních sítí

  • Podle zavedených vzorců připojení v celé Azure s využitím privátních koncových bodů.

Mezi běžné přístupy k omezení připojení patří pravidla filtru IP adres DPS a virtuální sítě s privátními koncovými body. Cílem tohoto článku je popsat přístup k virtuálním sítím pro službu DPS pomocí privátních koncových bodů.

Zařízení, která pracují v místních sítích, můžou používat virtuální privátní síť (VPN) nebo privátní partnerský vztah ExpressRoute k připojení k virtuální síti v Azure a přístup k prostředkům DPS prostřednictvím privátních koncových bodů.

Privátní koncový bod je privátní IP adresa přidělená uvnitř virtuální sítě vlastněné zákazníkem, pomocí které je prostředek Azure přístupný. Pokud máte privátní koncový bod pro váš prostředek DPS, můžete zařízením v rámci vaší virtuální sítě povolit, aby mohly požádat o nasazení prostředkem DPS, aniž byste povolili provoz do veřejného koncového bodu. Každý prostředek DPS může podporovat více privátních koncových bodů, z nichž každý se může nacházet ve virtuální síti v jiné oblasti.

Požadavky

Než budete pokračovat, ujistěte se, že jsou splněny následující požadavky:

Omezení privátních koncových bodů

Při používání privátních koncových bodů si všimněte následujících aktuálních omezení služby DPS:

  • Privátní koncové body nefungují, když se prostředek DPS a propojené centrum IoT nacházejí v různých cloudech. Například Azure Government a globální Azure.

  • Privátní koncové body v DPS používají Azure Private Link, které se podporují jenom ve veřejných oblastech. Další informace najdete v tématu Dostupnost služby Azure Private Link.

  • Vlastní zásady přidělování založené na službě Azure Functions pro DPS v současné době nefungují, když je služba Azure omezena pouze na virtuální sítě a privátní koncové body.

  • Aktuální podpora virtuální sítě DPS je určená pouze pro příchozí přenos dat do DPS. Výchozí přenos dat, což je přenos z DPS do IoT Hubu, používá interní mechanismus mezi službami místo vyhrazené virtuální sítě. Podpora úplného uzamčení výchozího přenosu dat založeného na virtuální síti mezi DPS a IoT Hubem není aktuálně dostupná.

  • Zásady přidělení nejnižší latence se používají k přiřazení zařízení do centra IoT s nejnižší latencí. Tato zásada přidělování není v prostředí virtuální sítě spolehlivá.

  • Povolení jednoho nebo několika privátních koncových bodů obvykle zahrnuje zakázání veřejného přístupu k vaší instanci DPS. Jakmile je veřejný přístup zakázaný, nebudete už moct spravovat registrace pomocí webu Azure Portal. Místo toho můžete spravovat registrace pomocí rozhraní příkazového řádku Azure CLI, PowerShellu nebo rozhraní API služby z počítačů uvnitř jedné nebo více virtuálních sítí nebo privátních koncových bodů nakonfigurovaných v instanci DPS.

  • Při použití privátních koncových bodů doporučujeme nasadit DPS v jedné z oblastí, které podporují zóny dostupnosti. Jinak mohou mít instance DPS s povolenými privátními koncovými body během výpadků sníženou dostupnost.

Poznámka:

Zvážení ohledně rezidence dat:

DPS poskytuje globální koncový bod zařízení (global.azure-devices-provisioning.net). Při použití globálního koncového bodu se ale vaše data můžou přesměrovat mimo oblast, ve které byla instance DPS původně vytvořena. K zajištění rezidence dat v rámci počáteční oblasti DPS použijte privátní koncové body.

Nastavení privátního koncového bodu

Pokud chcete nastavit privátní koncový bod, postupujte takto:

  1. Na webu Azure Portal přejděte k prostředku DPS.

  2. V nabídce služby v části Nastavení vyberte kartu Sítě .

  3. V pracovním podokně vyberte kartu Privátní přístup a pak vyberte + Vytvořit privátní koncový bod.

    Snímek obrazovky znázorňující přidání nového privátního koncového bodu pro instanci DPS na webu Azure Portal

  4. Na kartě Základy na stránce Vytvořit privátní koncový bod zadejte informace uvedené v následující tabulce.

    Snímek obrazovky znázorňující kartu Základy na stránce Vytvořit privátní koncový bod

    (No improvements necessary, the translation is already optimal.) Hodnota
    Předplatné Zvolte požadované předplatné Azure, které bude obsahovat privátní koncový bod.
    skupina prostředků Zvolte nebo vytvořte skupinu prostředků, která bude obsahovat privátní koncový bod.
    název Zadejte název privátního koncového bodu.
    Název síťového rozhraní V případě potřeby zadejte název síťového rozhraní vašeho privátního koncového bodu.
    Oblast Zvolte oblast privátního koncového bodu. Vybraná oblast musí být stejná jako oblast, která obsahuje virtuální síť, ale nemusí být stejná jako prostředek DPS.

    Vyberte Další: Prostředek a nakonfigurujte prostředek, na který privátní koncový bod odkazuje.

  5. Na kartě Prostředek na stránce Vytvořit privátní koncový bod zadejte informace uvedené v následující tabulce.

    Snímek obrazovky znázorňující záložku Prostředky na stránce vytvoření privátního koncového bodu

    (No improvements necessary, the translation is already optimal.) Hodnota
    Předplatné Pokud ještě není vybraná, zvolte předplatné Azure, které obsahuje prostředek DPS, na který váš privátní koncový bod odkazuje.
    Typ prostředku Pokud ještě není vybraná, zvolte Microsoft.Devices/ProvisioningServices.
    zdroj Pokud ještě nebyl vybrán, vyberte prostředek DPS, na který se privátní koncový bod mapuje.
    Cílový podzdroj Vyberte iotDps.

    Návod

    Informace o připojení k prostředku Azure podle ID prostředku nebo nastavení aliasu najdete v části Žádost o privátní koncový bod v tomto článku.

    Vyberte Další: Virtuální síť a nakonfigurujte virtuální síť pro privátní koncový bod.

  6. Na kartě Virtuální síť na stránce Vytvořit privátní koncový bod zvolte virtuální síť a podsíť, ve které chcete vytvořit privátní koncový bod.

    Snímek obrazovky znázorňující kartu Virtuální síť na stránce Vytvořit privátní koncový bod

    Vyberte Další: DNS a zvolte všechny možnosti integrace privátního DNS potřebného pro váš privátní koncový bod.

  7. Na kartě DNS na stránce Vytvořit privátní koncový bod zvolte všechny možnosti integrace privátního DNS potřebného pro váš privátní koncový bod.

    Snímek obrazovky znázorňující kartu DNS na stránce Vytvořit privátní koncový bod

    Vyberte Další: Značky a volitelně zadejte všechny značky pro váš prostředek.

  8. Vyberte Další: Zkontrolovat a vytvořit a pak vyberte Vytvořit a vytvořte prostředek privátního koncového bodu.

Použití privátních koncových bodů se zařízeními

Pokud chcete používat privátní koncové body s kódem zřizování zařízení, musí váš kód zřizování použít konkrétní koncový bod služby pro vaši instanci DPS, jak je znázorněno na stránce přehledu vaší instance DPS na webu Azure Portal. Koncový bod služby má následující formulář.

<Your DPS Tenant Name>.azure-devices-provisioning.net

Většina vzorového kódu ukázaného v naší dokumentaci a sadách SDK používá globální koncový bod zařízení (global.azure-devices-provisioning.net) a rozsah ID k vyřešení konkrétní instance DPS. Při připojování k instanci DPS pomocí privátních koncových bodů ke zřízení zařízení použijte koncový bod služby místo globálního koncového bodu zařízení.

Příklad klienta zřizování zařízení (pro_dev_client_sample) v sadě Azure IoT C SDK je navržený tak, aby jako globální identifikátor URI zřizování v global_prov_uri používal globální koncový bod zařízení.

MU_DEFINE_ENUM_STRINGS_WITHOUT_INVALID(PROV_DEVICE_RESULT, PROV_DEVICE_RESULT_VALUE);
MU_DEFINE_ENUM_STRINGS_WITHOUT_INVALID(PROV_DEVICE_REG_STATUS, PROV_DEVICE_REG_STATUS_VALUES);

static const char* global_prov_uri = "global.azure-devices-provisioning.net";
static const char* id_scope = "[ID Scope]";
}

PROV_DEVICE_RESULT prov_device_result = PROV_DEVICE_RESULT_ERROR;
PROV_DEVICE_HANDLE prov_device_handle;
if ((prov_device_handle = Prov_Device_Create(global_prov_uri, id_scope, prov_transport)) == NULL)
{
    (void)printf("failed calling Prov_Device_Create\r\n");

Pokud chcete ukázku použít s privátním koncovým bodem, zvýrazněný kód v předchozím příkladu by se změnil tak, aby používal koncový bod služby pro váš prostředek DPS. Pokud by například váš koncový bod služby byl mydps.azure-devices-provisioning.net, kód by vypadal následovně.

static const char* global_prov_uri = "global.azure-devices-provisioning.net";
static const char* service_uri = "mydps.azure-devices-provisioning.net";
static const char* id_scope = "[ID Scope]";
    PROV_DEVICE_RESULT prov_device_result = PROV_DEVICE_RESULT_ERROR;
    PROV_DEVICE_HANDLE prov_device_handle;
    if ((prov_device_handle = Prov_Device_Create(service_uri, id_scope, prov_transport)) == NULL)
    {
        (void)printf("failed calling Prov_Device_Create\r\n");
    }

Vyžádání privátního koncového bodu

Privátní koncový bod můžete požádat o instanci DPS podle ID prostředku. K provedení této žádosti potřebujete vlastníka prostředku, který vám poskytne ID prostředku.

  1. ID prostředku je k dispozici na stránce Vlastnosti prostředku DPS na webu Azure Portal, jak je znázorněno na následujícím snímku obrazovky.

    Snímek obrazovky znázorňující stránku Vlastnosti instance DPS na webu Azure Portal se zvýrazněním ID prostředku instance DPS

    Upozornění

    ID prostředku obsahuje ID předplatného.

  2. Jakmile budete mít ID prostředku, postupujte podle pokynů v Nastavení privátního koncového bodu až ke kroku 3 na kartě Prostředek na stránce Vytvoření privátního koncového bodu. Vyberte Připojit k prostředku Azure podle identifikátoru prostředku nebo aliasu a zadejte informace v následující tabulce.

    (No improvements necessary, the translation is already optimal.) Hodnota
    ID nebo alias prostředku Zadejte ID pro prostředek DPS.
    Cílový podzdroj Zadejte iotDps.
    Žádost o zprávu Zadejte požadavek směrovaný vlastníkovi prostředku DPS.
    Například
    Please approve this new private endpoint
    for IoT devices in site 23 to access this DPS instance

    Vyberte Další: Virtuální síť a nakonfigurujte virtuální síť pro privátní koncový bod.

  3. Na kartě Virtuální síť na stránce Vytvořit privátní koncový bod zvolte virtuální síť a podsíť, ve které chcete vytvořit privátní koncový bod.

    Snímek obrazovky znázorňující kartu Virtuální síť na stránce Vytvořit privátní koncový bod

    Vyberte Další: DNS a zvolte potřebné možnosti integrace privátního DNS pro žádost o privátní koncový bod.

  4. Na kartě DNS na stránce Vytvořit privátní koncový bod zvolte všechny možnosti integrace privátního DNS potřebné pro požadavek privátního koncového bodu.

    Snímek obrazovky znázorňující kartu DNS na stránce Vytvořit privátní koncový bod

    Vyberte Další: Značky a volitelně zadejte všechny značky pro váš prostředek.

  5. Vyberte Další: Zkontrolovat a vytvořit a pak vyberte Vytvořit pro vytvoření požadavku privátního koncového bodu.

  6. Vlastník DPS uvidí požadavek privátního koncového bodu v seznamu připojení privátních koncových bodů na stránce Sítě instance DPS na webu Azure Portal. Na této stránce může vlastník žádost o privátní koncový bod schválit nebo odmítnout .

    Snímek obrazovky znázorňující stránku Sítě instance DPS na webu Azure Portal se zvýrazněnou žádostí o privátní koncový bod

Ceny privátních koncových bodů

Podrobnosti o cenách najdete v tématu s cenami služby Azure Private Link.

Další kroky

Další informace o funkcích zabezpečení DPS: