Bagikan melalui


Autentikasi untuk Databricks CLI

Catatan

Informasi ini berlaku untuk Databricks CLI versi 0.205 ke atas, yang ada di Pratinjau Umum. Untuk menemukan versi Databricks CLI Anda, jalankan databricks -v.

Artikel ini menjelaskan cara menyiapkan autentikasi antara Databricks CLI dan akun dan ruang kerja Azure Databricks Anda. Lihat Apa itu Databricks CLI?.

Artikel ini mengasumsikan bahwa Anda telah menginstal Databricks CLI. Lihat Menginstal atau memperbarui Databricks CLI.

Sebelum dapat menjalankan perintah Databricks CLI, Anda harus menyiapkan autentikasi antara CLI Databricks dan akun, ruang kerja, atau kombinasi Azure Databricks, tergantung pada jenis perintah CLI yang ingin Anda jalankan.

Anda harus mengautentikasi Databricks CLI ke sumber daya yang relevan pada waktu proses untuk menjalankan perintah otomatisasi Azure Databricks dalam akun atau ruang kerja Azure Databricks. Bergantung pada apakah Anda ingin memanggil perintah tingkat ruang kerja Azure Databricks, perintah tingkat akun Azure Databricks, atau keduanya, Anda harus mengautentikasi ke ruang kerja, akun, atau keduanya Azure Databricks. Untuk daftar grup perintah CLI tingkat ruang kerja dan tingkat akun Azure Databricks, jalankan perintah databricks -h. Untuk daftar operasi REST API tingkat ruang kerja dan tingkat akun Azure Databricks yang dicakup oleh perintah Databricks CLI, lihat Databricks REST API.

Catatan

Databricks CLI menerapkan standar autentikasi terpadu klien Databricks, pendekatan arsitektur terkonsolidasi dan konsisten serta terprogram untuk autentikasi. Pendekatan ini membantu menyiapkan dan mengotomatiskan autentikasi dengan Azure Databricks lebih terpusat dan dapat diprediksi. Ini memungkinkan Anda mengonfigurasi autentikasi Azure Databricks sekali lalu menggunakan konfigurasi tersebut di beberapa alat dan SDK Azure Databricks tanpa perubahan konfigurasi autentikasi lebih lanjut. Untuk informasi selengkapnya tentang standar ini, lihat Autentikasi terpadu klien Databricks.

Bagian berikut ini menyediakan informasi tentang cara menyiapkan autentikasi antara Databricks CLI dan Azure Databricks:

Autentikasi token akses pribadi Azure Databricks

Autentikasi token akses pribadi Azure Databricks menggunakan token akses pribadi Azure Databricks untuk mengautentikasi entitas Azure Databricks target, seperti akun pengguna Azure Databricks. Lihat Autentikasi token akses pribadi Azure Databricks.

Catatan

Anda tidak dapat menggunakan autentikasi token akses pribadi Azure Databricks untuk mengautentikasi dengan akun Azure Databricks, karena perintah tingkat akun Azure Databricks tidak menggunakan token akses pribadi Azure Databricks untuk autentikasi. Untuk mengautentikasi dengan akun Azure Databricks, pertimbangkan untuk menggunakan salah satu jenis autentikasi berikut:

Untuk membuat token akses pribadi, lakukan hal berikut:

  1. Di ruang kerja Azure Databricks Anda, klik nama pengguna Azure Databricks Anda di bilah atas, lalu pilih Pengaturan dari menu drop-down.
  2. Klik Pengembang.
  3. Di samping Token akses, klik Kelola.
  4. Klik Buat token baru.
  5. (Opsional) Masukkan komentar yang membantu Anda mengidentifikasi token ini di masa mendatang, dan mengubah masa pakai default token selama 90 hari. Untuk membuat token tanpa masa pakai (tidak disarankan), biarkan kotak Seumur Hidup (hari) kosong (kosong).
  6. Klik Buat.
  7. Salin token yang ditampilkan ke lokasi aman, lalu klik Selesai.

Catatan

Pastikan untuk menyimpan token yang disalin di lokasi yang aman. Jangan bagikan token yang Anda salin dengan orang lain. Jika Anda kehilangan token yang disalin, Anda tidak dapat meregenerasi token yang sama persis. Sebagai gantinya, Anda harus mengulangi prosedur ini untuk membuat token baru. Jika Anda kehilangan token yang disalin, atau Anda yakin bahwa token telah disusupi, Databricks sangat menyarankan agar Anda segera menghapus token tersebut dari ruang kerja Anda dengan mengklik ikon tempat sampah (Cabut) di samping token di halaman Token akses.

Jika Anda tidak dapat membuat atau menggunakan token di ruang kerja, ini mungkin karena administrator ruang kerja Anda telah menonaktifkan token atau belum memberi Anda izin untuk membuat atau menggunakan token. Lihat administrator ruang kerja Anda atau berikut ini:

Untuk mengonfigurasi dan menggunakan autentikasi token akses pribadi Azure Databricks, lakukan hal berikut:

Catatan

Prosedur berikut membuat profil konfigurasi Azure Databricks dengan nama DEFAULT. Jika Anda sudah memiliki DEFAULT profil konfigurasi yang ingin Anda gunakan, lewati prosedur ini. Jika tidak, prosedur ini menimpa profil konfigurasi Anda yang DEFAULT ada. Untuk melihat nama dan host profil konfigurasi yang ada, jalankan perintah databricks auth profiles.

Untuk membuat profil konfigurasi dengan nama selain DEFAULT, tambahkan --profile <configuration-profile-name> atau -p <configuration-profile-name> ke akhir perintah berikut databricks configure , ganti <configuration-profile-name> dengan nama profil konfigurasi baru.

  1. Gunakan Databricks CLI untuk menjalankan perintah berikut:

    databricks configure
    
  2. Untuk Permintaan Host Databricks, masukkan URL per ruang kerja Azure Databricks Anda, misalnya https://adb-1234567890123456.7.azuredatabricks.net.

  3. Untuk perintah Token Akses Pribadi, masukkan token akses pribadi Azure Databricks untuk ruang kerja Anda.

    Setelah Anda memasukkan token akses pribadi Azure Databricks, profil konfigurasi yang sesuai ditambahkan ke file Anda .databrickscfg . Jika Databricks CLI tidak dapat menemukan file ini di lokasi defaultnya, data akan membuat file ini untuk Anda terlebih dahulu lalu menambahkan profil konfigurasi ini ke file baru. Lokasi default untuk file ini ada di folder (beranda pengguna) Anda ~ di Unix, Linux, atau macOS, atau folder (beranda pengguna) Anda %USERPROFILE% di Windows.

  4. Anda sekarang dapat menggunakan opsi atau Databricks CLI --profile diikuti dengan nama profil konfigurasi Anda, sebagai bagian dari panggilan perintah Databricks CLI, misalnya databricks clusters list -p <configuration-profile-name>.-p

Autentikasi mesin-ke-mesin (M2M) OAuth

Alih-alih mengautentikasi dengan Azure Databricks dengan menggunakan autentikasi token akses pribadi Azure Databricks, Anda dapat menggunakan autentikasi OAuth. OAuth menyediakan token dengan waktu kedaluwarsa yang lebih cepat daripada token akses pribadi Azure Databricks, dan menawarkan pembatalan dan cakupan sesi sisi server yang lebih baik. Karena token akses OAuth kedaluwarsa dalam waktu kurang dari satu jam, ini mengurangi risiko yang terkait dengan pemeriksaan token secara tidak sengaja ke kontrol sumber. Lihat juga autentikasi mesin-ke-mesin (M2M) OAuth.

Untuk mengonfigurasi dan menggunakan autentikasi M2M OAuth, lakukan hal berikut:

  1. Selesaikan instruksi penyiapan autentikasi M2M OAuth. Lihat autentikasi komputer-ke-mesin (M2M) OAuth

  2. Buat atau identifikasi profil konfigurasi Azure Databricks dengan bidang berikut dalam file Anda.databrickscfg. Jika Anda membuat profil, ganti tempat penampung dengan nilai yang sesuai.

    Untuk perintah tingkat akun, atur nilai berikut dalam file Anda .databrickscfg :

    [<some-unique-configuration-profile-name>]
    host          = <account-console-url>
    account_id    = <account-id>
    client_id     = <service-principal-client-id>
    client_secret = <service-principal-oauth-secret>
    

    Untuk perintah tingkat ruang kerja, atur nilai berikut dalam file Anda .databrickscfg :

    [<some-unique-configuration-profile-name>]
    host          = <workspace-url>
    client_id     = <service-principal-client-id>
    client_secret = <service-principal-oauth-secret>
    

    Catatan

    Lokasi default untuk .databrickscfg file berada di direktori beranda pengguna. Ini ~ untuk Linux dan macOS, dan %USERPROFILE% untuk Windows.

  3. Gunakan opsi atau -p Databricks CLI --profile diikuti dengan nama profil konfigurasi Anda sebagai bagian dari panggilan perintah Databricks CLI, misalnya, databricks account groups list -p <configuration-profile-name> atau databricks clusters list -p <configuration-profile-name>.

    Tip

    Tekan Tab setelah --profile atau -p untuk menampilkan daftar profil konfigurasi yang tersedia untuk dipilih, alih-alih memasukkan nama profil konfigurasi secara manual.

Autentikasi pengguna ke komputer (U2M) OAuth

Alih-alih mengautentikasi dengan Azure Databricks dengan menggunakan autentikasi token, Anda dapat menggunakan autentikasi OAuth. OAuth menyediakan token dengan waktu kedaluwarsa yang lebih cepat daripada token akses pribadi Azure Databricks, dan menawarkan pembatalan dan cakupan sesi sisi server yang lebih baik. Karena token akses OAuth kedaluwarsa dalam waktu kurang dari satu jam, ini mengurangi risiko yang terkait dengan pemeriksaan token secara tidak sengaja ke kontrol sumber. Lihat juga autentikasi pengguna-ke-mesin (U2M) OAuth.

Untuk mengonfigurasi dan menggunakan autentikasi OAuth U2M, lakukan hal berikut:

  1. Sebelum memanggil perintah tingkat akun Azure Databricks, Anda harus memulai manajemen token OAuth secara lokal dengan menjalankan perintah berikut. Perintah ini harus dijalankan secara terpisah untuk setiap akun yang ingin Anda jalankan perintahnya. Jika Anda tidak ingin memanggil operasi tingkat akun apa pun, lewati ke langkah 5.

    Dalam perintah berikut, ganti tempat penampung berikut:

    databricks auth login --host <account-console-url> --account-id <account-id>
    
  2. Databricks CLI meminta Anda untuk menyimpan URL konsol akun dan ID akun secara lokal sebagai profil konfigurasi Azure Databricks. Tekan Enter untuk menerima nama profil yang disarankan, atau masukkan nama profil baru atau yang sudah ada. Profil yang ada dengan nama yang sama ditimpa dengan URL konsol akun dan ID akun ini.

    Untuk mendapatkan daftar profil yang ada, di terminal atau prompt perintah terpisah, jalankan perintah databricks auth profiles. Untuk melihat pengaturan profil tertentu yang sudah ada, jalankan perintah databricks auth env --profile <profile-name>.

  3. Di browser web Anda, selesaikan instruksi di layar untuk masuk ke akun Azure Databricks Anda.

  4. Untuk melihat nilai token OAuth saat ini dan tanda waktu kedaluwarsa yang akan datang, jalankan perintah databricks auth token --host <account-console-url> --account-id <account-id>.

  5. Sebelum memanggil perintah tingkat ruang kerja Azure Databricks, Anda harus memulai manajemen token OAuth secara lokal dengan menjalankan perintah berikut. Perintah ini harus dijalankan secara terpisah untuk setiap ruang kerja yang ingin Anda jalankan perintahnya.

    Dalam perintah berikut, ganti <workspace-url> dengan URL per ruang kerja Azure Databricks Anda, misalnya https://adb-1234567890123456.7.azuredatabricks.net.

    databricks auth login --host <workspace-url>
    
  6. Databricks CLI meminta Anda untuk menyimpan URL ruang kerja secara lokal sebagai profil konfigurasi Azure Databricks. Tekan Enter untuk menerima nama profil yang disarankan, atau masukkan nama profil baru atau yang sudah ada. Profil yang ada dengan nama yang sama ditimpa dengan URL ruang kerja ini.

    Untuk mendapatkan daftar profil yang ada, di terminal atau prompt perintah terpisah, jalankan perintah databricks auth profiles. Untuk melihat pengaturan profil tertentu yang sudah ada, jalankan perintah databricks auth env --profile <profile-name>.

  7. Di browser web Anda, selesaikan instruksi di layar untuk masuk ke ruang kerja Azure Databricks Anda.

  8. Untuk melihat nilai token OAuth saat ini dan tanda waktu kedaluwarsa yang akan datang, jalankan perintah databricks auth token --host <workspace-url>.

  9. Gunakan CLI --profile Databricks atau -p opsi diikuti dengan nama profil konfigurasi Anda, sebagai bagian dari panggilan perintah Databricks CLI, misalnya databricks account groups list -p <configuration-profile-name> atau databricks clusters list -p <configuration-profile-name>.

    Tip

    Anda dapat menekan Tab setelah --profile atau -p untuk menampilkan daftar profil konfigurasi yang tersedia untuk dipilih, alih-alih memasukkan nama profil konfigurasi secara manual.

Autentikasi identitas terkelola Azure

Autentikasi identitas terkelola Azure menggunakan identitas terkelola untuk sumber daya Azure (sebelumnya Managed Service Identities (MSI)) untuk autentikasi. Lihat Apa yang dimaksud dengan identitas terkelola untuk sumber daya Azure?. Lihat juga autentikasi identitas terkelola Azure.

Untuk membuat identitas terkelola yang ditetapkan pengguna Azure, lakukan hal berikut:

  1. Buat atau identifikasi Azure VM dan instal Databricks CLI di dalamnya, lalu tetapkan identitas terkelola Anda ke Azure VM dan akun, ruang kerja, atau keduanya Azure Databricks target Anda. Lihat Menyiapkan dan menggunakan autentikasi identitas terkelola Azure untuk otomatisasi Azure Databricks.

  2. Di Azure VM, buat atau identifikasi profil konfigurasi Azure Databricks dengan bidang berikut dalam file Anda.databrickscfg. Jika Anda membuat profil, ganti tempat penampung dengan nilai yang sesuai.

    Untuk perintah tingkat akun, atur nilai berikut dalam file Anda .databrickscfg :

    [<some-unique-configuration-profile-name>]
    host            = <account-console-url>
    account_id      = <account-id>
    azure_client_id = <azure-managed-identity-application-id>
    azure_use_msi   = true
    

    Untuk perintah tingkat ruang kerja, atur nilai berikut dalam file Anda .databrickscfg :

    [<some-unique-configuration-profile-name>]
    host            = <workspace-url>
    azure_client_id = <azure-managed-identity-application-id>
    azure_use_msi   = true
    

    Untuk perintah tingkat ruang kerja, jika identitas target belum ditambahkan ke ruang kerja, tentukan azure_workspace_resource_id bersama dengan ID sumber daya Azure, alih-alih host bersama dengan URL ruang kerja. Dalam hal ini, identitas target harus memiliki setidaknya izin Kontributor atau Pemilik pada sumber daya Azure.

    Catatan

    Lokasi default untuk .databrickscfg file berada di direktori beranda pengguna. Ini ~ untuk Linux dan macOS, dan %USERPROFILE% untuk Windows.

  3. Di Azure VM, gunakan CLI --profile Databricks atau -p opsi diikuti dengan nama profil konfigurasi Anda untuk mengatur profil agar Databricks dapat digunakan, misalnya, databricks account groups list -p <configuration-profile-name> atau databricks clusters list -p <configuration-profile-name>.

    Tip

    Anda dapat menekan Tab setelah --profile atau -p untuk menampilkan daftar profil konfigurasi yang tersedia untuk dipilih, alih-alih memasukkan nama profil konfigurasi secara manual.

Autentikasi perwakilan layanan ID Microsoft Entra

Autentikasi perwakilan layanan ID Microsoft Entra menggunakan kredensial perwakilan layanan ID Microsoft Entra untuk mengautentikasi. Untuk membuat dan mengelola perwakilan layanan untuk Azure Databricks, lihat Mengelola perwakilan layanan. Lihat juga autentikasi perwakilan layanan MICROSOFT Entra ID.

Untuk mengonfigurasi dan menggunakan autentikasi perwakilan layanan MICROSOFT Entra ID, Anda harus menginstal Azure CLI secara lokal. Anda juga harus melakukan hal berikut:

  1. Buat atau identifikasi profil konfigurasi Azure Databricks dengan bidang berikut dalam file Anda.databrickscfg. Jika Anda membuat profil, ganti tempat penampung dengan nilai yang sesuai.

    Untuk perintah tingkat akun, atur nilai berikut dalam file Anda .databrickscfg :

    [<some-unique-configuration-profile-name>]
    host                = <account-console-url>
    account_id          = <account-id>
    azure_tenant_id     = <azure-service-principal-tenant-id>
    azure_client_id     = <azure-service-principal-application-id>
    azure_client_secret = <azure-service-principal-client-secret>
    

    Untuk perintah tingkat ruang kerja, atur nilai berikut dalam file Anda .databrickscfg :

    [<some-unique-configuration-profile-name>]
    host                = <workspace-url>
    azure_tenant_id     = <azure-service-principal-tenant-id>
    azure_client_id     = <azure-service-principal-application-id>
    azure_client_secret = <azure-service-principal-client-secret>
    

    Untuk perintah tingkat ruang kerja, jika perwakilan layanan ID Microsoft Entra target belum ditambahkan ke ruang kerja, maka tentukan azure_workspace_resource_id bersama dengan ID sumber daya Azure, alih-alih host bersama dengan URL ruang kerja. Dalam hal ini, perwakilan layanan ID Microsoft Entra target harus memiliki setidaknya izin Kontributor atau Pemilik pada sumber daya Azure.

    Catatan

    Lokasi default untuk .databrickscfg file berada di direktori beranda pengguna. Ini ~ untuk Linux dan macOS, dan %USERPROFILE% untuk Windows.

  2. Gunakan CLI --profile Databricks atau -p opsi diikuti dengan nama profil konfigurasi Anda, sebagai bagian dari panggilan perintah Databricks CLI, misalnya databricks account groups list -p <configuration-profile-name> atau databricks clusters list -p <configuration-profile-name>.

    Tip

    Anda dapat menekan Tab setelah --profile atau -p untuk menampilkan daftar profil konfigurasi yang tersedia untuk dipilih, alih-alih memasukkan nama profil konfigurasi secara manual.

Autentikasi Azure CLI

Autentikasi Azure CLI menggunakan Azure CLI untuk mengautentikasi entitas yang masuk. Lihat juga autentikasi Azure CLI.

Untuk mengonfigurasi autentikasi Azure CLI, Anda harus melakukan hal berikut:

  1. Instal Azure CLI secara lokal.

  2. Gunakan Azure CLI untuk masuk ke Azure Databricks dengan menjalankan az login perintah . Lihat Masuk Azure CLI dengan akun pengguna Azure Databricks.

  3. Buat atau identifikasi profil konfigurasi Azure Databricks dengan bidang berikut dalam file Anda.databrickscfg. Jika Anda membuat profil, ganti tempat penampung dengan nilai yang sesuai.

    Untuk perintah tingkat akun, atur nilai berikut dalam file Anda .databrickscfg :

    [<some-unique-configuration-profile-name>]
    host       = <account-console-url>
    account_id = <account-id>
    

    Untuk perintah tingkat ruang kerja, atur nilai berikut dalam file Anda .databrickscfg :

    [<some-unique-configuration-profile-name>]
    host = <workspace-url>
    

    Catatan

    Lokasi default untuk .databrickscfg file berada di direktori beranda pengguna. Ini ~ untuk Linux dan macOS, dan %USERPROFILE% untuk Windows.

  4. Gunakan CLI --profile Databricks atau -p opsi diikuti dengan nama profil konfigurasi Anda, sebagai bagian dari panggilan perintah Databricks CLI, misalnya databricks account groups list -p <configuration-profile-name> atau databricks clusters list -p <configuration-profile-name>.

    Tip

    Anda dapat menekan Tab setelah --profile atau -p untuk menampilkan daftar profil konfigurasi yang tersedia untuk dipilih, alih-alih memasukkan nama profil konfigurasi secara manual.

Urutan evaluasi autentikasi

Setiap kali CLI Databricks perlu mengumpulkan pengaturan yang diperlukan untuk mencoba mengautentikasi dengan ruang kerja atau akun Azure Databricks, Databricks mencari pengaturan ini di lokasi berikut, dalam urutan berikut.

  1. Untuk perintah bundel , nilai bidang dalam file pengaturan bundel proyek. (File pengaturan bundel tidak mendukung penyertaan langsung nilai kredensial akses.)
  2. Nilai variabel lingkungan, seperti yang tercantum dalam artikel ini dan dalam variabel dan bidang Lingkungan untuk autentikasi terpadu klien.
  3. Nilai bidang profil konfigurasi dalam .databrickscfg file, seperti yang tercantum sebelumnya dalam artikel ini.

Setiap kali Databricks CLI menemukan pengaturan yang diperlukan yang diperlukan, Databricks CLI berhenti mencari di lokasi lain. Contohnya:

  • Databricks CLI membutuhkan nilai token akses pribadi Azure Databricks. DATABRICKS_TOKEN Variabel lingkungan diatur, dan .databrickscfg file juga berisi beberapa token akses pribadi. Dalam contoh ini, Databricks CLI menggunakan nilai DATABRICKS_TOKEN variabel lingkungan dan tidak mencari .databrickscfg file.
  • databricks bundle deploy -e development Perintah ini membutuhkan nilai token akses pribadi Azure Databricks. DATABRICKS_TOKEN Variabel lingkungan tidak diatur, dan .databrickscfg file berisi beberapa token akses pribadi. File pengaturan bundel proyek berisi development deklarasi lingkungan yang mereferensikan melalui bidangnya profile profil konfigurasi bernama DEV. Dalam contoh ini, Databricks CLI mencari .databrickscfg file untuk profil bernama DEV dan menggunakan nilai bidang profil tersebut token .
  • databricks bundle run -e development hello-job Perintah ini membutuhkan nilai token akses pribadi Azure Databricks. DATABRICKS_TOKEN Variabel lingkungan tidak diatur, dan .databrickscfg file berisi beberapa token akses pribadi. File pengaturan bundel proyek berisi development deklarasi lingkungan yang mereferensikan melalui bidangnya host URL ruang kerja Azure Databricks tertentu. Dalam contoh ini, Databricks CLI mencari profil konfigurasi dalam .databrickscfg file untuk profil yang berisi host bidang dengan URL ruang kerja yang cocok. Databricks CLI menemukan bidang yang cocok host lalu menggunakan nilai bidang profil tersebut token .