Cakupan rahasia

Mengelola rahasia dimulai dengan membuat cakupan rahasia. Cakupan rahasia adalah kumpulan rahasia yang diidentifikasi berdasarkan nama.

Ruang kerja dibatasi hingga maksimum 1000 cakupan rahasia. Hubungi tim dukungan Azure Databricks Anda jika Anda membutuhkan lebih banyak.

Catatan

Databricks merekomendasikan penyelarasan cakupan rahasia ke peran atau aplikasi daripada individu.

Gambaran Umum

Ada dua jenis cakupan rahasia: yang didukung Azure Key Vault dan didukung Databricks.

Cakupan yang didukung Azure Key Vault

Untuk mereferensikan rahasia yang disimpan di Azure Key Vault, Anda dapat membuat cakupan rahasia yang didukung oleh Azure Key Vault. Anda kemudian dapat memanfaatkan semua rahasia dalam instans Key Vault yang sesuai dari cakupan rahasia tersebut. Karena cakupan rahasia yang didukung Azure Key Vault adalah antarmuka baca-saja ke Key Vault, PutSecret dan DeleteSecretoperasi API Rahasia tidak diizinkan. Untuk mengelola rahasia di Azure Key Vault, Anda harus menggunakan AZURE Set Secret REST API atau portal Azure UI.

Cakupan yang didukung Databricks

Cakupan rahasia yang didukung Databricks disimpan dalam (didukung oleh) database terenkripsi yang dimiliki dan dikelola oleh Azure Databricks. Nama cakupan rahasia:

  • Harus bersifat unik dalam ruang kerja.
  • Kunci rahasia harus terdiri dari karakter alfanumerik, garis putus-putus, garis bawah, @, dan titik, serta tidak boleh melebihi 128 karakter.

Nama dianggap tidak sensitif dan dapat dibaca oleh semua pengguna di ruang kerja.

Anda membuat cakupan rahasia yang didukung Databricks menggunakan Databricks CLI (versi 0.205 ke atas). Atau, Anda dapat menggunakan Secrets API.

Izin cakupan

Cakupan dibuat dengan izin yang dikontrol oleh ACL rahasia. Secara default, cakupan dibuat dengan izin KELOLA untuk pengguna yang membuat cakupan ("pembuat"), yang memungkinkan pembuat membaca rahasia dalam cakupan, menulis rahasia ke cakupan, dan mengubah ACL untuk cakupan. Jika akun Anda memiliki paket Premium, Anda dapat menetapkan izin terperinci kapan saja setelah membuat cakupan. Untuk detailnya, lihat ACL Rahasia.

Anda juga dapat mengambil alih izin KELOLA default dan secara eksplisit diberikan kepada semua pengguna saat Membuat cakupan. Bahkan, Anda harus melakukan ini jika akun Anda tidak memiliki paket Premium.

Catatan

ACL rahasia berada di tingkat cakupan. Jika Anda menggunakan cakupan yang didukung Azure Key Vault, pengguna yang diberikan akses ke cakupan memiliki akses ke semua rahasia di Azure Key Vault. Untuk membatasi akses, gunakan instans brankas kunci Azure terpisah.

Buat cakupan rahasia yang didukung oleh Azure Key Vault

Bagian ini menjelaskan cara membuat cakupan rahasia yang didukung Azure Key Vault menggunakan portal Azure dan antarmuka pengguna ruang kerja Azure Databricks. Anda juga dapat membuat cakupan rahasia yang didukung Azure Key Vault menggunakan Databricks CLI.

Persyaratan

  • Anda harus memiliki peran Kontributor, Kontributor, atau Pemilik Key Vault pada instans brankas kunci Azure yang ingin Anda gunakan untuk mendukung cakupan rahasia.

    Jika Anda tidak memiliki instans brankas kunci, ikuti instruksi di Membuat Key Vault menggunakan portal Azure.

    Catatan

    Membuat cakupan rahasia yang didukung Azure Key Vault memerlukan peran Kontributor atau Pemilik pada instans brankas kunci Azure meskipun layanan Azure Databricks sebelumnya telah diberikan akses ke brankas kunci.

    Jika brankas kunci ada di penyewa yang berbeda dari ruang kerja Azure Databricks, pengguna Azure AD yang membuat cakupan rahasia harus memiliki izin untuk membuat perwakilan layanan di penyewa brankas kunci. Jika tidak, kesalahan berikut terjadi:

    Unable to grant read/list permission to Databricks service principal to KeyVault 'https://xxxxx.vault.azure.net/': Status code 403, {"odata.error":{"code":"Authorization_RequestDenied","message":{"lang":"en","value":"Insufficient privileges to complete the operation."},"requestId":"XXXXX","date":"YYYY-MM-DDTHH:MM:SS"}}
    

Mengonfigurasi instans brankas kunci Azure Anda untuk Azure Databricks

  1. Masuk ke Portal Microsoft Azure, temukan dan pilih instans brankas kunci Azure.

  2. Pilih tab Konfigurasi akses di bawah Pengaturan.

  3. Atur Model izin ke kebijakan akses Vault.

    Catatan

    Membuat peran cakupan rahasia yang didukung Azure Key Vault memberikan izin Dapatkan dan Daftar ke ID aplikasi untuk layanan Azure Databricks menggunakan kebijakan akses brankas kunci. Model izin kontrol akses berbasis peran Azure saat ini tidak didukung dengan Azure Databricks.

  4. Klik tab Jaringan di bagian Pengaturan.

  5. Di Firewall dan jaringan virtual atur Izinkan akses dari: untuk Mengizinkan akses publik dari jaringan virtual dan alamat IP tertentu.

    Di bawah Pengecualian, centang Izinkan layanan Microsoft tepercaya untuk melewati firewall ini.

    Catatan

    Anda juga dapat mengatur Izinkan akses dari: ke Izinkan akses publik dari semua jaringan.

Buat cakupan rahasia yang dicadangkan oleh Azure Key Vault

  1. Buka https://<databricks-instance>#secrets/createScope. Ganti <databricks-instance> dengan URL ruang kerja penyebaran Azure Databricks Anda. URL ini peka huruf besar/kecil (cakupan dalam createScope harus huruf besar).

    Buat cakupan

  2. Masukkan nama cakupan rahasia. Nama lingkup rahasia tidak peka huruf besar/kecil.

  3. Gunakan menu drop-down Kelola Utama untuk menentukan apakah Semua Pengguna memiliki izin KELOLA untuk cakupan rahasia ini atau hanya Pembuat cakupan rahasia (artinya, Anda).

    Izin KELOLA memungkinkan pengguna untuk membaca dan menulis ke cakupan rahasia ini, dan, dalam kasus akun pada paket Premium, untuk mengubah izin untuk cakupan.

    Akun Anda harus memiliki paket Premium agar Anda dapat memilih Pembuat. Ini adalah pendekatan yang direkomendasikan: berikan izin KELOLA kepada Pembuat saat Anda membuat cakupan rahasia, lalu tetapkan izin akses yang lebih terperinci setelah Anda menguji cakupan. Untuk contoh alur kerja, lihat Contoh alur kerja rahasia.

    Jika akun Anda memiliki Paket Standar, Anda harus mengatur izin KELOLA ke grup "Semua Pengguna". Jika Anda memilih Pembuat di sini, Anda akan melihat pesan kesalahan saat mencoba menyimpan cakupan.

    Untuk informasi selengkapnya tentang izin KELOLA, lihat ACL Rahasia.

  4. Masukkan Nama DNS (misalnya, https://databrickskv.vault.azure.net/) dan ID Sumber Daya, misalnya:

    /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/databricks-rg/providers/Microsoft.KeyVault/vaults/databricksKV
    

    Properti ini tersedia dari tab Properti Azure Key Vault di portal Microsoft Azure Anda.

    Tab Properti Azure Key Vault

  5. Klik tombol Buat.

  6. Gunakan perintah CLI Databricksdatabricks secrets list-scopes untuk memverifikasi bahwa cakupan berhasil dibuat.

Membuat cakupan rahasia yang didukung Databricks

Nama lingkup rahasia tidak peka huruf besar/kecil.

Untuk membuat cakupan menggunakan CLI Databricks:

databricks secrets create-scope <scope-name>

Secara default, cakupan dibuat dengan izin KELOLA untuk pengguna yang membuat cakupan. Jika akun Anda tidak memiliki paket Premium, Anda harus menggantinya secara default dan secara eksplisit memberikan izin KELOLA kepada "pengguna" (semua pengguna) saat Anda membuat cakupan:

databricks secrets create-scope <scope-name> --initial-manage-principal users

Anda juga dapat membuat cakupan rahasia yang didukung Databricks menggunakan Secrets API.

Jika akun Anda memiliki paket Premium, Anda dapat mengubah izin kapan saja setelah membuat cakupan. Untuk detailnya, lihat ACL Rahasia.

Setelah Anda membuat cakupan rahasia yang didukung Databricks, Anda dapat menambahkan rahasia.

Cantumkan cakupan rahasia

Untuk mencantumkan cakupan yang ada di ruang kerja menggunakan CLI:

databricks secrets list-scopes

Anda juga dapat mencantumkan cakupan yang ada menggunakan Secrets API.

Menghapus cakupan rahasia

Menghapus cakupan rahasia menghapus semua rahasia dan ACL yang diterapkan ke cakupan. Untuk menghapus cakupan menggunakan CLI, jalankan hal berikut:

databricks secrets delete-scope <scope-name>

Anda juga dapat menghapus cakupan rahasia menggunakan Secrets API.