Enkripsi data dengan Azure Machine Learning

Azure Pembelajaran Mesin bergantung pada berbagai layanan penyimpanan data Azure dan sumber daya komputasi saat Anda melatih model dan melakukan inferensi. Dalam artikel ini, pelajari tentang enkripsi data untuk setiap layanan baik saat tidak aktif maupun saat transit.

Untuk enkripsi tingkat produksi selama pelatihan, kami sarankan Anda menggunakan kluster komputasi Azure Pembelajaran Mesin. Untuk enkripsi tingkat produksi selama inferensi, kami sarankan Anda menggunakan Azure Kubernetes Service (AKS).

Instans komputasi Azure Pembelajaran Mesin adalah lingkungan dev/test. Saat Anda menggunakannya, kami sarankan Anda menyimpan file Anda, seperti buku catatan dan skrip, dalam berbagi file. Simpan data Anda di datastore.

Enkripsi saat tidak aktif

Proyek end-to-end Azure Pembelajaran Mesin terintegrasi dengan layanan seperti Azure Blob Storage, Azure Cosmos DB, dan Azure SQL Database. Artikel ini menjelaskan metode enkripsi untuk layanan tersebut.

Azure Blob Storage

Azure Pembelajaran Mesin menyimpan rekam jepret, output, dan log di akun Azure Blob Storage (akun penyimpanan default) yang terkait dengan ruang kerja Azure Pembelajaran Mesin dan langganan Anda. Semua data yang disimpan di Azure Blob Storage dienkripsi saat tidak aktif dengan kunci yang dikelola Microsoft.

Untuk informasi tentang cara menggunakan kunci Anda sendiri untuk data yang disimpan di Azure Blob Storage, lihat Enkripsi Azure Storage dengan kunci yang dikelola pelanggan di Azure Key Vault.

Data pelatihan biasanya juga disimpan di Azure Blob Storage sehingga target komputasi pelatihan dapat mengaksesnya. Azure Pembelajaran Mesin tidak mengelola penyimpanan ini. Penyimpanan ini dipasang ke target komputasi sebagai sistem file jarak jauh.

Jika Anda perlu memutar atau mencabut kunci, Anda dapat melakukannya kapan saja. Saat Anda memutar kunci, akun penyimpanan mulai menggunakan kunci baru (versi terbaru) untuk mengenkripsi data tidak aktif. Saat Anda mencabut (menonaktifkan) kunci, akun penyimpanan menangani permintaan yang gagal. Biasanya dibutuhkan satu jam agar rotasi atau pencabutan efektif.

Untuk informasi tentang meregenerasi kunci akses, lihat Meregenerasi kunci akses akun penyimpanan.

Azure Data Lake Storage

Catatan

Pada 29 Feb 2024, Azure Data Lake Storage Gen1 akan dihentikan. Untuk informasi selengkapnya, lihat pengumuman resmi. Jika Anda menggunakan Azure Data Lake Storage Gen1, pastikan untuk bermigrasi ke Azure Data Lake Storage Gen2 sebelum tanggal tersebut. Untuk mempelajari caranya, lihat Memigrasikan Azure Data Lake Storage dari Gen1 ke Gen2 dengan menggunakan portal Azure.

Kecuali Anda sudah memiliki akun Azure Data Lake Storage Gen1, Anda tidak dapat membuat akun baru.

Azure Data Lake Storage Gen2 dibangun di atas Azure Blob Storage dan dirancang untuk analitik big data di perusahaan. Data Lake Storage Gen2 digunakan sebagai datastore untuk Azure Pembelajaran Mesin. Seperti Azure Blob Storage, data tidak aktif dienkripsi dengan kunci yang dikelola Microsoft.

Untuk informasi tentang cara menggunakan kunci Anda sendiri untuk data yang disimpan di Azure Data Lake Storage, lihat Enkripsi Azure Storage dengan kunci yang dikelola pelanggan di Azure Key Vault.

Database hubungan Azure

Layanan Azure Pembelajaran Mesin mendukung data dari sumber data berikut.

Database Azure SQL

Enkripsi data transparan membantu melindungi Azure SQL Database dari ancaman aktivitas offline berbahaya dengan mengenkripsi data tidak aktif. Secara default, enkripsi data transparan diaktifkan untuk semua database SQL yang baru disebarkan yang menggunakan kunci yang dikelola Microsoft.

Untuk informasi tentang cara menggunakan kunci yang dikelola pelanggan untuk enkripsi data transparan, lihat Enkripsi data transparan Azure SQL Database.

Azure Database untuk PostgreSQL

Secara default, Azure Database for PostgreSQL menggunakan enkripsi Azure Storage untuk mengenkripsi data tidak aktif dengan menggunakan kunci yang dikelola Microsoft. Ini mirip dengan enkripsi data transparan di database lain, seperti SQL Server.

Untuk informasi tentang cara menggunakan kunci yang dikelola pelanggan untuk enkripsi data transparan, lihat Enkripsi data Server Tunggal Azure Database for PostgreSQL dengan kunci yang dikelola pelanggan.

Azure Database untuk MySQL

Azure Database for MySQL adalah layanan database relasional di Microsoft Cloud. Ini didasarkan pada mesin database MySQL Community Edition. Layanan Azure Database for MySQL menggunakan modul kriptografi tervalidasi FIPS 140-2 untuk enkripsi data Azure Storage saat tidak aktif.

Untuk mengenkripsi data dengan menggunakan kunci yang dikelola pelanggan, lihat Enkripsi data Azure Database for MySQL dengan kunci yang dikelola pelanggan.

Azure Cosmos DB

Pembelajaran Mesin Microsoft Azure menyimpan metadata dalam instans Azure Cosmos DB. Instans ini dikaitkan dengan langganan Microsoft yang dikelola azure Pembelajaran Mesin. Semua data yang disimpan di Azure Cosmos DB dienkripsi saat tidak digunakan dengan kunci yang dikelola Microsoft.

Saat Anda menggunakan kunci Anda sendiri (dikelola pelanggan) untuk mengenkripsi instans Azure Cosmos DB, instans Azure Cosmos DB yang dikelola Microsoft dibuat dalam langganan Anda. Instans ini dibuat dalam grup sumber daya yang dikelola Microsoft, yang berbeda dari grup sumber daya untuk ruang kerja Anda. Untuk informasi selengkapnya, lihat Kunci yang dikelola pelanggan untuk Azure Pembelajaran Mesin.

Azure Container Registry

Semua gambar kontainer di registri kontainer Anda (instans Azure Container Registry) dienkripsi saat tidak aktif. Azure secara otomatis mengenkripsi gambar sebelum menyimpannya dan mendekripsinya saat Pembelajaran Mesin Microsoft Azure menarik gambar.

Untuk menggunakan kunci yang dikelola pelanggan untuk mengenkripsi registri kontainer, Anda perlu membuat dan melampirkan registri kontainer saat menyediakan ruang kerja. Anda dapat mengenkripsi instans default yang dibuat pada saat provisi ruang kerja.

Penting

Azure Pembelajaran Mesin mengharuskan Anda mengaktifkan akun admin di registri kontainer Anda. Secara default, pengaturan ini dinonaktifkan saat Anda membuat registri kontainer. Untuk informasi tentang mengaktifkan akun admin, lihat Akun admin nanti di artikel ini.

Setelah Anda membuat registri kontainer untuk ruang kerja, jangan hapus. Menghapusnya akan merusak ruang kerja Pembelajaran Mesin Microsoft Azure Anda.

Untuk contoh pembuatan ruang kerja dengan menggunakan registri kontainer yang ada, lihat artikel berikut ini:

Azure Container Instances

Penting

Penyebaran ke Azure Container Instances mengandalkan Azure Pembelajaran Mesin Python SDK dan CLI v1.

Anda dapat mengenkripsi sumber daya Azure Container Instances yang disebarkan dengan menggunakan kunci yang dikelola pelanggan. Kunci yang dikelola pelanggan yang Anda gunakan untuk Container Instances dapat disimpan di brankas kunci untuk ruang kerja Anda.

BERLAKU UNTUK:SDK Python azureml v1

Untuk menggunakan kunci saat Anda menyebarkan model ke Container Instances, buat konfigurasi penyebaran baru dengan menggunakan AciWebservice.deploy_configuration(). Berikan informasi utama dengan menggunakan parameter berikut:

  • cmk_vault_base_url: URL brankas kunci yang berisi kunci.
  • cmk_key_name: Nama kunci.
  • cmk_key_version: Versi kunci.

Untuk informasi selengkapnya tentang membuat dan menggunakan konfigurasi penyebaran, lihat artikel berikut ini:

Untuk informasi selengkapnya tentang menggunakan kunci yang dikelola pelanggan dengan Container Instances, lihat Mengenkripsi data penyebaran.

Azure Kubernetes Service

Anda dapat mengenkripsi sumber daya Azure Kubernetes Service yang disebarkan dengan menggunakan kunci yang dikelola pelanggan kapan saja. Untuk informasi selengkapnya, lihat Membawa kunci Anda sendiri dengan Azure Kubernetes Service.

Proses ini memungkinkan Anda mengenkripsi data dan disk OS dari komputer virtual yang disebarkan di kluster Kubernetes.

Penting

Proses ini hanya berfungsi dengan AKS versi 1.17 atau yang lebih baru. Pembelajaran Mesin Microsoft Azure menambahkan dukungan untuk AKS 1.17 pada 13 Jan 2020.

Komputasi Pembelajaran Mesin

Kluster komputasi

Disk OS untuk setiap simpul komputasi yang disimpan di Azure Storage dienkripsi dengan kunci yang dikelola Microsoft di akun penyimpanan Pembelajaran Mesin Microsoft Azure. Target komputasi ini bersifat sementara, dan kluster biasanya menurunkan skala ketika tidak ada pekerjaan yang mengantre. Komputer virtual yang mendasar dideprovisi, dan disk OS dihapus.

Azure Disk Encryption tidak diaktifkan untuk ruang kerja secara default. Jika Anda membuat ruang kerja dengan parameter yang hbi_workspace diatur ke TRUE, disk OS dienkripsi.

Setiap komputer virtual juga memiliki disk sementara lokal untuk operasi OS. Jika mau, Anda dapat menggunakan disk untuk menggelar data pelatihan. Jika Anda membuat ruang kerja dengan parameter yang hbi_workspace diatur ke TRUE, disk sementara dienkripsi. Lingkungan ini berumur pendek (hanya selama pekerjaan Anda), dan dukungan enkripsi hanya terbatas pada kunci yang dikelola sistem.

Titik akhir online terkelola dan titik akhir batch menggunakan komputasi Azure Pembelajaran Mesin di ujung belakang, dan mereka mengikuti mekanisme enkripsi yang sama.

Hitung intance

Disk OS untuk instans komputasi dienkripsi dengan kunci yang dikelola Microsoft di akun penyimpanan Azure Pembelajaran Mesin. Jika Anda membuat ruang kerja dengan parameter yang hbi_workspace diatur ke TRUE, OS lokal dan disk sementara pada instans komputasi dienkripsi dengan kunci yang dikelola Microsoft. Enkripsi kunci yang dikelola pelanggan tidak didukung untuk OS dan disk sementara.

Untuk informasi selengkapnya, lihat Kunci yang dikelola pelanggan untuk Azure Pembelajaran Mesin.

Pabrik data Azure

Alur Azure Data Factory menyerap data untuk digunakan dengan Azure Pembelajaran Mesin. Azure Data Factory mengenkripsi data tidak aktif, termasuk definisi entitas dan data apa pun yang di-cache saat eksekusi sedang berlangsung. Secara default, data dienkripsi dengan kunci yang dikelola Microsoft yang dibuat secara acak yang ditetapkan secara unik ke pabrik data Anda.

Untuk informasi tentang cara menggunakan kunci yang dikelola pelanggan untuk enkripsi, lihat Mengenkripsi Azure Data Factory dengan kunci yang dikelola pelanggan.

Azure Databricks

Anda dapat menggunakan Azure Databricks di alur Azure Pembelajaran Mesin. Secara default, Databricks File System (DBFS) yang digunakan Azure Databricks dienkripsi melalui kunci yang dikelola Microsoft. Untuk mengonfigurasi Azure Databricks untuk menggunakan kunci yang dikelola pelanggan, lihat Mengonfigurasi kunci yang dikelola pelanggan pada DBFS default (akar).

Data yang dihasilkan Microsoft

Saat Anda menggunakan layanan seperti Azure Pembelajaran Mesin, Microsoft mungkin menghasilkan data sementara yang telah diproses sebelumnya untuk melatih beberapa model. Data ini disimpan di datastore di ruang kerja Anda, sehingga Anda dapat menerapkan kontrol akses dan enkripsi dengan tepat.

Anda mungkin juga ingin mengenkripsi informasi diagnostik yang dicatat dari titik akhir yang Anda sebarkan ke Dalam Application Insights.

Enkripsi saat transit

Azure Pembelajaran Mesin menggunakan Keamanan Lapisan Transportasi (TLS) untuk membantu mengamankan komunikasi internal antara berbagai layanan mikro Azure Pembelajaran Mesin. Semua akses Azure Storage juga terjadi melalui saluran aman.

Untuk membantu mengamankan panggilan eksternal yang dilakukan ke titik akhir penilaian, Azure Pembelajaran Mesin menggunakan TLS. Untuk informasi selengkapnya, lihat Menggunakan TLS untuk mengamankan layanan web melalui Azure Machine Learning.

Pengumpulan dan penanganan data

Untuk tujuan diagnostik, Microsoft mungkin mengumpulkan informasi yang tidak mengidentifikasi pengguna. Misalnya, Microsoft mungkin mengumpulkan nama sumber daya (misalnya, nama himpunan data atau nama eksperimen pembelajaran mesin) atau variabel lingkungan pekerjaan. Semua data tersebut disimpan melalui kunci yang dikelola Microsoft dalam penyimpanan yang dihosting di langganan milik Microsoft. Penyimpanan mengikuti kebijakan privasi standar Microsoft dan standar penanganan data. Data ini tetap berada dalam wilayah yang sama dengan ruang kerja Anda.

Sebaiknya jangan menyimpan informasi sensitif (seperti rahasia kunci akun) dalam variabel lingkungan. Microsoft mencatat, mengenkripsi, dan menyimpan variabel lingkungan. Demikian pula, saat Anda memberi nama pekerjaan, hindari menyertakan informasi sensitif seperti nama pengguna atau nama proyek rahasia. Informasi ini mungkin muncul di log telemetri yang dapat diakses oleh teknisi dukungan Microsoft.

Anda dapat menolak pengumpulan data diagnostik dengan mengatur parameter ke hbi_workspaceTRUE saat menyediakan ruang kerja. Fungsionalitas ini didukung saat Anda menggunakan Azure Pembelajaran Mesin Python SDK, Azure CLI, REST API, atau templat Azure Resource Manager.

Penyimpanan kredensial di Azure Key Vault

Azure Pembelajaran Mesin menggunakan instans Azure Key Vault yang terkait dengan ruang kerja untuk menyimpan kredensial berbagai jenis:

  • string koneksi terkait untuk akun penyimpanan
  • Kata sandi ke instans Azure Container Registry
  • Koneksi string ke penyimpanan data

Kata sandi dan kunci Secure Shell (SSH) untuk menghitung target seperti Azure HDInsight dan komputer virtual disimpan dalam brankas kunci terpisah yang terkait dengan langganan Microsoft. Azure Pembelajaran Mesin tidak menyimpan kata sandi atau kunci apa pun yang disediakan pengguna. Sebaliknya, ia menghasilkan, mengotorisasi, dan menyimpan kunci SSH-nya sendiri untuk terhubung ke komputer virtual dan HDInsight untuk menjalankan eksperimen.

Setiap ruang kerja memiliki identitas terkelola yang ditetapkan sistem terkait dengan nama yang sama dengan ruang kerja. Identitas terkelola ini memiliki akses ke semua kunci, rahasia, dan sertifikat di brankas kunci.

Langkah berikutnya