Bagikan melalui


Mengubah akses ruang kerja default ke akses konsumen

Penting

Fitur ini ada di Pratinjau Umum.

Halaman ini menjelaskan bagaimana admin ruang kerja dapat mengubah akses ruang kerja default untuk pengguna baru ke akses konsumen dengan menggunakan kloning grup. Fitur ini membantu Anda menyederhanakan onboarding konsumen dalam skala besar sambil mempertahankan tingkat akses yang sesuai untuk pengguna yang membutuhkan hak istimewa penulisan.

Gambaran Umum

Secara default, setiap pengguna yang ditambahkan ke ruang kerja menjadi anggota grup sistem users . Grup ini biasanya memiliki akses Ruang Kerja atau hak akses Databricks SQL, yang merupakan hak penulisan yang memungkinkan pengguna membuat dan memodifikasi objek ruang kerja.

Untuk memberikan pengguna pengalaman konsumen dengan hanya dapat melihat, grup users harus hanya memiliki hak konsumen. Pemberian hak bersifat aditif, sehingga akses konsumen memberikan pengalaman hanya tampilan yang disederhanakan hanya ketika itu adalah satu-satunya hak yang ditetapkan kepada pengguna. Kloning grup memungkinkan Anda membuat perubahan ini tanpa mengganggu pengguna yang ada yang memerlukan hak istimewa penulisan. Ini membuat grup baru untuk pengguna yang sudah ada dan memperbarui grup default users untuk pengguna baru.

Untuk informasi selengkapnya tentang akses konsumen dan kemampuannya, lihat Apa itu akses konsumen?. Untuk mempelajari selengkapnya tentang pemberian izin, lihat Mengelola pemberian izin.

Kapan menggunakan fitur ini

Gunakan fitur ini saat:

  • Anda ingin pengguna ruang kerja baru secara otomatis hanya memiliki akses konsumen.
  • Anda perlu memisahkan pengguna yang membutuhkan hak pengeditan (akses Workspace atau Databricks SQL) dari pengguna yang hanya dapat melihat.
  • Anda ingin menyederhanakan onboarding konsumen dalam skala besar.

Cara kerja kloning grup

Grup sistem users dikelola secara otomatis oleh Azure Databricks dan mencakup semua pengguna ruang kerja. Grup ini tidak dapat dihapus. Untuk mempelajari selengkapnya tentang grup sistem, lihat Sumber grup.

Saat Anda mengkloning users grup:

  1. Grup baru dibuat dengan hak yang sama seperti yang saat ini dimiliki oleh grup users.
  2. Semua pengguna ruang kerja yang ada secara otomatis dipindahkan ke grup kloning, memastikan mereka mempertahankan tingkat akses mereka saat ini.
  3. Grup users diperbarui agar hanya memiliki hak akses konsumen.
  4. Pengguna di masa mendatang yang ditambahkan ke ruang kerja secara otomatis menjadi anggota users grup dan hanya menerima hak konsumen.

users Saat grup berisi grup berlapis yang terlalu dalam berlapis (grup yang merupakan anggota grup lain), Anda dapat memilih cara menanganinya:

  • Tambahkan semua anggota grup secara langsung (Disarankan): Menambahkan semua anggota grup berlapis langsung ke grup kloning. Ini menyederhanakan struktur grup.
  • Mengecualikan: Melewati grup berlapis sepenuhnya. Anggota grup bersarang yang dikecualikan tidak ditambahkan ke grup hasil cloning.

Persyaratan

Untuk mengubah akses ruang kerja default, Anda harus menjadi admin ruang kerja.

Mengubah akses ruang kerja default menggunakan UI

Langkah-langkah yang Anda lihat bergantung pada konfigurasi ruang kerja Anda:

  • users Jika grup memiliki hak penulisan (Akses ruang kerja atau akses Databricks SQL), Anda akan melihat alur kerja kloning grup yang dijelaskan di bawah ini.
  • Jika grup users tidak memiliki hak penulisan, Anda akan melihat modal yang lebih sederhana yang memungkinkan akses pengguna tanpa kloning. Ini terjadi ketika semua pengguna sudah memiliki akses ruang kerja melalui cara lain (seperti grup tingkat akun).

Untuk mengubah akses ruang kerja default ke akses konsumen:

  1. Sebagai admin ruang kerja, masuk ke ruang kerja Azure Databricks.

  2. Klik nama pengguna Anda di bilah atas ruang kerja Azure Databricks dan pilih Pengaturan.

  3. Klik tab Tingkat Lanjut.

  4. Di bawah Kontrol akses, di samping Ubah akses ruang kerja default ke akses konsumen, klik Buka.

  5. Bergantung pada konfigurasi ruang kerja, Anda akan melihat salah satu dari dua alur kerja:

    Jika grup memiliki hak mengarang users:

    1. Dalam dialog, masukkan nama untuk grup kloning. Grup ini akan berisi semua pengguna yang ada yang perlu mempertahankan hak mereka saat ini.

    Ubah akses default ke akses konsumen.

    1. Klik Buat dan kloning grup.

    Sistem membuat grup baru dan memulai proses kloning. Jangan tutup modal saat kloning sedang dalam proses.

    1. Jika grup berisi grup bersarang yang terlalu dalam, Anda akan diberi perintah untuk menanganinya.
    • Pilih Tambahkan semua anggota grup secara langsung (Disarankan) untuk menghapus hierarki grup dengan menambahkan semua anggota dari grup bersarang langsung ke grup hasil kloning.
    • Pilih Kecualikan grup ini untuk melewati grup berlapis ini.
    • Secara opsional, pilih Terapkan keputusan ini ke semua grup mendatang yang melebihi batas kedalaman berlapis untuk menggunakan pilihan Anda untuk semua grup berlapis di masa mendatang selama operasi ini.
    1. Di Langkah terakhir: pindahkan izin penulisan dan ubah akses default, klik Selesai.

    Sistem memperbarui users grup agar hanya memiliki hak akses konsumen dan menetapkan hak akses asli ke grup yang dikloning.

    1. Tinjau ringkasan dan klik Selesai.

    Ubah akses default ke akses konsumen.

    Jika users grup tidak memiliki hak otorisasi penulisan:

    1. Dalam dialog, tinjau pesan yang menjelaskan bahwa pengguna ruang kerja baru saat ini tidak memiliki akses default.

    Aktifkan akses default pengguna.

    1. Klik Aktifkan untuk memberikan hak akses konsumen ke users grup.

    Pengguna baru sekarang memiliki akses konsumen secara default.

Memverifikasi perubahan

Setelah menyelesaikan proses, verifikasi bahwa perubahan diterapkan dengan benar:

  1. Sebagai admin ruang kerja, masuk ke ruang kerja Azure Databricks.
  2. Klik nama pengguna Anda di bilah atas dan pilih Pengaturan.
  3. Klik tab Identitas dan akses .
  4. Di samping Grup, klik Kelola.
  5. Verifikasi hal berikut:
    • Grup kloning ada dan memiliki jumlah pengguna yang sama dengan grup asli users .
    • users Grup sekarang hanya memiliki hak konsumen.

Pertimbangan dan praktik terbaik

Pertimbangkan hal berikut saat mengubah akses ruang kerja default:

  • Dampak pada pengguna baru: Setelah Anda mengubah akses default, semua pengguna baru yang ditambahkan ke ruang kerja hanya menerima hak konsumen. Mereka dapat melihat dan berinteraksi dengan dasbor, ruang Genie, dan Aplikasi Databricks yang dibagikan dengan mereka, tetapi tidak dapat membuat objek ruang kerja baru. Halaman default mereka di Databricks adalah halaman Databricks One. Untuk informasi selengkapnya, lihat Apa itu akses konsumen? dan Apa itu Databricks One?.

  • Memberikan hak istimewa penulisan: Saat Anda perlu memberikan hak istimewa yang lebih tinggi kepada pengguna baru, Anda harus menambahkannya secara manual ke grup kloning atau menetapkan hak tambahan satu per satu. Untuk instruksi tentang mengelola keanggotaan grup, lihat Mengelola grup.

  • Mengembalikan perubahan: Jika Anda perlu mengembalikan konfigurasi ini, berikan akses Ruang Kerja dan hak akses Databricks SQL kembali ke users grup. Pengguna baru kemudian menerima pemberian izin ini secara default. Anda dapat menyimpan atau menghapus grup kloning tergantung pada apakah Anda masih membutuhkannya untuk mengatur pengguna.

  • Koordinasi dengan penyedia identitas: Jika Anda menggunakan provisi SCIM atau manajemen identitas otomatis untuk menyinkronkan pengguna dan grup, koordinasikan perubahan ini dengan proses manajemen identitas Anda. Silakan lihat Menyinkronkan pengguna dan grup dari Microsoft Entra ID menggunakan SCIM.

Otomatisasi kloning grup menggunakan SDK

Untuk operasi massal atau otomatisasi di beberapa ruang kerja, Anda dapat menggunakan Databricks SDK untuk Python untuk mengotomatiskan proses kloning grup. Metode ini berguna ketika Anda perlu menerapkan konfigurasi yang sama di beberapa ruang kerja atau mengintegrasikan kloning grup ke dalam alur kerja infrastruktur sebagai kode.

Skrip Python berikut mengotomatisasi proses menduplikasi grup users dan menetapkan hak yang sesuai. Ini menggunakan Databricks SDK untuk Python dan memerlukan prinsipal layanan dengan hak istimewa administrator untuk akun dan ruang kerja, yang diautentikasi menggunakan OAuth. Lihat Mengotorisasi akses pengguna ke Azure Databricks dengan OAuth.

Prasyarat

  • Perwakilan layanan dengan hak admin
  • Variabel lingkungan telah disetel:
    • DATABRICKS_ACCOUNT_ID (UUID dari URL konsol akun)
    • DATABRICKS_WORKSPACE_ID (ID numerik dari URL ruang kerja)
    • DATABRICKS_CLIENT_ID (ID klien akun utama layanan)
    • DATABRICKS_CLIENT_SECRET (rahasia klien principal layanan)

Contoh skrip


import os
import databricks.sdk as dbx
from databricks.sdk.service import iam

# Set the Databricks account host URL for your account's cloud
DATABRICKS_HOST = "https://accounts.azuredatabricks.net"

# Fetch credentials from environment variables
DATABRICKS_ACCOUNT_ID = os.getenv("DATABRICKS_ACCOUNT_ID")
DATABRICKS_WORKSPACE_ID = os.getenv("DATABRICKS_WORKSPACE_ID")
DATABRICKS_CLIENT_ID = os.getenv("DATABRICKS_CLIENT_ID")
DATABRICKS_CLIENT_SECRET = os.getenv("DATABRICKS_CLIENT_SECRET")

# Initialize Databricks account client
account_client = dbx.AccountClient(
    host=DATABRICKS_HOST,
    account_id=DATABRICKS_ACCOUNT_ID,
    client_id=DATABRICKS_CLIENT_ID,
    client_secret=DATABRICKS_CLIENT_SECRET,
)

print(f"Authenticated to Databricks account {DATABRICKS_ACCOUNT_ID}")

# Get workspace and initialize workspace client
workspace = account_client.workspaces.get(workspace_id=DATABRICKS_WORKSPACE_ID)
workspace_name = workspace.workspace_name
workspace_client = account_client.get_workspace_client(workspace)

print(f"Authenticated to Databricks workspace {DATABRICKS_WORKSPACE_ID}, '{workspace_name}'")

def get_workspace_group(group_name):
    """
    Fetches the workspace group with the given name.
    """
    group = list(workspace_client.groups.list(filter=f"displayName eq '{group_name}'"))[0]
    print(f"Found workspace group: {group.display_name}")
    print(f"Workspace {group.display_name} has {len(group.members)} members")
    return group

def clone_workspace_group_to_account(workspace_group_name, new_account_group_name):
    workspace_group = get_workspace_group(workspace_group_name)
    group = account_client.groups.create(
        display_name=new_account_group_name, members=workspace_group.members
    )
    print(f"Created account group: {new_account_group_name}")
    print(f"Cloned workspace group {workspace_group.display_name} to account group {group.display_name}")
    print(f"Account {group.display_name} has {len(group.members)} members")
    return group

def add_account_group_to_workspace(account_group, workspace):
    permissions = account_client.workspace_assignment.update(
        workspace_id=workspace.workspace_id,
        principal_id=account_group.id,
        permissions=[iam.WorkspacePermission.USER],
    )
    print(f"Added account group {account_group.display_name} to workspace {workspace.workspace_id}, {workspace.workspace_name}")
    return permissions

# Clone workspace 'users' group to new account group '{workspace_name}-contributors'
account_group = clone_workspace_group_to_account(
    "users", f"{workspace_name}-contributors"
)

# Add account group '{workspace_name}-contributors' to the workspace
permissions = add_account_group_to_workspace(account_group, workspace)

Setelah Anda menjalankan skrip untuk menduplikasi grup yang ada dan menetapkan ulang izin, berikan akses konsumen ke grup users agar pengguna baru secara otomatis mendapatkan akses tersebut.

Nota

Sesuaikan nama grup dan izin akses untuk kebijakan organisasi dan konvensi penamaannya. Selalu uji perubahan di lingkungan non-produksi sebelum menerapkannya secara luas.

Apa selanjutnya

Setelah mengubah akses ruang kerja default, Anda mungkin ingin: