Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mengontrol akses ke IoT Hub dengan menggunakan MICROSOFT Entra ID
Artikel
28/03/2025
Anda dapat menggunakan ID Microsoft Entra untuk mengautentikasi permintaan ke API layanan Azure IoT Hub, seperti membuat identitas perangkat dan memanggil metode langsung. Anda juga dapat menggunakan kontrol akses berbasis peran Azure (Azure RBAC) untuk mengotorisasi API layanan yang sama. Dengan menggunakan teknologi ini bersama-sama, Anda dapat memberikan izin untuk mengakses API layanan IoT Hub ke perwakilan keamanan Microsoft Entra. Prinsipal keamanan ini bisa berupa pengguna, kelompok, atau prinsipal layanan aplikasi.
Mengautentikasi akses dengan menggunakan ID Microsoft Entra dan mengontrol izin dengan menggunakan Azure RBAC memberikan peningkatan keamanan dan kemudahan penggunaan melalui token keamanan. Untuk meminimalkan potensi masalah keamanan yang melekat pada token keamanan, kami sarankan Anda menerapkan autentikasi Microsoft Entra jika memungkinkan.
Catatan
Autentikasi dengan Microsoft Entra ID tidak didukung untuk API perangkat IoT Hub (seperti pesan perangkat-ke-cloud dan memperbarui properti yang dilaporkan). Gunakan tombol simetris atau X.509untuk mengautentikasi perangkat ke Hub IoT.
Autentikasi dan otorisasi
Autentikasi adalah proses membuktikan bahwa Anda adalah orang yang Anda katakan. Autentikasi memverifikasi identitas pengguna atau perangkat ke IoT Hub. Autentikasi terkadang disingkat menjadi AuthN.
Otorisasi adalah proses mengonfirmasi izin untuk pengguna atau perangkat yang diautentikasi di IoT Hub. Otorisasi menentukan sumber daya dan perintah apa yang diizinkan untuk Anda akses, dan apa yang dapat Anda lakukan dengan sumber daya dan perintah tersebut. Otorisasi kadang-kadang disingkat menjadi AuthZ.
Saat perwakilan keamanan Microsoft Entra meminta akses ke API layanan IoT Hub, identitas perwakilan pertama kali diautentikasi. Untuk autentikasi, permintaan harus berisi token akses OAuth 2.0 saat runtime. Nama sumber daya untuk meminta token adalah https://iothubs.azure.net. Jika aplikasi berjalan di sumber daya Azure seperti Azure VM, aplikasi Azure Functions, atau aplikasi Azure App Service, aplikasi dapat direpresentasikan sebagai identitas terkelola.
Setelah perwakilan Microsoft Entra diautentikasi, langkah selanjutnya adalah otorisasi. Dalam langkah ini, IoT Hub menggunakan layanan penetapan peran Microsoft Entra untuk menentukan izin apa yang dimiliki perwakilan. Jika izin prinsipal cocok dengan sumber daya atau API yang diminta, IoT Hub mengotorisasi permintaan tersebut. Jadi, langkah ini mengharuskan satu atau beberapa peran Azure untuk ditetapkan pada prinsipal keamanan. IoT Hub menyediakan beberapa peran bawaan yang memiliki grup izin umum.
Mengelola akses ke IoT Hub dengan menggunakan penetapan peran Azure RBAC
Dengan MICROSOFT Entra ID dan RBAC, IoT Hub mengharuskan perwakilan yang meminta API memiliki tingkat izin yang sesuai untuk otorisasi. Untuk memberikan izin kepada kepala sekolah, berikan penetapan peran.
Untuk memastikan hak istimewa paling sedikit, selalu tetapkan peran yang sesuai pada cakupan sumber daya serendahmungkin, yang mungkin merupakan lingkup IoT Hub.
IoT Hub menyediakan peran bawaan Azure berikut untuk mengotorisasi akses ke API layanan IoT Hub dengan menggunakan ID Microsoft Entra dan RBAC:
Memungkinkan membaca dan menulis data ke semua perangkat dan modul kembar IoT Hub.
Anda juga dapat menentukan peran kustom untuk digunakan dengan Azure IoT Hub dengan menggabungkan izin yang Anda butuhkan. Untuk informasi selengkapnya, lihat Peran kustom Azure.
Cakupan sumber daya
Sebelum Anda menetapkan peran Azure RBAC ke perwakilan keamanan, tentukan cakupan akses yang harus dimiliki perwakilan keamanan. Sebaiknya selalu memberikan ruang lingkup yang paling terbatas. Peran Azure RBAC yang ditentukan pada cakupan yang lebih luas diwariskan oleh sumber daya di bawahnya.
Daftar ini menjelaskan tingkat yang Anda dapat mengakses cakupan IoT Hub, dimulai dengan cakupan tersempit:
IoT Hub. Pada lingkup ini, penetapan peran berlaku untuk IoT hub. Tidak ada ruang lingkup yang lebih kecil dari hub IoT individu. Penetapan peran pada cakupan yang lebih kecil, seperti identitas perangkat individual, tidak didukung.
Grup sumber daya. Pada lingkup ini, penetapan peran berlaku untuk semua hub IoT dalam grup sumber daya.
Langganan. Pada cakupan ini, penetapan peran berlaku untuk semua hub IoT di semua grup sumber daya dalam langganan.
Grup manajemen. Pada cakupan ini, penetapan peran berlaku untuk semua hub IoT di semua grup sumber daya di semua langganan di grup manajemen.
Izin untuk API layanan Hub IoT
Tabel berikut ini menjelaskan izin yang tersedia untuk operasi API layanan Azure IoT Hub. Untuk memungkinkan klien menghubungi operasi tertentu, pastikan bahwa peran RBAC yang ditetapkan klien menawarkan izin yang memadai untuk operasi tersebut.
Tindakan RBAC
Deskripsi
Microsoft.Devices/IotHubs/devices/read
Membaca identitas perangkat atau modul apa pun.
Microsoft.Devices/IotHubs/devices/write
Membuat atau memperbarui identitas perangkat atau modul apa pun.
Secara default, IoT Hub mendukung akses API layanan melalui ID Microsoft Entra dan kebijakan akses bersama dan token keamanan. Untuk meminimalkan potensi kerentanan keamanan yang melekat pada token keamanan, Anda dapat menonaktifkan akses dengan kebijakan akses bersama.
Peringatan
Dengan menolak koneksi menggunakan kebijakan akses bersama, semua pengguna dan layanan yang terhubung menggunakan metode ini segera kehilangan akses. Terutama, karena Device Provisioning Service (DPS) hanya mendukung penautan hub IoT menggunakan kebijakan akses bersama, semua alur provisi perangkat gagal dengan kesalahan "tidak sah". Lanjutkan dengan hati-hati dan rencanakan untuk mengganti akses dengan akses berbasis peran Microsoft Entra.
Jangan lanjutkan jika Anda menggunakan Device Provisioning Service.
Masuk ke portal Azure dan navigasikan ke IoT hub Anda.
Pilih Kebijakan akses bersama dari bagian Pengaturan keamanan pada menu navigasi.
Di bawah Sambungkan menggunakan kebijakan akses bersama, pilih Tolak, dan tinjau peringatannya.
Pilih Simpan.
API layanan IoT Hub Anda sekarang hanya dapat diakses melalui ID Microsoft Entra dan RBAC.
Akses ID Microsoft Entra dari portal Azure
Anda dapat menyediakan akses ke IoT Hub dari portal Azure dengan kebijakan akses bersama atau izin Microsoft Entra.
Saat Anda mencoba mengakses IoT Hub dari portal Microsoft Azure, portal Microsoft Azure terlebih dahulu memeriksa apakah Anda diberi peran Azure dengan Microsoft.Devices/iotHubs/listkeys/action. **
Jika demikian, portal Azure menggunakan kunci dari kebijakan akses berbagi untuk mengakses IoT Hub. Jika tidak, portal Azure mencoba mengakses data dengan menggunakan akun Microsoft Entra Anda.
Untuk mengakses IoT Hub dari portal Azure dengan menggunakan akun Microsoft Entra, Anda memerlukan izin untuk mengakses sumber daya data IoT Hub (seperti perangkat dan kembar). Anda juga memerlukan izin untuk masuk ke sumber daya IoT Hub di portal Microsoft Azure. Peran bawaan yang disediakan oleh IoT Hub memberikan akses ke sumber daya seperti perangkat dan kembar digital namun tidak memberikan akses ke sumber daya IoT Hub. Jadi, akses ke portal juga memerlukan penugasan peran Azure Resource Manager seperti Reader. Peran pembaca adalah pilihan yang baik karena ini adalah peran yang paling dibatasi yang memungkinkan Anda menavigasi portal. Ini tidak termasuk izin Microsoft.Devices/iotHubs/listkeys/action (yang menyediakan akses ke semua sumber daya data IoT Hub melalui kebijakan akses bersama).
Untuk memastikan akun tidak memiliki akses di luar izin yang ditetapkan, jangan sertakan izin Microsoft.Devices/iotHubs/listkeys/action saat Anda membuat peran kustom. Misalnya, untuk membuat peran khusus yang dapat membaca identitas perangkat tetapi tidak dapat membuat atau menghapus perangkat, buat peran khusus yang:
Memiliki tindakan data Microsoft.Devices/IotHubs/devices/read.
Tidak memiliki tindakan data Microsoft.Devices/IotHubs/devices/write.
Tidak memiliki tindakan data Microsoft.Devices/IotHubs/devices/delete.
Tidak memiliki tindakan Microsoft.Devices/iotHubs/listkeys/action.
Kemudian, pastikan akun tidak memiliki peran lain yang memiliki izin Microsoft.Devices/iotHubs/listkeys/action, seperti Pemilik atau Kontributor. Untuk mengizinkan akun memiliki akses sumber daya dan menavigasi portal, tetapkan Pembaca.
Akses ID Microsoft Entra dari Azure CLI
Sebagian besar perintah terhadap IoT Hub mendukung autentikasi Microsoft Entra. Anda dapat mengontrol jenis autentikasi yang digunakan untuk menjalankan perintah dengan menggunakan parameter --auth-type, yang menerima nilai key atau login. Nilai key adalah bawaan.
Ketika --auth-type memiliki nilai key, seperti sebelumnya, CLI secara otomatis menemukan kebijakan yang sesuai saat berinteraksi dengan IoT Hub.
Ketika --auth-type memiliki nilai login, token akses dari Azure CLI yang masuk pada prinsipal digunakan untuk operasi.
Pahami bagaimana Azure IoT Hub menggunakan tanda tangan akses bersama (SAS) untuk mengautentikasi identitas dan mengotorisasi akses ke hub dan perangkat IoT.
Artikel ini menyediakan deskripsi registri identitas IoT Hub dan cara menggunakannya untuk mengelola perangkat Anda. Mencakup informasi tentang impor dan ekspor identitas perangkat secara massal.
Artikel ini menjelaskan penjadwalan pekerjaan untuk dijalankan di beberapa perangkat yang tersambung ke hub IoT Anda. Tugas dapat mengupdate tag dan properti yang diinginkan serta memanggil metode langsung di beberapa perangkat.
Artikel ini menjelaskan cara menggunakan pengarahan pesan untuk mengirim pesan dari perangkat ke cloud. Termasuk informasi tentang pengiriman data telemetri dan non-telemetri.
Pelajari bagaimana REST API untuk IoT Hub menawarkan akses terprogram ke perangkat, pesan, dan layanan pekerjaan, serta penyedia sumber daya, di IoT Hub.
Mulai di sini untuk mempelajari cara memantau Azure IoT Hub dengan menggunakan Azure Monitor. Pelajari tentang jenis data pemantauan yang dapat Anda kumpulkan dan cara untuk menganalisis data tersebut.