Dukungan Azure IoT Hub Device Provisioning Service (DPS) untuk jaringan virtual

Artikel ini memperkenalkan pola konektivitas jaringan virtual untuk provisi perangkat IoT dengan hub IoT menggunakan DPS. Pola ini menyediakan konektivitas privat antara perangkat, DPS, dan hub IoT di dalam jaringan virtual Azure milik pelanggan.

Dalam sebagian besar skenario di mana DPS dikonfigurasi dengan jaringan virtual, hub IoT Anda juga dikonfigurasi dalam jaringan virtual yang sama. Untuk informasi selengkapnya tentang dukungan dan konfigurasi jaringan virtual untuk hub IoT, lihat Dukungan IoT Hub untuk jaringan virtual dengan Azure Private Link.

Pendahuluan

Secara default, nama host DPS memetakan ke titik akhir publik dengan alamat IP yang dapat dirutekan secara publik melalui Internet. Titik akhir publik ini terlihat oleh semua pelanggan. Perangkat IoT melalui jaringan area luas dan jaringan lokal dapat mencoba mengakses titik akhir publik.

Untuk beberapa alasan, pelanggan mungkin ingin membatasi konektivitas ke sumber daya Azure, seperti DPS. Alasan ini meliputi:

  • Hindari tereksposnya koneksi ke Internet publik. Paparan dapat dikurangi dengan memperkenalkan lebih banyak lapisan keamanan melalui isolasi tingkat jaringan untuk hub IoT dan sumber daya DPS Anda

  • Mengaktifkan pengalaman konektivitas privat dari aset jaringan lokal Anda memastikan bahwa data dan lalu lintas Anda dikirimkan langsung ke jaringan backbone Azure.

  • Mencegah serangan eksfiltrasi dari jaringan lokal yang sensitif.

  • Mengikuti pola konektivitas Azure yang sudah ada dengan menggunakan titik akhir privat.

Pendekatan umum untuk membatasi konektivitas termasuk aturan filter IP DPS dan jaringan virtual dengan titik akhir privat. Tujuan dari artikel ini adalah untuk menjelaskan pendekatan jaringan virtual untuk DPS menggunakan titik akhir privat.

Perangkat yang beroperasi di jaringan lokal dapat menggunakan Virtual Private Network (VPN) atau peering privat ExpressRoute untuk terhubung ke jaringan virtual di Azure dan mengakses sumber daya DPS melalui titik akhir privat.

Titik akhir privat adalah alamat IP privat yang dialokasikan di dalam jaringan virtual milik pelanggan tempat sumber daya Azure dapat diakses. Dengan memiliki titik akhir privat untuk sumber daya DPS, Anda dapat mengizinkan perangkat yang beroperasi di dalam jaringan virtual Anda untuk meminta provisi oleh sumber daya DPS Anda tanpa mengizinkan lalu lintas ke titik akhir publik. Setiap sumber daya DPS dapat mendukung beberapa titik akhir privat, yang masing-masing mungkin terletak di jaringan virtual di wilayah yang berbeda.

Prasyarat

Sebelum melanjutkan, pastikan prasyarat berikut terpenuhi:

Batasan titik akhir pribadi

Perhatikan batasan-batasan saat ini berikut untuk DPS ketika menggunakan titik akhir privat:

  • Titik akhir privat tidak berfungsi saat sumber daya DPS dan hub IoT yang ditautkan berada di cloud yang berbeda. Misalnya, Azure Government dan Azure global.

  • Titik akhir privat di DPS menggunakan Azure Private Link, yang hanya didukung di wilayah publik. Untuk informasi selengkapnya, lihat Ketersediaan Azure Private Link.

  • Saat ini, kebijakan alokasi kustom dengan Azure Functions untuk DPS tidak berfungsi saat fungsi Azure dikunci ke jaringan virtual dan titik akhir privat.

  • Dukungan jaringan virtual DPS saat ini hanya untuk masuknya data ke DPS. Pengeluaran data, yang merupakan lalu lintas dari DPS ke IoT Hub, menggunakan mekanisme antar layanan internal bukan jaringan virtual khusus. Dukungan untuk penguncian keluar berbasis jaringan virtual penuh antara DPS dan IoT Hub saat ini tidak tersedia.

  • Kebijakan alokasi latensi terendah digunakan untuk menetapkan perangkat ke hub IoT dengan latensi terendah. Kebijakan alokasi ini tidak dapat diandalkan di lingkungan jaringan virtual.

  • Mengaktifkan satu atau beberapa titik akhir privat biasanya melibatkan penonaktifan akses publik ke instans DPS Anda. Setelah akses publik dinonaktifkan, Anda tidak dapat lagi menggunakan portal Microsoft Azure untuk mengelola pendaftaran. Sebagai gantinya, Anda dapat mengelola pendaftaran menggunakan Azure CLI, PowerShell, atau API layanan dari komputer di dalam satu atau beberapa jaringan virtual/titik akhir privat yang dikonfigurasi pada instans DPS.

  • Saat menggunakan titik akhir privat, sebaiknya sebarkan DPS di salah satu wilayah yang mendukung Zona Ketersediaan. Jika tidak, instans DPS dengan titik akhir privat yang diaktifkan mungkin mengalami penurunan ketersediaan selama pemadaman.

Nota

Pertimbangan residensi data:

DPS menyediakan titik akhir perangkat Global (global.azure-devices-provisioning.net). Namun, saat Anda menggunakan titik akhir global, data Anda mungkin dialihkan di luar wilayah tempat instans DPS awalnya dibuat. Untuk memastikan residensi data dalam wilayah DPS awal, gunakan titik akhir privat.

Menyiapkan titik akhir privat

Untuk menyiapkan titik akhir privat, ikuti langkah-langkah berikut:

  1. Di portal Microsoft Azure, navigasikan ke sumber daya DPS Anda.

  2. Di menu layanan, di bawah Pengaturan, pilih tab Jaringan .

  3. Di panel kerja, pilih tab Akses privat , lalu pilih + Buat titik akhir privat.

    Cuplikan layar yang memperlihatkan penambahan titik akhir privat baru untuk instans DPS di portal Microsoft Azure.

  4. Pada tab Dasar dari halaman Buat titik akhir privat , masukkan informasi yang disebutkan dalam tabel berikut ini.

    Cuplikan layar yang memperlihatkan tab Dasar dari halaman Buat titik akhir privat.

    Bidang Nilai
    Langganan Pilih langganan Azure yang diinginkan untuk menampung titik akhir privat.
    grup Sumber Daya Pilih atau buat grup sumber daya yang berfungsi untuk menampung titik akhir privat.
    Nama Masukkan nama untuk titik akhir privat Anda.
    Nama Antarmuka Jaringan Jika diinginkan, masukkan nama untuk antarmuka jaringan titik akhir privat Anda.
    Wilayah Pilih wilayah untuk titik akhir privat. Wilayah yang dipilih harus sama dengan wilayah yang berisi jaringan virtual, tetapi tidak harus sama dengan sumber daya DPS.

    Pilih Berikutnya : Sumber daya untuk mengonfigurasi sumber daya yang dituju oleh titik akhir privat.

  5. Pada tab Sumber Daya dari halaman Buat titik akhir privat , masukkan informasi yang disebutkan dalam tabel berikut ini.

    Cuplikan layar yang memperlihatkan tab Sumber Daya dari halaman Buat titik akhir privat.

    Bidang Nilai
    Langganan Jika belum dipilih, pilihlah langganan Azure yang mencakup sumber daya DPS yang dituju oleh titik akhir privat Anda.
    Jenis Sumber Daya Jika belum dipilih, pilih Microsoft.Devices/ProvisioningServices.
    Sumber Daya Jika belum dipilih, pilih sumber daya DPS tempat titik akhir privat dipetakan.
    Sumber daya bagian yang ditargetkan Pilih iotDps.

    Petunjuk / Saran

    Informasi tentang pengaturan Sambungkan ke sumber daya Azure menurut ID sumber daya atau alias disediakan di bagian Minta titik akhir privat dalam artikel ini.

    Pilih Berikutnya : Virtual Network untuk mengonfigurasi jaringan virtual untuk titik akhir privat.

  6. Pada tab Virtual Network dari halaman Buat titik akhir privat , pilih jaringan virtual dan subnet Anda untuk membuat titik akhir privat.

    Cuplikan layar yang memperlihatkan tab Virtual Network dari halaman Buat titik akhir privat.

    Pilih Berikutnya : DNS untuk memilih opsi integrasi DNS privat apa pun yang diperlukan untuk titik akhir privat Anda.

  7. Pada tab DNS halaman Buat titik akhir privat , pilih opsi integrasi DNS privat apa pun yang diperlukan untuk titik akhir privat Anda.

    Cuplikan layar yang memperlihatkan tab DNS dari halaman Buat titik akhir privat.

    Pilih Berikutnya : Tag, dan secara opsional berikan tag apa pun untuk sumber daya Anda.

  8. Pilih Berikutnya : Tinjau + buat, lalu pilih Buat untuk membuat sumber daya titik akhir privat Anda.

Menggunakan titik akhir pribadi dengan perangkat

Untuk menggunakan titik akhir privat dengan kode provisi perangkat, kode provisi Anda harus menggunakan titik akhir Layanan tertentu untuk instans DPS Anda seperti yang ditunjukkan pada halaman gambaran umum instans DPS Anda di portal Microsoft Azure. Titik akhir layanan memiliki formulir berikut.

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

Sebagian besar kode sampel yang ditunjukkan dalam dokumentasi dan SDK kami, menggunakan Titik akhir perangkat global (global.azure-devices-provisioning.net) dan Cakupan ID untuk menyelesaikan instans DPS tertentu. Gunakan titik akhir layanan sebagai pengganti titik akhir perangkat global saat menyambungkan ke instans DPS menggunakan titik akhir privat untuk menyediakan perangkat Anda.

Misalnya, sampel klien perangkat provisi (pro_dev_client_sample) di Azure IoT C SDK dirancang untuk menggunakan titik akhir perangkat Global sebagai URI provisi global (global_prov_uri) di prov_dev_client_sample.c

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");

Untuk menggunakan sampel dengan titik akhir privat, kode yang disorot dalam contoh sebelumnya akan diubah untuk menggunakan titik akhir layanan untuk sumber daya DPS Anda. Misalnya, jika titik akhir layanan Anda adalah mydps.azure-devices-provisioning.net, kode akan terlihat sebagai berikut.

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");
    }

Meminta titik akhir privat

Anda dapat meminta titik akhir privat ke instans DPS berdasarkan ID sumber daya. Untuk membuat permintaan ini, Anda memerlukan pemilik sumber daya untuk memberi Anda ID sumber daya.

  1. ID sumber daya disediakan di halaman Properti untuk sumber daya DPS di portal Microsoft Azure, seperti yang ditunjukkan pada cuplikan layar berikut.

    Cuplikan layar yang memperlihatkan halaman Properti instans DPS di portal Microsoft Azure, menyoroti ID sumber daya untuk instans DPS.

    Perhatian

    ID sumber daya memang berisi ID langganan.

  2. Setelah Anda memiliki ID sumber daya, ikuti langkah-langkah dalam Menyiapkan titik akhir privat ke langkah 3 pada tab Sumber Daya dari halaman Buat titik akhir privat . Pilih Sambungkan ke sumber daya Azure menurut ID sumber daya atau alias dan masukkan informasi dalam tabel berikut.

    Bidang Nilai
    ID sumber daya atau alias Masukkan ID sumber daya untuk sumber daya DPS.
    Sumber daya bagian yang ditargetkan Masukkan iotDps
    Pesan permintaan Masukkan pesan permintaan untuk pemilik sumber daya DPS.
    Misalnya:
    Please approve this new private endpoint
    for IoT devices in site 23 to access this DPS instance

    Pilih Berikutnya : Virtual Network untuk mengonfigurasi jaringan virtual untuk titik akhir privat.

  3. Pada tab Virtual Network dari halaman Buat titik akhir privat , pilih jaringan virtual dan subnet Anda untuk membuat titik akhir privat.

    Cuplikan layar yang memperlihatkan tab Virtual Network dari halaman Buat titik akhir privat.

    Pilih Berikutnya : DNS untuk memilih opsi integrasi DNS privat apa pun yang diperlukan untuk permintaan titik akhir privat Anda.

  4. Pada tab DNS halaman Buat titik akhir privat , pilih opsi integrasi DNS privat apa pun yang diperlukan untuk permintaan titik akhir privat Anda.

    Cuplikan layar yang memperlihatkan tab DNS dari halaman Buat titik akhir privat.

    Pilih Berikutnya : Tag, dan secara opsional berikan tag apa pun untuk sumber daya Anda.

  5. Pilih Berikutnya : Tinjau dan buat, lalu pilih Buat untuk permintaan pembuatan titik akhir privat Anda.

  6. Pemilik DPS melihat permintaan titik akhir privat di daftar Koneksi titik akhir privat di halaman Jaringan instans DPS di portal Microsoft Azure. Pada halaman tersebut, pemilik dapat Menyetujui atau Menolak permintaan titik akhir privat.

    Cuplikan layar yang memperlihatkan halaman Jaringan instans DPS di portal Microsoft Azure, menyoroti permintaan titik akhir privat.

Penetapan harga untuk titik akhir privat

Untuk detail harga, lihat Harga Azure Private Link.

Langkah berikutnya

Pelajari selengkapnya tentang fitur keamanan DPS: