Kontrol akses berbasis peran (RBAC)

OneLake RBAC menggunakan penetapan peran untuk menerapkan izin kepada anggotanya. Anda dapat menetapkan peran kepada individu atau ke grup keamanan, grup Microsoft 365, dan daftar distribusi. Setiap anggota dalam grup pengguna mendapatkan peran yang ditetapkan.

Jika seseorang berada dalam dua atau beberapa grup keamanan atau grup Microsoft 365, mereka mendapatkan tingkat izin tertinggi yang disediakan oleh peran. Jika Anda menumpuk grup pengguna dan menetapkan peran ke grup, semua pengguna yang terkandung memiliki izin.

OneLake RBAC memungkinkan pengguna untuk menentukan peran akses data hanya untuk Item Lakehouse.

OneLake RBAC membatasi akses data untuk pengguna dengan Penampil Ruang Kerja atau akses baca ke lakehouse. Ini tidak berlaku untuk Admin Ruang Kerja, Anggota, atau Kontributor. Akibatnya, OneLake RBAC hanya mendukung tingkat izin Baca.

Cara membuat peran RBAC

Anda dapat menentukan dan mengelola peran RBAC OneLake melalui pengaturan akses data lakehouse Anda.

Pelajari selengkapnya di Mulai Menggunakan Peran Akses Data.

Peran RBAC default di lakehouse

Saat pengguna membuat lakehouse baru, OneLake menghasilkan Peran RBAC default bernama Default Readers. Peran ini memungkinkan semua pengguna dengan izin ReadAll untuk membaca semua folder dalam Item.

Berikut adalah definisi Peran default:

Fabric Item Nama Peran Izin Folder disertakan Anggota yang ditetapkan
Lakehouse DefaultReader ReadAll Semua folder di bawah Tables/ dan Files/ Semua pengguna dengan izin ReadAll

Catatan

Untuk membatasi akses ke pengguna tertentu atau folder tertentu, Anda harus mengubah peran default atau menghapusnya dan membuat peran kustom baru.

Warisan dalam OneLake RBAC

Untuk folder tertentu, izin RBAC OneLake selalu mewarisi seluruh hierarki file dan subfolder folder.

Misalnya, mengingat hierarki lakehouse berikut di OneLake.

Tables/
──── (empty folder)
Files/
────folder1
│   │   file11.txt
│   │
│   └───subfolder11
│       │   file1111.txt
|       │
│       └───subfolder111
|            │   file1111.txt
│   
└───folder2
    │   file21.txt

Untuk hierarki yang diberikan, izin RBAC OneLake untuk Role1 dan Role2 mewarisi dengan cara berikut:

Peran Izin Folder yang ditentukan dalam Izin Folder dan file yang mewarisi Izin
Peran1 Membaca folder1
│   │   file11.txt
│   │
│   └───subfolder11
│       │   file1111.txt
|       │
│       └───subfolder111
|            │   file1111.txt
Peran2 Membaca folder2
    │   file21.txt

Traversal dan daftar di OneLake RBAC

OneLake RBAC menyediakan traversal otomatis item induk untuk memastikan bahwa data mudah ditemukan. Memberikan pengguna Baca ke subfolder11 memberi pengguna kemampuan untuk mencantumkan dan melintasi folder direktori induk1. Fungsionalitas ini mirip dengan izin folder Windows di mana memberikan akses ke subfolder menyediakan penemuan dan traversal untuk direktori induk. Daftar dan traversal yang diberikan kepada induk tidak meluas ke item lain di luar induk langsung, memastikan folder lain tetap aman.

Misalnya, mengingat hierarki lakehouse berikut di OneLake.

Tables/
──── (empty folder)
Files/
────folder1
│   │   file11.txt
│   │
│   └───subfolder11
│       │   file111.txt
|       │
│       └───subfolder111
|            │   file1111.txt
│   
└───folder2
    │   file21.txt

Untuk hierarki yang diberikan, izin RBAC OneLake untuk 'Role1' menyediakan akses berikut. Perhatikan bahwa akses ke file11.txt tidak terlihat karena bukan induk subfolder11. Demikian juga untuk Peran2, file111.txt juga tidak terlihat.

Peran Izin Folder yang ditentukan dalam Izin Folder dan file yang mewarisi Izin
Peran1 Membaca subfolder11
Files/
────folder1
│   │
│   └───subfolder11
│       │   file111.txt
|       │
│       └───subfolder111
|            │   file1111.txt
Peran2 Membaca subfolder111
Files/
────folder1
│   │
│   └───subfolder11
|       │
│       └───subfolder111
|            │   file1111.txt

Untuk pintasan, perilaku daftar sedikit berbeda. Pintasan ke sumber data eksternal berperilaku sama seperti folder, namun pintasan ke lokasi OneLake lainnya memiliki perilaku khusus. Akses ke pintasan OneLake ditentukan oleh izin target pintasan. Saat mencantumkan pintasan, tidak ada panggilan yang dilakukan untuk memeriksa akses target. Akibatnya, saat mencantumkan direktori, semua pintasan internal akan dikembalikan terlepas dari akses pengguna ke target. Saat pengguna mencoba membuka pintasan, pemeriksaan akses akan dievaluasi dan pengguna hanya akan melihat data yang izinnya diperlukan untuk dilihat pengguna. Untuk informasi selengkapnya tentang pintasan, lihat bagian keamanan pintasan.

Contoh di bawah ini menggunakan hierarki folder berikut.

Files/
────folder1
│   
└───shortcut2
|
└───shortcut3
Peran Izin Folder yang ditentukan dalam Izin Hasil daftar File
Peran1 Membaca folder1
Files/
────folder1
│   
└───shortcut2
|
└───shortcut3
Peran2 N/A N/A
Files/
│   
└───shortcut2
|
└───shortcut3

Bagaimana izin RBAC OneLake dievaluasi dengan izin Fabric

Izin Ruang Kerja dan Item memungkinkan Anda memberikan akses "kasar" ke data di OneLake untuk Item yang diberikan. Izin RBAC OneLake memungkinkan Anda membatasi akses data di OneLake hanya ke folder tertentu.

Diagram memperlihatkan urutan evaluasi izin dengan ruang kerja, item, dan RBAC.

Izin OneLake RBAC dan Ruang Kerja

Izin ruang kerja adalah batas keamanan pertama untuk data dalam OneLake. Setiap ruang kerja mewakili satu domain atau area proyek tempat tim dapat berkolaborasi pada data. Anda mengelola keamanan di ruang kerja melalui peran ruang kerja Fabric. Pelajari selengkapnya tentang kontrol akses berbasis peran Fabric (RBAC): Peran ruang kerja

Peran ruang kerja dalam Fabric memberikan izin berikut di OneLake.

Izin Admin Anggota Kontributor Penampil
Menampilkan file di OneLake Selalu* Ya Selalu* Ya Selalu* Ya Tidak secara default. Gunakan OneLake RBAC untuk memberikan akses.
Menulis file di OneLake Selalu* Ya Selalu* Ya Selalu* Ya No

Catatan

*Karena Peran Admin Ruang Kerja, Anggota, dan Kontributor secara otomatis memberikan izin Tulis ke OneLake, peran tersebut mengambil alih izin Baca RBAC OneLake.

Peran Ruang Kerja Apakah OneLake menerapkan izin Baca RBAC?
Admin, Kontributor, Anggota Tidak, OneLake Security akan mengabaikan izin OneLake RBC Read
Penampil Ya, jika ditentukan, izin Baca RBAC OneLake akan diterapkan

Izin OneLake RBAC dan Lakehouse

Dalam ruang kerja, item Fabric dapat memiliki izin yang dikonfigurasi secara terpisah dari peran ruang kerja. Anda dapat mengonfigurasi izin baik melalui berbagi item atau dengan mengelola izin item. Izin berikut menentukan kemampuan pengguna untuk melakukan tindakan pada data di OneLake.

Izin Lakehouse

Izin Lakehouse Dapat melihat file di OneLake? Dapatkah menulis file di OneLake? Dapatkah membaca data melalui titik akhir analitik SQL?
Read Tidak secara default, gunakan OneLake RBAC untuk memberikan akses. Tidak Tidak
ReadAll Ya secara default. Gunakan OneLake RBAC untuk membatasi akses. Tidak Tidak
Write Ya Ya Ya
Reshare, ViewOutput, ViewLogs N/A - tidak dapat diberikan sendiri N/A - tidak dapat diberikan sendiri N/A - tidak dapat diberikan sendiri

Izin Titik Akhir Analitik OneLake RBAC dan Lakehouse SQL

Titik akhir analitik SQL adalah gudang yang secara otomatis dihasilkan dari Lakehouse di Microsoft Fabric. Pelanggan dapat beralih dari tampilan "Lake" Lakehouse (yang mendukung rekayasa data dan Apache Spark) ke tampilan "SQL" dari Lakehouse yang sama. Pelajari selengkapnya tentang titik akhir analitik SQL dalam dokumentasi Gudang Data: Titik akhir analitik SQL.

Izin Titik Akhir Analitik SQL Pengguna dapat melihat file melalui OneLake Endpoint? Pengguna dapat menulis file melalui OneLake Endpoint? Pengguna dapat membaca data melalui titik akhir analitik SQL?
Read Tidak secara default, gunakan OneLake RBAC untuk memberikan akses. No Tidak secara default, tetapi dapat dikonfigurasi dengan izin terperinci SQL
ReadData Tidak secara default. Gunakan OneLake RBAC untuk memberikan akses. Tidak Ya
Write Ya Ya Ya

Izin OneLake RBAC dan Model Semantik Lakehouse Default

Di Microsoft Fabric, ketika pengguna membuat lakehouse, sistem juga menyediakan model semantik default terkait. Model semantik default memiliki metrik di atas data lakehouse. Model semantik memungkinkan Power BI memuat data untuk pelaporan.

Izin Model Semantik Default Dapat melihat file di OneLake? Dapatkah menulis file di OneLake? Dapatkah melihat skema dalam Model Semantik? Dapatkah membaca data dalam Model Semantik?
Read Tidak secara default, gunakan OneLake RBAC untuk memberikan akses. Tidak Tidak Ya secara default. Dapat dibatasi dengan keamanan tingkat objek Power BI dan keamanan tingkat baris Power BI
Build Ya secara default. Gunakan OneLake RBAC untuk membatasi akses. Ya Ya Ya
Write Ya Ya Ya Ya
Membagikan ulang N/A - tidak dapat diberikan sendiri N/A - tidak dapat diberikan sendiri N/A - tidak dapat diberikan sendiri N/A - tidak dapat diberikan sendiri

Izin Berbagi Lakehouse dan OneLake RBAC

Saat pengguna berbagi lakehouse, mereka memberi pengguna lain atau sekelompok pengguna akses ke lakehouse tanpa memberikan akses ke ruang kerja dan sisa itemnya. Lakehouse bersama dapat ditemukan melalui Data Hub atau bagian Dibagikan dengan Saya di Microsoft Fabrics.

Ketika seseorang berbagi lakehouse, mereka juga dapat memberikan akses ke titik akhir SQL dan model semantik default terkait.

Cuplikan layar akses lakehouse Grant people.

Opsi Berbagi Dapat melihat file di OneLake? Dapatkah menulis file di OneLake? Dapatkah membaca data melalui titik akhir analitik SQL? Dapatkah melihat dan membangun Model Semantik?
Tidak ada izin tambahan yang dipilih Tidak secara default, gunakan OneLake RBAC untuk memberikan akses. Tidak No Tidak
Membaca semua Apache Spark Ya secara default. Gunakan OneLake RBAC untuk membatasi akses. Tidak No Tidak
Membaca semua data titik akhir SQL Tidak secara default, gunakan OneLake RBAC untuk memberikan akses. Tidak Ya Tidak
Membuat laporan pada himpunan data default Ya secara default. Gunakan OneLake RBAC untuk membatasi akses. Tidak No Ya

Pelajari selengkapnya tentang model izin berbagi data:

Pintasan

OneLake RBAC di Pintasan Internal

Untuk folder apa pun di lakehouse, izin RBAC selalu mewarisi semua pintasan Internal di mana folder ini didefinisikan sebagai target.

Saat pengguna mengakses data melalui pintasan ke lokasi OneLake lain, identitas pengguna panggilan digunakan untuk mengotorisasi akses ke data di jalur target pintasan*. Akibatnya, pengguna ini harus memiliki izin RBAC OneLake di lokasi target untuk membaca data.

Penting

Saat mengakses pintasan melalui model semantik Power BI atau T-SQL, identitas pengguna panggilan tidak diteruskan ke target pintasan. Sebagai gantinya, identitas pemilik item panggilan diteruskan, mendelegasikan akses ke pengguna panggilan.

Menentukan izin RBAC untuk pintasan internal tidak diizinkan dan harus ditentukan pada folder target yang terletak di item target. Karena menentukan izin RBAC hanya terbatas pada item lakehouse, OneLake memungkinkan izin RBAC hanya untuk pintasan yang menargetkan folder di item lakehouse.

Tabel berikutnya menentukan apakah skenario pintasan yang sesuai didukung untuk menentukan izin RBAC OneLake.

Skenario Pintasan Internal Izin RBAC OneLake didukung? Komentar
Pintasan di lakehouse1 menunjuk ke folder2 yang terletak di lakehouse yang sama. Didukung. Untuk membatasi akses ke data dalam pintasan, tentukan OneLake RBAC untuk folder2.
Pintasan di lakehouse1 menunjuk ke folder2 yang terletak di lakehouse2 lain Didukung. Untuk membatasi akses ke data dalam pintasan, tentukan OneLake RBAC untuk folder2 di lakehouse2.
Pintasan di lakehouse menunjuk ke Tabel yang terletak di gudang data Tidak didukung. OneLake tidak mendukung penentuan izin RBAC di gudang data. Akses ditentukan berdasarkan izin ReadAll sebagai gantinya.
Pintasan di lakehouse yang menunjuk ke Tabel yang terletak di database KQL Tidak didukung. OneLake tidak mendukung pendefinisian izin RBAC dalam database KQL. Akses ditentukan berdasarkan izin ReadAll sebagai gantinya.

OneLake RBAC di Pintasan Eksternal (ADLS, S3, Dataverse)

OneLake mendukung penentuan izin RBAC untuk pintasan seperti pintasan ADLS, S3, dan Dataverse. Dalam hal ini, model RBAC diterapkan di atas model otorisasi yang didelegasikan yang diaktifkan untuk jenis pintasan ini.

Misalkan, pengguna1 membuat pintasan S3 di lakehouse yang menunjuk ke folder dalam wadah AWS S3. Kemudian pengguna2 mencoba mengakses data dalam pintasan ini.

Apakah S3 Koneksi ion mengotorisasi akses untuk pengguna yang didelegasikan1? Apakah OneLake RBAC mengotorisasi akses untuk pengguna2 yang meminta? Hasil: Bisakah pengguna2 mengakses data di Pintasan S3?
Ya Ya Ya
No No No
No Ya No
Ya No Tidak

Izin RBAC harus ditentukan untuk seluruh cakupan pintasan (seluruh folder target), tetapi mewarisi secara rekursif ke semua subfolder dan filenya.

Pelajari selengkapnya tentang pintasan S3, ADLS, dan Dataverse di Pintasan OneLake.

Batasan pada OneLake RBAC

Tabel berikut ini menyediakan batasan peran akses data OneLake.

Skenario Batas
Jumlah maksimum peran RBAC OneLake per Item Fabric Paling banyak 250 peran untuk setiap item lakehouse.
Jumlah maksimum anggota per peran OneLake RBAC Paling banyak 500 pengguna dan grup pengguna per peran.
Jumlah maksimum izin per peran OneLake RBAC Paling banyak 500 izin per peran

Latensi di OneLake RBAC

  • Jika Anda mengubah definisi Peran RBAC OneLake, dibutuhkan sekitar 5 menit agar OneLake menerapkan definisi yang diperbarui.
  • Jika Anda mengubah grup pengguna dalam peran OneLake RBAC, dibutuhkan waktu sekitar satu jam bagi OneLake untuk menerapkan izin peran pada grup pengguna yang diperbarui.