Mengamankan Azure Digital Twins

Artikel ini menjelaskan praktik terbaik keamanan Azure Digital Twins. Ini mencakup peran dan izin, identitas terkelola, akses jaringan privat dengan Azure Private Link, tag layanan, enkripsi data tidak aktif, dan Berbagi Sumber Daya Lintas Asal (CORS).

Untuk keamanan, Azure Digital Twins memungkinkan kontrol akses yang tepat atas data, sumber daya, dan tindakan tertentu dalam penyebaran Anda. Hal ini dilakukan melalui peran terperinci dan strategi manajemen izin yang disebut kontrol akses berbasis peran Azure (Azure RBAC).

Azure Digital Twins juga mendukung enkripsi data tidak aktif.

Peran dan izin dengan Azure RBAC

Azure RBAC disediakan untuk Azure Digital Twins melalui integrasi dengan MICROSOFT Entra ID.

Anda dapat menggunakan Azure RBAC untuk memberikan izin kepada perwakilan keamanan, yang mungkin berupa pengguna, grup, atau perwakilan layanan aplikasi. Prinsip keamanan diautentikasi oleh MICROSOFT Entra ID, dan menerima token OAuth 2.0 sebagai imbalannya. Token ini dapat digunakan untuk mengotorisasi permintaan akses ke instans Azure Digital Twins.

Autentikasi dan Otorisasi

Dengan MICROSOFT Entra ID, akses adalah proses dua langkah. Saat perwakilan keamanan (pengguna, grup, atau aplikasi) mencoba mengakses Azure Digital Twins, permintaan harus diautentikasi dan disahkan.

  1. Pertama, identitas prinsipal keamanan diautentikasi, dan token OAuth 2.0 dikembalikan.
  2. Selanjutnya, token diteruskan sebagai bagian dari permintaan ke layanan Azure Digital Twins, untukmengotorisasi akses ke sumber daya yang ditentukan.

Langkah autentikasi mengharuskan permintaan aplikasi apa pun untuk memuat token akses OAuth 2.0 saat runtime. Jika aplikasi berjalan dalam entitas Azure seperti aplikasi Azure Functions, aplikasi dapat menggunakan identitas terkelola untuk mengakses sumber daya. Baca selengkapnya tentang identitas terkelola di bagian berikutnya.

Langkah otorisasi mengharuskan peran Azure ditetapkan ke perwakilan keamanan. Peran yang ditugaskan kepada perwakilan keamanan menentukan izin yang akan dimiliki oleh perwakilan tersebut. Azure Digital Twins menyediakan peran Azure yang mencakup kumpulan izin untuk sumber daya Azure Digital Twins. Peran ini dijelaskan kemudian dalam artikel ini.

Untuk mempelajari selengkapnya tentang peran dan penetapan peran yang didukung di Azure, lihatMemahami berbagai peran dalam dokumentasi Azure RBAC.

Autentikasi dengan identitas terkelola

Identitas terkelola untuk sumber daya Azure adalah fitur lintas Azure yang memungkinkan Anda membuat identitas aman yang terkait dengan penyebaran ketika kode aplikasi Anda berjalan. Anda kemudian dapat mengaitkan identitas tersebut dengan peran kontrol akses, untuk memberikan izin khusus untuk mengakses sumber daya Azure tertentu yang dibutuhkan aplikasi Anda.

Dengan identitas terkelola, platform Azure mengelola identitas runtime ini. Anda tidak perlu menyimpan dan melindungi kunci akses dalam kode atau konfigurasi aplikasi Anda, baik untuk identitas itu sendiri, ataupun untuk sumber daya yang perlu Anda akses. Aplikasi klien Azure Digital Twins yang berjalan di dalam aplikasi Azure App Service tidak perlu menangani aturan dan kunci SAS, atau token akses lainnya. Aplikasi klien hanya memerlukan alamat titik akhir ruang nama Azure Digital Twins. Saat aplikasi terhubung, Azure Digital Twins mengikat konteks entitas terkelola kepada klien. Setelah dikaitkan dengan identitas terkelola, klien Azure Digital Twins Anda dapat melakukan semua operasi resmi. Otorisasi kemudian akan diberikan dengan mengaitkan entitas terkelola dengan peran Azure Digital Twins Azure (dijelaskan di bawah).

Otorisasi: Peran Azure untuk Azure Digital Twins

Azure menyediakan dua peran bawaan Azure untuk mengotorisasi akses ke API sarana data Azure Digital Twins. Anda dapat merujuk ke peran baik dengan nama atau dengan ID:

Peran bawaan Deskripsi ID
Pemilik Data Azure Digital Twins Memberikan akses penuh melalui sumber daya Azure Digital Twins bcd981a7-7f74-457b-83e1-cceb9e632ffe
Pembaca Data Azure Digital Twins Memberikan akses baca-saja ke sumber daya Azure Digital Twins d57506d4-4c8d-48b1-8587-93c323f6a5a3

Anda dapat menetapkan peran dengan dua cara:

Untuk langkah-langkah terperinci tentang menetapkan peran ke instans Azure Digital Twins, lihat Menyiapkan instans dan autentikasi. Untuk informasi selengkapnya tentang bagaimana peran bawaan ditentukan, lihat Memahami definisi peran dalam dokumentasi Azure RBAC.

Anda juga dapat membuat peran Azure kustom untuk instans Anda. Ini memungkinkan Anda untuk memberikan izin untuk tindakan tertentu di area data individual, termasuk kembar, perintah, hubungan, rute peristiwa, pekerjaan, model, dan kueri. Untuk informasi selengkapnya tentang peran kustom di Azure, lihat Peran kustom Azure.

Mengotomatisasi peran

Jika mengacu pada peran dalam skenario otomatis, disarankan untuk merujuknya dengan ID-tanda mereka daripada nama mereka. Nama-nama dapat berubah di antara rilis, tetapi ID tidak akan, menjadikannya referensi yang lebih stabil dalam otomatisasi.

Tip

Jika Anda menetapkan peran dengan cmdlet, seperti New-AzRoleAssignment (referensi), Anda dapat menggunakan -RoleDefinitionIdparameter alih-alih -RoleDefinitionNamemeneruskan ID alih-alih nama untuk peran tersebut.

Cakupan izin

Sebelum Anda menetapkan peran Azure ke perwakilan keamanan, tentukan cakupan akses yang harus dimiliki perwakilan keamanan. Praktik terbaik mendikte bahwa yang terbaik adalah memberikan cakupan yang paling sempit.

Daftar berikut ini menjelaskan tingkat ketika Anda dapat lingkup akses ke sumber daya Azure Digital Twins.

  • Model: Tindakan untuk sumber daya ini menentukan kontrol atas model yang diunggah di Azure Digital Twins.
  • Kueri Digital Twins Microsoft Azure Active Directory Graph: Tindakan untuk sumber daya ini menentukan kemampuan untuk menjalankan operasi kueri pada kembar digital dalam grafik Azure Digital Twins.
  • Digital Twin: Tindakan untuk sumber daya ini memberikan kontrol atas operasi CRUD pada kembar digital dalam grafik kembar.
  • Hubungan Digital Twin: Tindakan untuk sumber daya ini mendefinisikan kontrol atas operasi CRUD pada hubungan antara kembar digital dalam grafik kembar.
  • Rute peristiwa: Tindakan untuk sumber daya ini menentukan izin untuk merutekan peristiwa dari Azure Digital Twins ke layanan titik akhir seperti Event Hubs, Event Grid, atau Bus Layanan.

Memecahkan masalah izin

Jika pengguna mencoba melakukan tindakan yang tidak diizinkan oleh peran mereka, mereka mungkin menerima kesalahan dari pembacaan permintaan layanan 403 (Forbidden). Untuk informasi selengkapnya dan langkah-langkah pemecahan masalah, lihat Memecahkan masalah permintaan layanan gagal Azure Digital Twins: Kesalahan 403 (Terlarang).

Identitas terkelola untuk mengakses sumber daya lain

Menyiapkan identitas terkelola IDMicrosoft Entra untuk instans Azure Digital Twins dapat memungkinkan instans mengakses sumber daya yang dilindungi Microsoft Entra lainnya dengan mudah, seperti Azure Key Vault. Identitas dikelola oleh platform Azure, dan tidak mengharuskan Anda untuk menyediakan atau memutar rahasia apa pun. Untuk informasi selengkapnya tentang identitas terkelola di ID Microsoft Entra, lihat Identitas terkelola untuk sumber daya Azure.

Azure Digital Twins mendukung kedua jenis identitas terkelola, ditetapkan sistem, dan ditetapkan pengguna.

Anda dapat menggunakan salah satu jenis identitas terkelola ini untuk mengautentikasi ke titik akhir yang ditentukan khusus. Azure Digital Twins mendukung autentikasi berbasis identitas ke titik akhir untuk Azure Event Hubs dan tujuan Bus Layanan, dan ke titik akhir Kontainer Azure Storage untuk peristiwa dead-letter. Titik akhir Event Grid saat ini tidak didukung untuk identitas terkelola.

Untuk petunjuk tentang cara mengaktifkan identitas terkelola untuk titik akhir Azure Digital Twins yang dapat digunakan untuk merutekan peristiwa, lihat Opsi titik akhir: Autentikasi berbasis identitas.

Menggunakan layanan Microsoft tepercaya untuk merutekan peristiwa ke Azure Event Hubs dan titik akhir Bus Layanan

Azure Digital Twins dapat tersambung ke Azure Event Hubs dan Bus Layanan titik akhir untuk mengirim data peristiwa, menggunakan titik akhir publik sumber daya tersebut. Namun, jika sumber daya tersebut terikat ke VNet, konektivitas ke sumber daya diblokir secara default. Akibatnya, konfigurasi ini mencegah Azure Digital Twins mengirim data peristiwa ke sumber daya Anda.

Untuk mengatasinya, aktifkan konektivitas dari instans Azure Digital Twins Anda ke Azure Event Hubs atau Bus Layanan sumber daya melalui opsi layanan Microsoft tepercaya (lihat Layanan Microsoft Tepercaya untuk Azure Event Hubs dan Layanan Microsoft Tepercaya untuk Bus Layanan).

Anda harus menyelesaikan langkah-langkah berikut untuk mengaktifkan koneksi layanan Microsoft tepercaya.

  1. Instans Azure Digital Twins Anda harus menggunakan identitas terkelola yang ditetapkan sistem. Ini memungkinkan layanan lain untuk menemukan instans Anda sebagai layanan Microsoft tepercaya. Untuk petunjuk menyiapkan identitas yang dikelola sistem pada instans, lihat Mengaktifkan identitas terkelola untuk instans.
  2. Setelah identitas terkelola yang ditetapkan sistem disediakan, berikan izin untuk identitas terkelola instans Anda untuk mengakses Pusat Aktivitas atau titik akhir Bus Layanan Anda (fitur ini tidak didukung di Event Grid). Untuk instruksi menetapkan peran yang tepat, lihat Menetapkan peran Azure ke identitas.
  3. Untuk Azure Event Hubs dan titik akhir Bus Layanan yang memiliki konfigurasi firewall, pastikan Anda mengaktifkan pengaturan Izinkan layanan Microsoft tepercaya untuk melewati firewall ini.

Azure Private Link adalah layanan yang memungkinkan Anda mengakses sumber daya Azure (seperti Azure Event Hubs, Azure Storage, dan Azure Cosmos DB) dan layanan pelanggan dan mitra yang dihosting Azure melalui titik akhir privat di Azure Virtual Network (VNet) Anda.

Demikian pula, Anda dapat menggunakan titik akhir akses privat untuk instans Azure Digital Twins Anda untuk memungkinkan klien yang terletak di jaringan virtual Anda memiliki akses REST API yang aman ke instans melalui Private Link. Mengonfigurasi titik akhir akses privat untuk instans Azure Digital Twins memungkinkan Anda mengamankan instans Azure Digital Twins dan menghilangkan paparan publik. Selain itu, ini membantu menghindari penyelundupan data dari Azure Virtual Network (VNet) Anda.

Titik akhir akses privat menggunakan alamat IP dari ruang alamat Azure VNet Anda. Lalu lintas jaringan antara klien di jaringan privat Anda dan instans Azure Digital Twins melintasi VNet dan Private Link di jaringan tulang punggung Microsoft, menghilangkan keterpaparan ke internet publik. Berikut adalah representasi visual dari sistem ini:

Diagram showing a network that is a protected VNET with no public cloud access, connecting through Private Link to an Azure Digital Twins instance.

Mengonfigurasi titik akhir akses privat untuk instans Azure Digital Twins memungkinkan Anda mengamankan instans Azure Digital Twins dan menghilangkan paparan publik, serta menghindari penyelundupan data dari VNet Anda.

Untuk petunjuk tentang cara menyiapkan Private Link untuk Azure Digital Twins, lihat Mengaktifkan akses privat dengan Private Link.

Catatan

Akses jaringan privat dengan Azure Private Link berlaku untuk mengakses Azure Digital Twins melalui REST API-nya. Fitur ini tidak berlaku untuk skenario keluar menggunakan fitur perutean peristiwa Azure Digital Twins.

Pertimbangan Desain

Saat bekerja dengan Private Link for Azure Digital Twins, berikut adalah beberapa faktor yang mungkin ingin Anda pertimbangkan:

  • Harga: Untuk detail harga, lihat Harga Azure Private Link.
  • Ketersediaan regional: Private Link untuk Azure Digital Twins tersedia di semua wilayah Azure tempat Azure Digital Twins tersedia.
  • Azure Digital Twins Explorer: Azure Digital Twins Explorer tidak dapat mengakses instans Azure Digital Twins yang menonaktifkan akses publik. Namun, Anda dapat menggunakan fungsi Azure untuk menyebarkan basis kode Azure Digital Twins Explorer secara privat di cloud. Untuk petunjuk tentang cara melakukannya, lihat Azure Digital Twins Explorer: Berjalan di cloud.
  • Jumlah maksimum titik akhir privat per instans Azure Digital Twins: 10
  • Batasan lainnya: Untuk informasi selengkapnya tentang batas Private Link, lihat dokumentasi Azure Private Link: Batasan.

Tag layanan

Tag layanan mewakili sekelompok awalan alamat IP dari layanan Azure tertentu. Microsoft mengelola awalan alamat yang di mencakup tag layanan dan secara otomatis memperbarui tag layanan saat alamat berubah, meminimalkan kompleksitas pembaruan yang sering diterapkan pada aturan keamanan jaringan. Untuk informasi selengkapnya tentang tag layanan, lihat Tag jaringan virtual.

Anda dapat menggunakan tag layanan untuk menentukan kontrol akses jaringan pada grup keamanan jaringan atau Azure Firewall, dengan menggunakan tag layanan sebagai pengganti alamat IP tertentu saat Membuat aturan keamanan. Dengan menentukan nama tag layanan (dalam hal ini, AzureDigitalTwins) di bidang sumber atau tujuan aturan yang sesuai, Anda dapat mengizinkan atau menolak lalu lintas untuk layanan yang sesuai.

Di bawah ini adalah detail tag layanan AzureDigitalTwins.

Tag Tujuan Dapat menggunakan inbound atau outbound? Dapat dijalankan secara regional? Bisa digunakan dengan Azure Firewall?
AzureDigitalTwins Azure Digital Twins
Catatan: Tag atau alamat IP yang dicakup oleh tag ini dapat digunakan untuk membatasi akses ke titik akhir yang dikonfigurasi untukrute peristiwa.
Masuk Tidak Ya

Menggunakan tag layanan untuk mengakses titik akhir rute peritiwa

Berikut adalah langkah-langkah untuk mengakses titik akhir rute peristiwa menggunakan tag layanan dengan Azure Digital Twins.

  1. Pertama, unduh referensi file JSON ini yang memperlihatkan rentang IP Azure dan tag layanan: Rentang IP Azure dan Tag Layanan.

  2. Cari rentang IP "AzureDigitalTwins" dalam file JSON.

  3. Lihat dokumentasi sumber daya eksternal yang tersambung ke titik akhir (misalnya, Event Grid, Event Hubs, Bus Layanan, atau Azure Storage untuk peristiwa surat mati) untuk melihat cara mengatur filter IP untuk sumber daya tersebut.

  4. Atur filter IP pada sumber daya eksternal menggunakan rentang IP dari Langkah 2.

  5. Perbarui rentang IP secara berkala sesuai diperlukan. Rentang dapat berubah dari waktu ke waktu, jadi ada baiknya untuk memeriksanya secara teratur dan menyegarkannya ketika diperlukan. Frekuensi pembaruan ini dapat bervariasi, tetapi ada baiknya untuk memeriksanya seminggu sekali.

Enkripsi data tidak aktif

Azure Digital Twins menyediakan enkripsi data tidak aktif dan dalam perjalanan seperti yang tertulis di pusat data kami, dan mendekripsinya untuk Anda saat Anda mengaksesnya. Enkripsi ini tejadi dengan menggunakan kunci enkripsi terkelola Microsoft.

Berbagi Sumber Daya Lintas Asal (CORS)

Azure Digital Twins saat ini tidak mendukung Berbagi Sumber Daya Lintas Asal (CORS). Akibatnya, jika Anda memanggil REST API dari aplikasi browser, antarmuka API Management (APIM), atau konektor Power Apps , Anda mungkin melihat kesalahan kebijakan.

Untuk mengatasi kesalahan ini, Anda dapat melakukan salah satu tindakan berikut:

  • Strip header CORS Access-Control-Allow-Origin dari pesan. Header ini menunjukkan apakah respons dapat dibagikan.
  • Atau, buat proxy CORS dan buat permintaan Azure Digital Twins REST API melaluinya.

Langkah berikutnya