Mengautentikasi dengan token akses pribadi Azure Databricks (warisan)

Azure Databricks token akses pribadi (PATs) memungkinkan Anda mengautentikasi ke sumber daya dan API di tingkat ruang kerja. Anda dapat menyimpannya dalam variabel lingkungan atau profil Azure Databricks konfigurasi. Setiap PAT hanya berlaku untuk satu ruang kerja, dan pengguna dapat membuat hingga 600 PATs per ruang kerja. Azure Databricks secara otomatis mencabut PAT yang belum digunakan selama 90 hari.

Penting

Jika memungkinkan, Databricks merekomendasikan penggunaan OAuth alih-alih PATs untuk autentikasi akun pengguna karena OAuth memberikan keamanan yang lebih kuat. Untuk mempelajari cara mengautentikasi dengan akun pengguna Databricks menggunakan OAuth, lihat Otorisasi akses pengguna ke Azure Databricks dengan OAuth.

Anda tidak dapat menggunakan token akses pribadi untuk mengotomatiskan fungsionalitas Azure Databricks account-level. Sebagai gantinya, gunakan token Microsoft Entra ID admin akun Azure Databricks. Azure Databricks admin akun dapat menjadi pengguna atau perwakilan layanan. Untuk informasi selengkapnya, lihat:

Membuat token akses pribadi untuk pengguna ruang kerja

Untuk membuat token akses pribadi untuk pengguna ruang kerja Azure Databricks Anda, lakukan hal berikut:

  1. Di ruang kerja Azure Databricks Anda, klik nama pengguna Anda di bilah atas dan pilih Settings.
  2. Klik Pengembang.
  3. Di samping Token akses, klik Kelola.
  4. Klik Buat token baru.
  5. Masukkan komentar yang membantu Anda mengidentifikasi token ini di masa mendatang.
  6. Atur masa pakai token dalam hari. Lihat Mengatur masa pakai maksimum token akses pribadi baru.
  7. Untuk membatasi izin token, pilih jenis token dan tambahkan cakupan API. Lihat Token akses pribadi dengan cakupan spesifik.
  8. Klik Hasilkan.
  9. Salin token yang ditampilkan ke lokasi aman, lalu klik Selesai. Simpan token dengan aman dan jangan bagikan. Jika Anda kehilangannya, Anda harus membuat token baru.

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

Token akses pribadi terlingkup

Token akses pribadi terlingkup membatasi izin token untuk operasi API tertentu. Alih-alih memberikan akses ruang kerja penuh, Anda menetapkan satu atau beberapa cakupan API, seperti sql, , unity-catalogatau scim, yang membatasi operasi REST API yang dapat dipanggil token.

Peringatan

Token dengan authentication cakupan dapat membuat token baru dengan cakupan apa pun. Berikan cakupan ini hanya untuk token yang perlu mengelola token lain.

Untuk membuat token terlingkup di UI ruang kerja, pilih jenis token dan tambahkan cakupan API saat Anda membuat token baru. Jika Anda tidak menetapkan cakupan apa pun, token akan mempertahankan izin penuh dari identitas pembuat.

Untuk daftar lengkap cakupan dan operasi API terkait, lihat Cakupan API.

Membuat token akses pribadi untuk perwakilan layanan

Perwakilan layanan dapat membuat token akses pribadi untuk dirinya sendiri.

  1. Jalankan perintah berikut untuk menghasilkan token akses:

    databricks tokens create \
      --lifetime-seconds <lifetime-seconds> \
      -p <profile-name>
    

    Ganti nilai berikut:

    • <lifetime-seconds>: Masa pakai token dalam detik, seperti 86400 selama 1 hari. Diatur ke maksimum ruang kerja (biasanya 730 hari).
    • <profile-name>: Profil konfigurasi dengan informasi autentikasi. Secara default menjadi DEFAULT.
  2. Salin token_value dari respons, yang merupakan token akses untuk perwakilan layanan Anda. Simpan token dengan aman dan jangan bagikan. Jika Anda kehilangannya, Anda harus membuat token baru.

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

Melakukan autentikasi token akses pribadi

Untuk mengonfigurasi autentikasi token akses pribadi Azure Databricks, atur variabel lingkungan terkait berikut, bidang .databrickscfg, bidang Terraform, atau bidang Config:

  • Host Azure Databricks, ditentukan sebagai URL Azure Databricks per-workspace target, misalnya https://adb-1234567890123456.7.azuredatabricks.net.
  • Token akses pribadi Azure Databricks untuk akun pengguna Azure Databricks.

Untuk melakukan Azure Databricks autentikasi token akses pribadi, integrasikan hal berikut dalam kode Anda, berdasarkan alat atau SDK yang berpartisipasi:

Lingkungan

Untuk menggunakan variabel lingkungan untuk jenis autentikasi Azure Databricks tertentu dengan alat atau SDK, maka lihat Otorisasi akses ke sumber daya Azure Databricks atau dokumentasi alat atau SDK. Lihat juga Variabel dan bidang lingkungan untuk autentikasi terpadu dan prioritas metode Autentikasi.

Atur variabel lingkungan berikut:

  • DATABRICKS_HOST, atur ke URL Azure Databricks per-workspace, misalnya https://adb-1234567890123456.7.azuredatabricks.net.
  • DATABRICKS_TOKEN, diatur menjadi string token.

Profil

Buat atau identifikasi profil Azure Databricks configuration dengan bidang berikut dalam file .databrickscfg Anda. Jika Anda membuat profil, ganti placeholder dengan nilai sesuai. Untuk menggunakan profil dengan alat atau SDK, lihat Mengotorisasi akses ke sumber daya Azure Databricks atau dokumentasi alat atau SDK tersebut. Lihat juga Variabel dan bidang lingkungan untuk autentikasi terpadu dan prioritas metode Autentikasi.

Atur nilai berikut dalam file .databrickscfg Anda. Dalam hal ini, host adalah URL Azure Databricks per-workspace, misalnya https://adb-1234567890123456.7.azuredatabricks.net:

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

Alih-alih mengatur nilai secara manual, Anda dapat menggunakan Databricks CLI untuk mengatur nilai-nilai ini sebagai gantinya:

Catatan

Prosedur berikut menggunakan Databricks CLI untuk membuat profil konfigurasi Azure Databricks dengan nama DEFAULT. Jika Anda sudah memiliki profil konfigurasi DEFAULT, prosedur ini akan menimpa profil konfigurasi Anda yang ada DEFAULT.

Untuk memeriksa apakah Anda sudah memiliki DEFAULT profil konfigurasi, dan untuk melihat pengaturan profil ini jika ada, gunakan Databricks CLI untuk menjalankan perintah databricks auth env --profile DEFAULT.

Untuk membuat profil konfigurasi dengan nama selain DEFAULT, ganti DEFAULT bagian --profile DEFAULT dalam perintah berikut databricks configure dengan nama yang berbeda untuk profil konfigurasi.

  1. Gunakan Databricks CLI untuk membuat profil konfigurasi Azure Databricks bernama DEFAULT yang menggunakan autentikasi token akses pribadi Azure Databricks. Untuk melakukannya, jalankan perintah berikut:

    databricks configure --profile DEFAULT
    
  2. Untuk perintah Databricks Host, masukkan URL Azure Databricks per-workspace Anda, misalnya https://adb-1234567890123456.7.azuredatabricks.net.

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

antarmuka baris perintah (CLI)

Untuk Databricks CLI, jalankan databricks configure perintah . Pada perintah, masukkan pengaturan berikut:

  • Host Azure Databricks, ditentukan sebagai URL Azure Databricks per-workspace target, misalnya https://adb-1234567890123456.7.azuredatabricks.net.
  • Token akses pribadi Azure Databricks untuk akun pengguna Azure Databricks.

Untuk informasi selengkapnya, lihat Autentikasi token akses pribadi (warisan).

Sambungkan

Catatan

Azure Databricks autentikasi token akses pribadi didukung pada versi Databricks Connect berikut:

  • Untuk Python, Databricks Connect untuk Databricks Runtime 13.3 LTS dan versi yang lebih baru.
  • Untuk Scala, Databricks Connect untuk Databricks Runtime 13.3 LTS dan versi yang lebih baru.

Untuk Databricks Connect, gunakan Databricks CLI untuk mengatur nilai dalam file .databrickscfg Anda, untuk operasi tingkat Azure Databricks workspace seperti yang ditentukan di bagian Profile.

Prosedur berikut membuat profil konfigurasi Azure Databricks bernama DEFAULT, yang menimpa profil DEFAULT yang ada. Untuk memeriksa apakah DEFAULT profil ada, jalankan databricks auth env --profile DEFAULT. Jika ada, gunakan nama profil yang berbeda.

  1. Jalankan perintah berikut untuk membuat profil konfigurasi Azure Databricks bernama DEFAULT yang menggunakan autentikasi token akses pribadi.

    databricks configure \
      --configure-cluster \
      --profile DEFAULT
    
  2. Untuk perintah Databricks Host, masukkan URL Azure Databricks per-workspace Anda, misalnya https://adb-1234567890123456.7.azuredatabricks.net.

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

  4. Dalam daftar kluster yang tersedia, pilih target Azure Databricks kluster di ruang kerja Anda. Anda dapat mengetik bagian mana pun dari nama tampilan kluster untuk memfilter daftar kluster yang tersedia.

Gunakan REST API Azure Databricks untuk mengeluarkan token akses pribadi

Azure Databricks menyediakan titik akhir REST /api/2.0/token/create untuk menerbitkan PAT. Lihat Membuat token pengguna untuk detail API.

Dalam contoh berikut, atur nilai-nilai ini:

  • <databricks-instance>: URL ruang kerja Databricks Anda. Contohnya,dbc-abcd1234-5678.cloud.databricks.com.
  • <your-existing-access-token>: PAT (string) valid yang ada yang memiliki izin untuk membuat token baru.
  • <lifetime-seconds>: Masa pakai token dalam hitung detik.
  • <scopes>: Daftar cakupan yang akan ditetapkan ke token. Lihat Token akses pribadi dengan cakupan spesifik.
curl -X POST https://<databricks-instance>/api/2.0/token/create \
-H "Authorization: Bearer <your-existing-access-token>" \
-H "Content-Type: application/json" \
-d '{
  "lifetime_seconds": <lifetime-seconds>,
  "scopes": [
    "sql",
    "authentication"
  ]
}'

Jika berhasil, ini menghasilkan payload respons yang mirip dengan:

{
  "token_value": "<your-newly-issued-pat>",
  "token_info": {
    "token_id": "<token-id>",
    "creation_time": <creation-timestamp>,
    "expiry_time": <expiry-timestamp>,
    "comment": "<comment>",
    "scopes": ["authentication", "sql"],
    "last_accessed_time": 0
  }
}

Berikan token baru dari respons di header Otorisasi panggilan selanjutnya ke API REST Databricks. Contohnya:

# This example uses a simple GET. For POST or other REST verbs, you may need to provide additional parameters.
curl -X GET "https://<databricks-instance>/api/2.0/<path-to-endpoint>" \
     -H "Authorization: Bearer <your-new-pat>"
import requests

headers = {
    'Authorization': 'Bearer <your-new-pat>'
}
# This example is for an HTTP GET operation.
response = requests.get('https://<databricks-instance>/api/2.0/<path-to-endpoint>', headers=headers)

Memperbarui cakupan token akses pribadi

Jika token tercakup kehilangan cakupan yang diperlukan untuk panggilan API, permintaan gagal dengan kesalahan yang menunjukkan cakupan yang hilang. Untuk memperbarui cakupan token, gunakan titik akhir REST /api/2.0/token/<token_id>. Token panggilan harus memiliki authentication cakupan, yang mengizinkan pengelolaan token lain. update_mask Gunakan bidang untuk menentukan bidang token mana yang akan diperbarui.

curl -X PATCH https://<databricks-instance>/api/2.0/token/<token_id> \
-H "Authorization: Bearer <your-existing-access-token>" \
-H "Content-Type: application/json" \
-d '{
  "token": {
    "scopes": ["sql", "unity-catalog"]
  },
  "update_mask": "scopes"
}'

Perubahan cakupan dapat memakan waktu hingga sepuluh menit untuk disebarluaskan.

Untuk melihat semua cakupan yang tersedia, gunakan GET /api/2.0/token-scopes.