Video: Web Programming - Computer Science for Business Leaders 2016 2024
Salah satu kaedah yang paling biasa dalam mendapatkan data dalam NoSQL adalah untuk memberikan setiap rekod (atau dokumen atau graf, bergantung kepada jenis pangkalan data anda) dengan satu set kebenaran yang berkaitan dengan peranan. Ini adalah kawalan akses berasaskan peranan, atau RBAC untuk jangka pendek.
Pertimbangkan pembebasan berita untuk laman web yang sedang disimpan dalam pangkalan data (agregat) pangkalan data NoSQL. Peranan editor mungkin memiliki izin pembaharuan untuk dokumen, sedangkan peranan lebih publik mungkin hanya membaca izin.
Kes penggunaan ini memerlukan keizinan peranan , tidak pengguna . Pengguna boleh diberikan kepada satu atau lebih peranan. Oleh itu, pengguna mewarisi kebenaran berdasarkan jumlah peranan mereka.
Perlu membuat peranan untuk memberi kebenaran kepada pengguna untuk melaksanakan fungsi tertentu mungkin kelihatan seperti kerja tambahan, tetapi pendekatan ini sangat berguna. Pertimbangkan pengguna yang bergerak ke jabatan lain atau yang meninggalkan sepenuhnya.
Anda tidak perlu melihat secara manual untuk setiap dokumen yang kebenarannya menyebut pengguna ini dan menukar atau mengalihkannya. Sebaliknya hanya ubah tugasan peranan pengguna dalam satu operasi. Menggunakan kawalan akses berasaskan peranan (RBAC) adalah lebih mudah untuk penyelenggaraan keselamatan jangka panjang.
Lihat bagaimana pangkalan data mengendalikan keizinan dan warisan peranan. Pertimbangkan pengunderait di sebuah syarikat insurans, di mana mungkin terdapat jurulatih, junior, dan penaja jamin kanan, masing-masing dengan peningkatan akses kepada pelbagai jenis maklumat.
Anda boleh menetapkan hak penjamin emisi junior yang diberikan oleh pelatih, dan beberapa lagi. Kemudian anda boleh memberikan semua kebenaran penaja jamin junior kepada penaja jamin kanan, ditambah beberapa lagi, sekali lagi. Sekiranya anda ingin menambah keizinan tambahan kepada semua peranan ini, anda perlu membuat tiga perubahan yang serupa.
Jika anda mempunyai lima tahap peranan, itu lima salinan. Juga, setiap sistem akan mempunyai banyak peranan seperti ini. Terdapat cara yang lebih baik daripada melaksanakan tugas biasa yang sama berulang-ulang: warisan peranan.
Sesetengah sistem termasuk warisan peranan. Dalam hal ini, peranan JuniorUnderwriter mewarisi peranan Jurulatih Jurulatih, dan peranan SeniorUnderwriter mewarisi daripada peranan JuniorUnderwiter. Kini semua yang perlu anda lakukan untuk menambah kebenaran kepada semua peranan adalah untuk menambahnya hanya peranan TraineeUnderwriter (tahap warisan yang paling rendah), dan semua peranan akan mewarisi kebenaran. Warisan peranan lebih mudah difahami dan dijaga.
Logik kebenaran peranan biasanya dilaksanakan dengan logik ATAU. Iaitu, jika anda menetapkan tiga peranan - RoleA, RoleB, dan RoleC - ke rekod dengan kebenaran baca, pengguna mempunyai kebenaran ini jika dia mempunyai Peranan ATAU Peranan, ATAU Peranan.Jika anda tidak memberikan keizinan membaca peranan ke rekod, maka tiada pengguna telah membaca kebenaran pada rekod itu (tentu saja, warisan selain).