lifelong learner — urip iku urup, currently working on accenture.

Prinsip Dasar Cara Mengamankan Internet of Things – IoT Indonesia

0
Degananda.com -

IoT_Security

Dalam melakukan implementasi solusi IoT, keamanan adalah salah satu hal yang paling penting mengingat pentignya kerahasiaan data telemetry yang dikirimkan oleh devices. Tanpa adannya tingkat keamanan yang baik maka dapat menyebabkan data rawan untuk bocor dan dimanfaatkan untuk tindak kejatahan.

Terdapat beberapa rekomendasi atau best practice yang dapat digunakan sebagai panduan untuk mengamankan solusi IoT dari microsoft.

Cara mengamankan internet of things – IoT Indonesia

1.Prinsip dasar

1.1 Up to date atas segala jenis software

Prinsip ini tidak hanya berlaku pada kategori IoT melainkan suatu prinsip umum yang harus diterapkan diberbagai jenis implementasi IT. Setiap infrastruktur yang ada pada solusi IoT harus dipastikan untuk menggunakan update paling ahir namun tanpa adannya issue compatibility (versi stable)

Contohnya adalah untuk menggunakan versi firmware, bahasa pemrograman, jenis protokol, versi server dan lain sebagainnya yang terbaru dan paling stabil. Firmware devices umumnya dapat diupdate dengan menggunakan FOTA(Firmware over the air). Meski menggunakan versi software terbaru tetapi tidak stable maka tidak ada artinnya dan akan memunculkan banyak masalah.

1.2 Mengamankan key authentikasi dengan aman

Setiap authentication key yang digunakan baik itu X.506 certificate atau hanya beruapa SAS Token haruslah di simpan dengan baik. Pastikan hanya orang-orang tertentu yang memiliki akses untuk mendapatkan atau melihat key tersebut.

Selain key certificate atau SAS token, data deviceId dari suatu device harus juga disimpan dengan baik karena deviceId merupakan identifier yang digunakan oleh devices untuk dapat berkomunikasi dengan iothub. Setiap data telemetry yang dikirim dari device akan di identifikasi berdasarkan deviceId nya.

Jika deviceId ini tertempel pada bentuk fisik device maka diusahakan untuk dicopot karena dapat berbahaya , berpotensi untuk dapat diambil datannya (MoM) apabila certificatenya bocor.

1.3 Penggunaan SDK (Software development KIT) pada devices

Jika solusi IoT dibangun dengan menggunakan platform cloud misalnya azure, maka disarankan untuk menggunakan device SDK dalam membangun koneksi antara device ke server/iothub (D2C/device to cloud).

Penggunaan device SDK ini tidak mandatory atau wajib tetapi disaranakan karena pertukaran data dari device ke server (D2C) juga dapat dilakukan menggunakan beberapa protokol yang tersedia (tanpa deviceSDK) contohnya MQTT dan HTTPS.

Tentunnya untuk hal ini akan bergantung pada karakteristik project yang sedang dihadapi. Tetapi penggunaan device SDK sangat direkomedasikan karena lebih aman

2. IAM – Identity and Access Management

IAM adalah suatu bentuk manajemen hak akses terhadap komponen-komponen yang ada pada layanan cloud dalam hal ini khususnya layanan-layanan cloud yang berhubungan dengan internet of things (IoT).

2.1 Buat kontrol akses untuk IoThub

IoThub adalah gerbang pertama atau endpoint yang digunakan oleh iot devices untuk mengirimkan data telemetry.  Umumnya, iot devices hanya memiliki satu buah endpoint tetap ada juga beberapa iot devices yang memiliki lebih dari satu endpoint. Biasannya endpoint kedua tersebut akan digunakan jika endpoint pertama tidak dapat diakses.

Pada kasus azure iothub, kontrol akses (access control) ini akan berhubungan dengan keys yang mampu mengizinkan siapapun yang memiliki key dapat melakukan beberapa aktivitas (pada iothub), terdapat empat aktitivias yang diatur yakni :

  1. Registry read – artinnya pemegang key dapat melihat registry yang ada contohnya dapat melihat daftar iot devices beserta dengan detail dari devices twin yang terdaftar pada iothub.
  2. Registry read & write – artinnya pemegang key dapat melihat dan mengubah registry yang ada contohnya dapat melihat daftar iot devices beserta dengan detail dari devices twin yang terdaftar pada iothub serta menambahkan ataupun menghapus devices tersebut.
  3. ServiceConnect – pemegang key mendapatkan hak akses untuk terhubung dengan iothub backend. Contohnya disini pemegang key dapat menerima data dari devices (devices to cloud, D2C). Sebagai ilustrasi terdapat aplikasi backend yang dibangun dengan nodejs yang akan membaca data dari devices yang dikirimkan ke iothub/eventhub maka membutuhkan permission serviceConnect ini.
  4. deviceConnect – vice versa dari service connect, pemegang key mendapatkan akses untuk terhubung dengan devices. Contohnya mengirimkan message atau perintah dari cloud ke devices(Could to devices, C2D) untuk immobilizer.

Empat hak/privilages aktitivas pada iothub diatas dapat diberikan oleh administrator cloud.

2.2 Buat kontrol akses untuk backend service (downstream pipeline)

Selain hak akses pada iothub,  menentukan hak akses terhadap backend service / cloud service lainnya yang akan mengkonsumsi data dari iothub juga tidak kalah penting. Hak akses konsumsi data dari iothub tersebut juga harus didefinisikan.  Contoh lima layanan backend services dari microsoft azure yang dapat mengkonsumsi data dari iothub adalah

  • Blob storage
  • Stream Analytics
  • Cosmosdb
  • App Service
  • Logic Apps

 

(Visited 8 times, 1 visits today)
Please follow and like us:

Leave a Reply