Konsep keamanan dalam Microsoft Dataverse

Salah satu fitur utama dari Dataverse adalah model keamanan kaya yang dapat beradaptasi dengan banyak skenario penggunaan bisnis. Model keamanan ini hanya aktif bila ada database Dataverse di lingkungan. Sebagai administrator, kemungkinan Anda tidak akan membangun seluruh model keamanan secara keseluruhan, namun sering kali akan terlibat dalam proses pengelolaan pengguna dan memastikan mereka memiliki konfigurasi yang tepat dan mengatasi masalah yang terkait dengan akses keamanan.

Keamanan berbasis peran

Dataverse menggunakan keamanan berbasis peran untuk mengelompokkan kumpulan hak istimewa. Peran keamanan ini dapat dikaitkan langsung ke pengguna, atau mereka dapat dikaitkan dengan tim dan unit bisnis Dataverse. Pengguna kemudian dapat dikaitkan dengan tim, sehingga semua pengguna yang terkait dengan tim akan mendapatkan keuntungan dari peran tersebut. Konsep utama keamanan Dataverse untuk dipahami adalah semua pemberian hak istimewa bersifat akumulatif dengan akses terbesar yang berlaku. Jika Anda memberikan akses baca tingkat organisasi yang luas ke semua rekaman kontak, Anda tidak dapat kembali dan menyembunyikan satu rekaman.

Unit bisnis

Tip

Simbol videoLihat video berikut: Memodernisasi unit bisnis.

Unit bisnis bekerja dengan peran keamanan untuk menentukan keamanan efektif yang pengguna miliki. Unit bisnis adalah blok pembangun pemodelan keamanan yang membantu dalam mengelola pengguna dan data yang dapat mereka akses. Unit bisnis menentukan batas keamanan. Setiap database Dataverse memiliki satu unit bisnis root.

Anda dapat membuat unit bisnis anak untuk membantu segmen pengguna dan data lebih lanjut. Setiap pengguna yang ditetapkan ke lingkungan akan masuk ke unit bisnis. Meskipun unit bisnis dapat digunakan untuk model 1:1 hierarki organisasi yang sesungguhnya, sering mereka lebih cenderung ke batas keamanan yang hanya ditentukan untuk membantu mencapai kebutuhan model keamanan.

Mari Lihat contoh untuk lebih memahami: Kita memiliki tiga unit bisnis. Woodgrove adalah unit bisnis root dan akan selalu berada di puncak, yang tidak dapat diubah. Kami telah membuat dua unit bisnis anak lainnya A dan B. Pengguna di unit bisnis ini memiliki kebutuhan akses yang sangat berbeda. Saat kita mengasosiasikan pengguna dengan lingkungan ini, kita dapat mengatur pengguna untuk berada di salah satu dari tiga unit bisnis ini. Bila pengguna terkait, itu akan menentukan unit bisnis mana yang memiliki rekaman yang dimiliki pengguna. Memiliki asosiasi tersebut memungkinkan kita untuk membuat peran keamanan guna memungkinkan pengguna melihat semua data di unit bisnis itu.

Struktur akses data hierarkis

Pelanggan dapat menggunakan struktur organisasi dengan data dan pengguna dikompartementalisasi dalam hierarki seperti pohon.

Saat kita mengasosiasikan pengguna dengan lingkungan ini, kita dapat mengatur pengguna untuk berada di salah satu dari tiga unit bisnis ini dan menetapkan peran keamanan dari unit bisnis ke pengguna. Unit bisnis yang dikaitkan dengan pengguna menentukan unit bisnis yang memiliki rekaman saat pengguna membuat rekaman. Dengan memiliki keterkaitan tersebut, kita dapat menyesuaikan peran keamanan yang memungkinkan pengguna melihat rekaman di unit bisnis tersebut.

Pengguna A dikaitkan dengan Divisi A dan menetapkan peran keamanan Y dari Divisi A. Pilihan ini memungkinkan pengguna A mengakses rekaman #1 dan Kontak #2. Sementara pengguna B di Divisi B tidak dapat mengakses rekaman Kontak Divisi A tetapi dapat mengakses rekaman kontak #3.

Contoh struktur akses data matriks

Struktur akses data Matriks (Unit Bisnis yang Dimodernisasi)

Pelanggan dapat menggunakan struktur organisasi dengan data dikompartementalisasi dalam hierarki seperti ranting, serta pengguna dapat bekerja dan mengakses data unit bisnis apa pun jenis unit bisnis yang ditetapkan ke pengguna.

Saat kita mengasosiasikan pengguna dengan lingkungan ini, kita dapat mengatur pengguna untuk berada di salah satu dari tiga unit bisnis ini. Untuk setiap unit bisnis yang dibutuhkan pengguna untuk mengakses data, peran keamanan dari unit bisnis tersebut ditetapkan ke pengguna. Saat pengguna membuat rekaman, pengguna dapat mengatur unit bisnis untuk memiliki rekaman itu.

Pengguna A dapat dikaitkan dengan salah satu unit bisnis, termasuk unit bisnis akar. Peran keamanan Y dari Divisi A ditetapkan ke pengguna A yang memberikan akses pengguna ke rekaman Kontak #1 dan Kontak #2. Peran keamanan Y dari Divisi B ditetapkan ke pengguna A yang memberikan akses pengguna ke rekaman Kontak #3.

Contoh Struktur akses data hierarkis

Mengaktifkan struktur akses data Matriks

Catatan

Sebelum mengaktifkan fitur ini, Anda harus memublikasikan semua penyesuaian Anda untuk mengaktifkan semua tabel baru yang tidak dipublikasikan untuk fitur tersebut. Jika Anda menemukan tabel yang tidak dipublikasikan yang tidak berfungsi dengan fitur ini setelah Anda mengaktifkannya, Anda dapat mengatur pengaturan RecomputeOwnershipAcrossBusinessUnits menggunakan OrgDBOrgSettings tool for Microsoft Dynamics CRM. Mengatur RecomputeOwnershipAcrossBusinessUnits ke true memungkinkan bidang Unit Bisnis Kepemilikan diatur dan diperbarui.

  1. Masuk ke Pusat admin Power Platform sebagai admin (admin Dynamics 365, admin global, atau admin Microsoft Power Platform).
  2. Pilih Lingkungan, lalu pilih lingkungan yang ingin Anda aktifkan fitur ini.
  3. Pilih pengaturan>Produk>Fitur.
  4. Aktifkan tombol kepemilikan Rekaman di seluruh unit bisnis.

Setelah tombol fitur ini diaktifkan, Anda dapat memilih unit Bisnis saat menetapkan peran keamanan ke pengguna. Hal ini memungkinkan Anda penetapkan peran keamanan dari berbagai unit bisnis ke pengguna. Pengguna juga memerlukan peran keamanan dari unit bisnis yang ditetapkan ke pengguna dengan hak istimewa pengaturan pengguna untuk menjalankan aplikasi yang diarahkan model. Anda dapat merujuk peran keamanan Pengguna Dasar untuk mencari tahu cara hak istimewa pengaturan pengguna diaktifkan.

Anda dapat menetapkan pengguna sebagai pemilik data di segala unit bisnis tanpa perlu menetapkan peran keamanan di unit bisnis pemilik data selama pengguna memiliki peran keamanan yang memiliki hak istimewa Baca pada tabel data. Lihat Kepemilikan Data di Unit Bisnis yang Dimodernisasi.

Catatan

Sakelar fitur ini disimpan di pengaturan EnableOwnershipAcrossBusinessUnits dan dapat diatur menggunakan OrgDBOrgSettings tool for Microsoft Dynamics CRM.

Mengaitkan unit bisnis dengan Microsoft Entra grup keamanan

Anda dapat menggunakan Microsoft Entra grup keamanan untuk memetakan unit bisnis Anda untuk menyederhanakan administrasi pengguna dan penetapan peran Anda.

Microsoft Entra Buat grup keamanan untuk setiap unit bisnis dan tetapkan peran keamanan unit bisnis masing-masing ke setiap tim grup.

 Microsoft Entra Buat grup keamanan untuk setiap unit bisnis.

Untuk setiap unit bisnis, buat Microsoft Entra grup keamanan. Dataverse Buat tim grup untuk setiap Microsoft Entra grup keamanan. Tetapkan masing-masing peran keamanan dari setiap unit bisnis ke setiap tim grup Dataverse Pengguna pada diagram di atas akan dibuat di unit bisnis akar saat pengguna mengakses lingkungan. Tidak masalah jika pengguna dan tim grup Dataverse berada di unit bisnis akar. Mereka hanya memiliki akses ke data di unit bisnis tempat peran keamanan ditetapkan.

Tambahkan pengguna ke grup keamanan masing-masing Microsoft Entra untuk memberi mereka akses ke unit bisnis. Pengguna dapat segera menjalankan aplikasi dan mengakses sumber daya/data.

Dalam akses data matriks, tempat pengguna dapat bekerja dan mengakses data dari beberapa unit bisnis, tambahkan pengguna ke grup keamanan yang dipetakan ke Microsoft Entra unit bisnis tersebut.

Kepemilikan Unit Bisnis

Setiap catatan memiliki kolom Unit Bisnis Pemilik, yang menentukan unit bisnis mana yang memiliki catatan. Kolom ini menjadi default pada unit bisnis pengguna saat data dibuat dan tidak dapat diubah kecuali fitur tersebut diaktifkan.

Catatan

Saat Anda mengubah unit bisnis mana yang memiliki data, pastikan untuk memeriksa efek kaskade berikut: Menggunakan SDK for .NET untuk mengonfigurasi perilaku berjenjang.

Anda dapat mengelola apakah mengizinkan pengguna mengatur kolom Pemilik Unit Bisnis saat fitur tersebut aktif. Untuk mengatur Pemilik Unit Bisnis, Anda perlu memberikan hak istimewa Tambahkan Ke tabel Unit Bisnis peran keamanan pengguna dengan izin level lokal.

Untuk mengizinkan pengguna mengatur kolom ini, Anda dapat mengaktifkan kolom ini di bagian berikut:

  1. Formulir - badan maupun header.
  2. Lihat.
  3. Pemetaan Kolom. Jika Anda menggunakan AutoMapEntity, Anda dapat menentukan kolomnya di pemetaan kolom.

Catatan

Jika Anda memiliki pekerjaan/proses untuk mensinkronisasi data antara lingkungan dan Unit Bisnis Pemilik disertakan sebagai bagian dari skema, pekerjaan Anda akan gagal dengan pelanggaran batasan KUNCI asing jika lingkungan target tidak memiliki nilai Unit Bisnis Pemilik yang sama.

Anda dapat menghapus kolom Pemilik Unit Bisnis dari skema sumber, atau memperbarui nilai kolom Pemilik Unit Bisnis Sumber ke segala unit bisnis target.

Jika Anda memiliki pekerjaan/proses untuk menyalin data dari lingkungan ke sumber daya eksternal, misalnya PowerBI, Anda perlu memilih atau membatalkan pilihan kolom Pemilik Unit Bisnis dari sumber Anda. Pilih jika sumber daya Anda dapat menerimanya jika tidak memilihnya.

Kepemilikan tabel/rekaman

Dataverse mendukung dua jenis kepemilikan rekaman. Dimiliki organisasi, dan dimiliki pengguna atau tim. Pilihan ini berlaku pada saat tabel dibuat dan tidak dapat diubah. Untuk tujuan keamanan, rekaman yang dimiliki organisasi, satu-satunya pilihan tingkat akses adalah pengguna dapat melakukan operasi atau tidak dapat. Untuk rekaman yang dimiliki pengguna dan tim, pilihan tingkat akses untuk hak istimewa sebagian besar adalah Organisasi bertingkat, Unit Bisnis, Unit Bisnis dan Unit Bisnis Anak atau hanya rekaman pengguna sendiri. Artinya untuk hak istimewa baca pada kontak, saya dapat menetapkan yang dimiliki pengguna dan pengguna hanya akan melihat rekaman mereka sendiri.

Untuk memberikan instans lain, katakanlah pengguna A dikaitkan dengan Divisi A, dan kita memberi mereka akses Baca tingkat unit bisnis pada kontak. Mereka dapat melihat Kontak #1 dan #2 Namun tidak #3.

Saat mengkonfigurasi atau mengedit peran keamanan hak istimewa, Anda menetapkan tingkat akses untuk setiap pilihan. Berikut ini adalah contoh editor hak istimewa peran keamanan.

Peran keamanan hak istimewa.

Di atas, Anda dapat melihat jenis hak istimewa standar untuk setiap tabel Buat, Baca, Tulis, Hapus, Lampirkan, Lampirkan Ke, Tetapkan, dan Berbagi. Anda dapat mengedit masing-masing secara individual. Tampilan visual masing-masing akan sesuai dengan kunci di bawah ini sesuai dengan tingkat akses yang Anda berikan.

Peran keamanan kunci hak istimewa.

Dalam instans di atas, kita telah memberikan akses tingkat organisasi ke kontak yang berarti bahwa pengguna di Divisi A dapat melihat, dan memperbarui kontak yang dimiliki oleh siapa pun. Bahkan, salah satu kesalahan administratif yang paling umum adalah frustrasi dengan izin dan hanya memberikan akses. Model keamanan yang dibuat dengan sangat cepat mulai terlihat seperti keju Swiss (penuh dengan lubang!).

Kepemilikan Data di Unit Bisnis yang Dimordernisasi

Di Unit Bisnis yang Dimodernisasi, Anda mengubah pengguna menjadi pemilik data di seluruh unit bisnis. Semua pengguna perlu perang keamanan (segala unit bisnis) yang memiliki hak istimewa Baca ke tabel data. Pengguna tidak perlu memiliki peran keamanan yang ditetapkan di setiap unit bisnis di mana datanya berada.

Jika Kepemilikan data di seluruh unit bisnis telah diaktifkan di lingkungan produksi Anda selama periode Pratinjau, Anda perlu melakukan hal berikut untuk mengaktifkan kepemilikan data di seluruh unit bisnis:

  1. Instal Editor Pengaturan Organisasi
  2. Atur pengaturan organisasi RecomputeOwnershipAcrossBusinessUnits menjadi benar. Bila pengaturan ini diatur ke true, sistem dikunci dan dapat memerlukan waktu hingga 5 menit untuk melakukan komputasi ulang guna mengaktifkan kemampuan di mana pengguna sekarang dapat memiliki rekaman di seluruh unit bisnis tanpa perlu memiliki peran keamanan terpisah yang ditetapkan dari setiap unit bisnis. Hal ini memungkinkan pemilik catatan untuk menetapkan catatan mereka kepada seseorang di luar unit bisnis pemilik catatan.
  3. Atur AlwaysMoveRecordToOwnerBusinessUnit menjadi salah. Hal ini membuat data tetap ada di pemilik unit bisnis asli saat kepemilikan data berubah.

Untuk semua lingkungan non-produksi, Anda hanya perlu mengatur AlwaysMoveRecordToOwnerBusinessUnit menjadi salah untuk menggunakan kemampuan ini.

Catatan

Jika Anda menonaktifkan fitur Kepemilikan data di seluruh unit bisnis atau mengatur pengaturan RecomputeOwnershipAcrossBusinessUnits ke false menggunakan alat OrgDBOrgSettings untuk CRM, Anda tidak akan dapat mengatur atau memperbarui Microsoft Dynamics bidang unitBisnis yang Memiliki, dan semua rekaman di mana bidang Unit Bisnis Memiliki berbeda dari unit bisnis pemilik akan diperbarui ke unit bisnis pemilik.

Tim (Termasuk tim grup)

Teams adalah blok bangunan keamanan penting lainnya. Teams dimiliki oleh unit bisnis. Setiap unit bisnis memiliki satu tim default yang secara otomatis dibuat saat unit bisnis dibuat. Anggota tim default dikelola oleh Dataverse dan selalu berisi semua pengguna yang terkait dengan unit bisnis tersebut. Anda tidak dapat menambahkan atau menghapus anggota secara manual dari tim default, mereka secara dinamis disesuaikan dengan sistem karena new users are associated/disassociated with business units (pengguna baru terkait/tidak terkait dengan unit bisnis). Ada dua jenis tim, tim pemilik, dan tim akses.

  • tim pemilik dapat memiliki rekaman, yang memberikan akses langsung ke rekaman tersebut kepada anggota tim mana pun. Pengguna dapat menjadi anggota dari beberapa tim. Hal ini akan memungkinkannya menjadi cara yang ampuh untuk memberikan izin kepada pengguna secara luas tanpa memata-matai akses di tingkat pengguna individual.
  • Tim akses dibahas di bagian berikutnya sebagai bagian dari berbagi rekaman.

Membagi rekaman

Catatan individu dapat dibagikan satu per satu dengan pengguna lain. Ini adalah cara ampuh untuk menangani pengecualian yang tidak termasuk dalam kepemilikan catatan atau merupakan anggota model akses unit bisnis. Ini harus menjadi pengecualian, karena ini adalah cara yang kurang berkinerja untuk mengontrol akses. Berbagi lebih sulit untuk dipecahkan karena ini bukan kontrol akses yang diterapkan secara konsisten. Berbagi dapat dilakukan baik pada tingkat pengguna maupun tim. Berbagi dengan tim adalah cara berbagi yang lebih efisien. Konsep berbagi yang lebih maju adalah dengan Access Teams, yang menyediakan pembuatan otomatis tim dan berbagi akses rekaman dengan tim didasarkan pada Access Team Template (templat izin) yang diterapkan. Tim Access juga dapat digunakan tanpa templat, hanya dengan menambahkan atau menghapus anggotanya secara manual. Tim akses lebih efektif karena tidak memungkinkan tim memiliki rekaman atau peran keamanan yang ditetapkan ke tim. Pengguna mendapatkan akses karena rekaman dibagikan dengan tim dan pengguna adalah anggota.

Keamanan tingkat rekaman di Dataverse

Anda mungkin bertanya-tanya-apa yang menentukan akses ke rekaman? Kedengarannya seperti pertanyaan sederhana tetapi untuk setiap pengguna, ini adalah kombinasi dari semua peran keamanan mereka, unit bisnis yang terkait dengan mereka, tim yang menjadi anggota dan rekaman yang dibagikan dengan mereka. Hal penting untuk diingat adalah semua akses bersifat akumulatif di semua konsep tersebut dalam lingkup lingkungan database Dataverse. Penetapan ini hanya diberikan dalam satu database dan dilacak secara individual di setiap database Dataverse. Ini semua memerlukan lisensi yang sesuai untuk mengakses Dataverse.

Keamanan level kolom di Dataverse

Kadang-kadang kontrol tingkat rekaman akses tidak memadai untuk beberapa skenario bisnis. Dataverse memiliki fitur keamanan level kolom untuk memungkinkan kontrol keamanan yang lebih granuler di level kolom. Keamanan level kolom dapat diaktifkan di semua kolom kustom dan sebagian besar kolom sistem. Sebagian besar kolom yang menyertakan informasi pribadi yang dapat diidentifikasi (PII) mampu menjadi individu yang aman. Setiap metadata kolom menentukan apakah metadata itu merupakan opsi yang tersedia untuk kolom sistem.

Keamanan level kolom diaktifkan pada kolom oleh basis kolom. Akses nantinya dikelola dengan membuat Profil Keamanan Kolom. Profil ini berisi semua kolom yang mengaktifkan keamanan level kolom dan aksesnya diberikan oleh profil spesifik tersebut. Setiap kolom dapat dikontrol dalam profil untuk akses Membuat, Memperbarui, dan Membaca. Profil Keamanan Kolom nantinya diasosiasikan dengan pengguna atau Tim untuk memberikan hak istimewa tersebut untuk pengguna ke data yang sudah mereka dapatkan aksesnya. Penting untuk diperhatikan bahwa keamanan level kolom tidak berkaitan dengan keamanan level data. Pengguna harus sudah memiliki akses ke data agar Profil Keamanan Kolom memberikan segala akses ke kolom. Keamanan level kolom harus digunakan seperlunya dan tidak berlebihan karena dapat menambahkan atashulu yang merugikan jika terlalu sering digunakan.

Mengelola keamanan di beberapa lingkungan

Peran keamanan dan Profil Keamanan Kolom dapat dipaketkan dan dipindah dari satu lingkungan ke lingkungan selanjutnya menggunakan solusi Dataverse. Unit Bisnis dan Tim harus dibuat dan dikelola di setiap lingkungan bersama dengan penetapan pengguna ke komponen keamanan yang diperlukan.

Mengonfigurasikan keamanan lingkungan pengguna

Setelah peran, tim, dan unit bisnis dibuat di lingkungan, sudah waktunya untuk menetapkan konfigurasi keamanan kepada pengguna. Pertama, saat membuat pengguna, Anda akan mengaitkan pengguna dengan unit bisnis. Secara default, ini adalah unit bisnis root dalam organisasi. Unit bisnis tersebut juga ditambahkan ke tim default dari unit bisnis tersebut.

Selain itu, Anda akan menetapkan peran keamanan apa pun yang diperlukan pengguna. Anda juga akan menambahkannya sebagai anggota tim apa pun. Ingat tim juga dapat memiliki peran keamanan, sehingga hak efektif pengguna adalah kombinasi dari peran keamanan yang ditetapkan langsung yang dikombinasikan dengan tim yang mereka adalah anggotanya. Keamanan selalu bersifat tambahan yang menawarkan izin paling terbatas dari penetapan mereka. Berikut ini adalah panduan yang baik untuk mengkonfigurasi keamanan lingkungan.

Jika Anda telah menggunakan keamanan level kolom, Anda perlu mengasosiasikan pengguna atau tim pengguna ke salah satu Profil Keamanan Kolom yang Anda buat.

Keamanan adalah artikel yang kompleks dan terbaik dicapai sebagai upaya bersama antara pembuat aplikasi dan tim yang mengelola izin pengguna. Perubahan besar harus dikoordinasikan dengan baik di awal penyebaran perubahan ke lingkungan.

Lihat juga

Mengonfigurasi keamanan lingkungan
Peran keamanan dan hak istimewa