Manajer keamanan Azure IoT Edge

Berlaku untuk:Tanda centang IoT Edge 1.5 IoT Edge 1.5 Tanda centang IoT Edge 1.4 IoT Edge 1.4

Penting

IoT Edge 1.5 LTS dan IoT Edge 1.4 LTS adalah rilis yang didukung. IoT Edge 1.4 LTS adalah akhir masa pakai pada 12 November 2024. Jika Anda menggunakan rilis sebelumnya, lihat Memperbarui IoT Edge.

Manajer keamanan Azure IoT Edge adalah inti keamanan yang terikat dengan baik untuk melindungi perangkat IoT Edge dan semua komponennya dengan mengabstraksi perangkat keras silikon yang aman. Manajer keamanan adalah titik fokus untuk pengerasan keamanan dan menyediakan titik integrasi teknologi untuk produsen peralatan asli (OEM).

Manajer keamanan mengabstraksikan perangkat keras silikon yang aman pada perangkat IoT Edge dan menyediakan kerangka kerja ekstensibilitas untuk layanan keamanan tambahan.

Manajer keamanan IoT Edge bertujuan untuk mempertahankan integritas perangkat IoT Edge dan semua operasi perangkat lunak yang melekat. Manajer keamanan transisi kepercayaan dari perangkat keras yang mendasari akar kepercayaan perangkat keras (jika tersedia) ke bootstrap runtime IoT Edge dan memantau operasi yang sedang berlangsung. Manajer keamanan IoT Edge adalah perangkat lunak yang bekerja bersama dengan perangkat keras silikon yang aman (jika tersedia) untuk membantu memberikan jaminan keamanan setinggi mungkin.

Selain itu, manajer keamanan IoT Edge menyediakan kerangka kerja yang aman untuk ekstensi layanan keamanan melalui modul tingkat host. Layanan ini termasuk pemantauan keamanan dan pembaruan yang memerlukan agen di dalam perangkat dengan akses istimewa ke beberapa komponen perangkat. Kerangka ekstensibilitas memastikan bahwa integrasi tersebut secara konsisten menjunjung tinggi keamanan sistem secara keseluruhan.

Tanggung jawab manajer keamanan IoT Edge meliputi, tetapi tidak terbatas pada:

  • Bootstrap perangkat Azure IoT Edge.
  • Kontrol akses ke akar kepercayaan perangkat keras perangkat melalui layanan notary.
  • Pantau integritas operasi IoT Edge pada runtime.
  • Provisikan identitas perangkat dan mengelola transisi kepercayaan jika berlaku.
  • Pastikan pengoperasian agen klien yang aman untuk layanan termasuk Device Update for IoT Hub dan Pertahanan Microsoft untuk IoT.

Manajer keamanan IoT Edge terdiri dari tiga komponen:

  • Runtime modul IoT Edge
  • Abstraksi modul keamanan perangkat keras (HSM) melalui implementasi standar seperti PKCS#11 dan Trusted Platform Module (TPM)
  • Akar kepercayaan silikon perangkat keras atau HSM (opsional, tetapi sangat direkomendasikan)

Perubahan pada versi 1.2 dan yang lebih baru

Dalam versi 1.0 dan 1.1 dari IoT Edge, komponen yang disebut daemon keamanan bertanggung jawab atas operasi keamanan logika dari manajer keamanan. Dalam pembaruan ke versi 1.2, beberapa tanggung jawab utama didelegasikan ke subsistem keamanan Azure IoT Identity Service. Setelah tugas-tugas berbasis keamanan ini dihapus dari daemon keamanan, namanya tidak lagi masuk akal. Untuk lebih mencerminkan pekerjaan yang dilakukan komponen ini di versi 1.2 dan seterusnya, kami mengganti namanya menjadi runtime modul.

Runtime modul IoT Edge

Runtime modul IoT Edge mendelegasikan kepercayaan dari subsistem keamanan Azure IoT Identity Service untuk melindungi lingkungan runtime kontainer IoT Edge. Satu layanan, yang sekarang didelegasikan ke Azure IoT Identity Service, adalah pendaftaran sertifikat otomatis dan layanan perpanjangan melalui server EST. Untuk melihat cara kerjanya dan membuat contoh server EST yang dibuat untuk perangkat IoT Edge, coba tutorial Mengonfigurasi Pendaftaran melalui Secure Transport Server untuk Azure IoT Edge .

Runtime modul bertanggung jawab atas operasi keamanan logis manajer keamanan. Ini mewakili porsi besar basis komputasi tepercaya dari perangkat IoT Edge. Runtime modul menggunakan layanan keamanan dari IoT Identity Service, yang pada gilirannya dikeraskan oleh pilihan modul keamanan perangkat keras (HSM) produsen perangkat. Kami sangat menyarankan penggunaan HSM untuk pengerasan perangkat.

Prinsip desain

IoT Edge mengikuti dua prinsip inti: memaksimalkan integritas operasional, dan meminimalkan bloat dan churn.

Memaksimalkan integritas operasional

Runtime modul IoT Edge beroperasi dengan integritas setinggi mungkin dalam kemampuan pertahanan dari akar kepercayaan perangkat keras tertentu. Dengan integrasi yang tepat, akar kepercayaan perangkat keras mengukur dan memantau daemon keamanan secara statis dan pada runtime untuk menahan dari perubahan.

Akses fisik berbahaya ke perangkat selalu menjadi ancaman di IoT. Akar kepercayaan perangkat keras memainkan peran penting dalam mempertahankan integritas perangkat IoT Edge. Akar kepercayaan perangkat keras terdiri dari dua varietas:

  • Amankan elemen untuk perlindungan informasi sensitif seperti rahasia dan kunci kriptografi.
  • Amankan enklave untuk perlindungan rahasia seperti kunci, dan beban kerja sensitif seperti model pembelajaran mesin rahasia dan operasi metering.

Ada dua jenis lingkungan eksekusi untuk menggunakan akar kepercayaan perangkat keras:

  • Lingkungan eksekusi standar atau kaya (REE) yang bergantung pada penggunaan elemen aman untuk melindungi informasi sensitif.
  • Lingkungan eksekusi tepercaya (Trusted Execution Environment) yang bergantung pada penggunaan teknologi enklave aman untuk melindungi informasi sensitif dan menawarkan perlindungan untuk eksekusi perangkat lunak.

Untuk perangkat yang menggunakan enklave aman sebagai akar kepercayaan perangkat keras, logika sensitif dalam runtime modul IoT Edge harus berada di dalam enklave. Bagian yang tidak sensitif dari runtime modul dapat berada di luar TEE. Dalam segala kasus, kami sangat menyarankan produsen desain asli (ODM) dan produsen peralatan asli (OEM) meluaskan kepercayaan dari HSM mereka untuk mengukur dan mempertahankan integritas runtime modul IoT Edge saat boot dan runtime.

Mengecilkan penggelembungan dan churn

Prinsip inti lain untuk runtime modul IoT Edge adalah mengecilkan churn. Untuk tingkat kepercayaan tertinggi, runtime modul IoT Edge dapat berpasangan erat dengan akar kepercayaan perangkat keras dan beroperasi sebagai kode native. Dalam kasus ini, sudah umum untuk memperbarui perangkat lunak IoT Edge melalui jalur pembaruan aman akar kepercayaan perangkat keras daripada mekanisme pembaruan sistem operasi, yang dapat menjadi tantangan. Pembaruan keamanan direkomendasikan untuk perangkat IoT, tetapi persyaratan pembaruan yang berlebihan atau payload pembaruan yang besar dapat memperluas permukaan ancaman dalam banyak hal. Misalnya, Anda mungkin tergoda untuk melewatkan beberapa pembaruan untuk memaksimalkan ketersediaan perangkat. Dengan demikian, desain runtime modul IoT Edge menjadi ringkas untuk menjaga basis komputasi tepercaya dan terisolasi dengan baik tetap kecil untuk mendorong pembaruan yang sering.

Sistem

Runtime modul IoT Edge memanfaatkan teknologi akar kepercayaan perangkat keras yang tersedia untuk pengerasan keamanan. Ini juga memungkinkan operasi dunia terpisah antara lingkungan eksekusi standar/kaya (REE) dan lingkungan eksekusi tepercaya (Trusted Execution Environment) ketika teknologi perangkat keras menawarkan lingkungan eksekusi tepercaya. Antarmuka khusus peran mengaktifkan komponen utama IoT Edge untuk memastikan integritas perangkat IoT Edge dan operasinya.

Arsitektur runtime modul Azure IoT Edge

Antarmuka cloud

Antarmuka cloud memungkinkan akses ke layanan cloud yang melengkapi keamanan perangkat. Contohnya, antarmuka ini mengizinkan akses ke Device Provisioning Service untuk manajemen siklus hidup identitas perangkat.

API Manajemen

API manajemen dipanggil oleh agen IoT Edge saat membuat/memulai/menghentikan/menghapus modul IoT Edge. Runtime modul menyimpan "pendaftaran" untuk semua modul aktif. Pendaftaran ini memetakan identitas modul ke beberapa properti modul. Misalnya, properti modul ini termasuk pengidentifikasi proses (pid) dari proses yang berjalan dalam kontainer dan hash isi kontainer docker.

Properti ini digunakan oleh API beban kerja (dijelaskan di bawah) untuk memverifikasi bahwa penelepon diotorisasi untuk tindakan.

API manajemen adalah API istimewa, hanya dapat dihubungi dari agen IoT Edge. Karena runtime modul IoT Edge bootstrap dan memulai agen IoT Edge, ia memverifikasi bahwa agen IoT Edge belum diubah, maka dapat membuat pendaftaran implisit untuk agen IoT Edge. Proses pengesahan yang sama yang digunakan API beban kerja juga membatasi akses ke API manajemen hanya untuk agen IoT Edge.

API Kontainer

Kontainer API berinteraksi dengan sistem kontainer yang digunakan untuk manajemen modul, seperti Moby atau Docker.

API beban kerja

API beban kerja dapat diakses oleh semua modul. Ini memberikan bukti identitas, baik sebagai token bertanda tangan berakar HSM atau sertifikat X509, dan bundel kepercayaan yang sesuai ke modul. Bundel kepercayaan berisi sertifikat OS untuk semua server lain yang harus dipercaya oleh modul.

Runtime modul IoT Edge menggunakan proses pengesahan untuk menjaga API ini. Ketika modul memanggil API ini, runtime modul mencoba menemukan pendaftaran untuk identitas. Jika berhasil, ia menggunakan properti pendaftaran untuk mengukur modul. Jika hasil dari proses pengukuran cocok dengan pendaftaran, bukti identitas baru dihasilkan. Sertifikat OS yang sesuai (bundel kepercayaan) dikembalikan ke modul. Modul ini menggunakan sertifikat ini untuk tersambungkan ke IoT Hub, modul lain, atau memulai server. Ketika token atau sertifikat yang ditandatangani mendekati kedaluwarsa, modul bertanggungjawab untuk meminta sertifikat baru.

Integrasi dan pemeliharaan

Microsoft mempertahankan basis kode utama untuk runtime modu IoT Edge dan layanan identitas Azure IoT pada GitHub.

Ketika Anda membaca basis kode IoT Edge, ingatlah bahwa runtime modul berevolusi dari daemon keamanan. Basis kode mungkin masih berisi referensi ke daemon keamanan.

Penginstalan dan pembaruan

Penginstalan dan pembaruan runtime modul IoT Edge dikelola melalui sistem manajemen paket sistem operasi. Perangkat IoT Edge dengan akar kepercayaan perangkat keras harus memberikan pengerasan tambahan pada integritas runtime modul dengan mengelola siklus hidupnya melalui sistem manajemen boot dan pembaruan yang aman. Pembuat perangkat harus menjelajahi jalan ini berdasarkan kemampuan perangkat masing-masing.

Penerapan versi

Runtime IoT Edge melacak dan melaporkan versi runtime modul IoT Edge. Versi ini dilaporkan sebagai atribut runtime.platform.version dari modul agen IoT Edge yang dilaporkan properti.

Modul keamanan perangkat keras

Manajer keamanan IoT Edge mengimplementasikan Trusted Platform Module dan standar antarmuka PKCS#11 untuk mengintegrasikan modul keamanan perangkat keras (HSM). Dengan standar ini, hampir semua HSM, termasuk yang memiliki antarmuka berpemilik, dapat diintegrasikan. Kami sangat menyarankan menggunakan HSM untuk pengerasan keamanan.

Akar kepercayaan silikon aman perangkat keras

Silikon aman diperlukan untuk jangkar kepercayaan di dalam perangkat keras IoT Edge. Silikon aman memiliki variasi termasuk Trusted Platform Module (TPM), embedded Secure Element (eSE), Arm TrustZone, Intel SGX, dan teknologi silikon aman kustom. Penggunaan akar kepercayaan silikon aman pada perangkat disarankan mengingat ancaman yang terkait dengan aksesibilitas fisik perangkat IoT.

Manajer keamanan IoT Edge bertujuan untuk mengidentifikasi dan mengisolasi komponen yang mempertahankan keamanan dan integritas platform Azure IoT Edge untuk pengerasan kustom. Pihak ketiga, seperti pembuat perangkat, harus menggunakan fitur keamanan kustom yang tersedia dengan perangkat keras mereka.

Pelajari cara mengeraskan manajer keamanan Azure IoT dengan Modul Platform Tepercaya (TPM) menggunakan perangkat lunak atau TPM virtual:

Buat dan provisikan perangkat IoT Edge dengan TPM virtual di Linux atau Linux di Windows.

Langkah berikutnya

Untuk mempelajari selengkapnya tentang mengamankan perangkat IoT Edge Anda, baca posting blog berikut: