MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Menerapkan Kontrol Akses Berbasis Peran dengan ClusterControl

Dalam rilis terbaru dari ClusterControl versi 1.8.2 dari Somenines, kami telah memperkenalkan banyak fitur dan perubahan yang canggih. Salah satu fitur penting adalah Sistem Manajemen Pengguna yang baru ditingkatkan, yang mencakup Manajemen Pengguna Baru dan LDAP. Kemampuan pelengkap yang ada di ClusterControl adalah Kontrol Akses Berbasis Peran (RBAC) untuk Manajemen Pengguna, yang menjadi fokus blog ini.

Kontrol Akses Berbasis Peran di ClusterControl

Bagi mereka yang tidak terbiasa dengan Kontrol Akses Berbasis Peran (RBAC) ClusterControl, ini adalah fitur yang memungkinkan Anda untuk membatasi akses pengguna tertentu ke fitur cluster database tertentu dan tindakan atau tugas administratif. Misalnya, akses ke penerapan (menambahkan penyeimbang beban, menambahkan cluster yang ada), fitur pengelolaan, dan pemantauan. Ini memastikan bahwa hanya pengguna yang berwenang yang diizinkan untuk bekerja dan melihat berdasarkan peran masing-masing dan menghindari gangguan yang tidak diinginkan atau kesalahan manusia dengan membatasi akses peran ke tugas administratif. Akses ke fungsionalitas sangat halus, memungkinkan akses untuk ditentukan oleh organisasi atau pengguna. ClusterControl menggunakan kerangka izin untuk menentukan bagaimana pengguna dapat berinteraksi dengan fungsi manajemen dan pemantauan berdasarkan tingkat otorisasi mereka.

Kontrol Akses Berbasis Peran di ClusterControl memainkan peran penting terutama bagi pengguna admin yang terus-menerus menggunakannya sebagai bagian dari tugas DBA mereka. ClusterControl DBA harus terbiasa dengan fitur ini karena memungkinkan DBA untuk mendelegasikan tugas kepada anggota tim, mengontrol akses ke fungsionalitas ClusterControl, dan tidak mengekspos semua fitur dan fungsionalitas ke semua pengguna. Ini dapat dicapai dengan memanfaatkan fungsi Manajemen Pengguna, yang memungkinkan Anda mengontrol siapa yang dapat melakukan apa. Misalnya, Anda dapat menyiapkan Tim seperti analis, devops, atau DBA, dan menambahkan batasan sesuai dengan cakupan tanggung jawab mereka untuk kluster database tertentu.

Kontrol akses ClusterControl digambarkan dalam diagram berikut,

Rincian istilah yang digunakan di atas disediakan di bawah. Sebuah Tim dapat ditugaskan ke satu atau beberapa cluster database yang dikelola oleh ClusterControl. Sebuah Tim terdiri dari kosong atau beberapa pengguna dalam sebuah Tim. Secara default, saat membuat Tim baru, akun admin super akan selalu dikaitkan dengannya. Menghapus superadmin tidak menghilangkan tautan ke Tim baru tersebut.

Pengguna dan Cluster harus ditetapkan ke Tim; itu adalah implementasi wajib dalam ClusterControl. Secara default, akun super-admin ditujukan untuk tim Admin, yang telah dibuat secara default. Cluster Basis Data juga ditetapkan ke tim Admin secara default.

Peran tidak boleh memiliki Pengguna yang ditetapkan atau dapat ditetapkan ke beberapa pengguna sesuai dengan peran ClusterControl mereka.

Peran di ClusterControl

Peran dalam ClusterControl sebenarnya disetel secara default. Peran default ini mengikuti:

  • Admin Super - Ini adalah peran tersembunyi, tetapi ini adalah peran administrator super (superadmin), yang berarti semua fitur tersedia untuk peran ini. Secara default, pengguna yang Anda buat setelah penginstalan berhasil mewakili peran Admin Super Anda. Selain itu, saat membuat Tim baru, superadmin selalu ditetapkan ke Tim baru secara default.

  • Admin - Secara default, hampir semua fitur dapat dilihat. Dapat dilihat berarti pengguna di bawah peran Admin dapat melakukan tugas pengelolaan. Fitur yang tidak tersedia untuk peran ini adalah Penasihat Pelanggan dan Manajemen Kunci SSL.

  • Pengguna - Integrasi, akses ke semua cluster, dan beberapa fitur tidak tersedia untuk peran ini dan ditolak oleh bawaan. Ini berguna jika Anda ingin menetapkan pengguna biasa yang tidak dimaksudkan untuk mengerjakan tugas database atau administratif. Ada beberapa langkah manual yang harus dilakukan bagi mereka yang memiliki peran Pengguna untuk melihat cluster lain.

Peran di ClusterControl bersifat arbitrer sehingga administrator dapat membuat peran arbitrer dan menetapkannya ke pengguna di bawah Teams.

Cara Masuk ke Peran ClusterControl

Anda dapat membuat peran khusus dengan kumpulan tingkat aksesnya sendiri. Tetapkan peran ke pengguna tertentu di bawah tab Teams. Ini dapat dicapai dengan menempatkan Manajemen Pengguna di bilah samping di sudut kanan. Lihat tangkapan layarnya, di bawah ini:

Menegakkan Kontrol Akses Berbasis Peran dengan ClusterControl

Menegakkan RBAC adalah khusus domain pengguna, yang membatasi akses pengguna ke fitur ClusterControl sesuai dengan peran dan hak istimewa mereka. Dengan mengingat hal ini,  kita harus mulai membuat pengguna tertentu.

Membuat Pengguna di ClusterControl

Untuk membuat pengguna, mulai di bawah Manajemen Pengguna tab Tim. Sekarang, mari kita buat Tim terlebih dahulu.

Setelah dibuat, ada akun super-admin yang ditautkan secara default setelah Tim dibuat.

Sekarang, mari tambahkan pengguna baru. Menambahkan pengguna baru harus dilakukan di bawah Tim, sehingga kami dapat membuatnya di bawah DevOps.

Seperti yang mungkin telah Anda perhatikan, pengguna baru yang kita buat sekarang berada di bawah peran Pengguna, yang ditambahkan secara default di dalam ClusterControl. Kemudian Tim juga berada di bawah DevOps.

Pada dasarnya, sekarang ada dua pengguna di bawah Tim DevOps seperti yang ditunjukkan di bawah ini:

Perhatikan bahwa Peran adalah khusus domain pengguna, jadi ini menerapkan pembatasan akses hanya untuk pengguna tertentu, dan tidak untuk Tim tempatnya.

Peran Admin vs Pengguna (Peran Default di ClusterControl)

Karena kami memiliki dua peran yang ditambahkan secara default di ClusterControl, ada batasan yang ditetapkan secara default. Untuk mengetahui apa saja ini, cukup buka  Pengelolaan Pengguna Kontrol Akses. Di bawah ini adalah tangkapan layar yang menggambarkan fitur atau hak istimewa yang tersedia yang dapat dilakukan oleh pengguna yang termasuk dalam peran tersebut:

Peran Admin

Peran Pengguna

Peran Admin memiliki lebih banyak hak istimewa, sedangkan Peran Pengguna memiliki beberapa hak istimewa yang dibatasi. Peran default ini dapat dimodifikasi sesuai dengan konfigurasi yang Anda inginkan. Menambahkan Peran juga memungkinkan Anda memulai dan menetapkan peran mana yang diizinkan atau tidak. Misalnya, kita akan membuat Role baru. Untuk membuat peran, cukup tekan tombol "+" plus di sepanjang peran. Anda dapat melihat peran baru yang kami buat bernama Viewer.

Semua centang tidak dicentang. Cukup centang di bawah kolom Izinkan untuk mengaktifkan fitur atau hak istimewa atau centang di bawah kolom Tolak jika Anda ingin menolak akses. Kolom Kelola memungkinkan pengguna dalam peran tersebut untuk melakukan tugas manajemen. Sedangkan kolom Ubah memungkinkan Anda untuk mengaktifkan modifikasi yang hanya tersedia untuk hak istimewa atau fitur di bawah Alarm, Pekerjaan, dan Pengaturan.

Menguji RBAC

Dalam contoh ini, cluster berikut ada di controller saya seperti yang ditunjukkan di bawah ini:

Ini dapat dilihat oleh akun administrator super di lingkungan ini.

Sekarang kita telah mengatur RBAC untuk pengguna yang baru saja kita buat, mari kita coba masuk menggunakan email dan kata sandi yang baru saja kita tetapkan.

Inilah yang dibuat,

Tidak ada cluster yang tersedia dan dapat dilihat, dan beberapa hak istimewa ditolak seperti yang ditunjukkan di bawah ini seperti Pengaturan Manajemen Kunci dan Notifikasi Email:

Menyesuaikan RBAC

Karena hak istimewa dalam peran dapat diubah, mudah untuk mengelolanya melalui Manajemen Pengguna Kontrol Akses.

Sekarang, izinkan pengguna yang dibuat untuk melihat cluster. Karena pengguna kami telah menolak Akses Semua Cluster, kami harus mengaktifkannya. Lihat di bawah,

Sekarang, seperti yang telah kami nyatakan sebelumnya berdasarkan diagram, Cluster dikendalikan oleh Tim. Misalnya, ada tugas cluster berikut,  di bawah:

Karena kita perlu menetapkan kluster ke tim yang tepat, memilih kluster tertentu dan mengklik tombol "Ubah Tim" akan menampilkan perintah yang memungkinkan Anda untuk menetapkannya kembali ke Tim yang tepat.

Sekarang, mari kita tetapkan ke DevOps.

Sekarang, login kembali sebagai pengguna yang baru dibuat, dan kita akan dapat melihat cluster.

Ringkasan

Kontrol Akses Berbasis Peran (RBAC) di ClusterControl adalah fitur yang menyediakan kontrol akses restriktif berbutir halus untuk setiap pengguna yang Anda buat di ClusterControl, memungkinkan keamanan yang lebih besar dan kontrol akses yang lebih restriktif berdasarkan peran pengguna.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. 4 Cara Memperbarui Dokumen di MongoDB

  2. Mongodb findAndModify node js

  3. Desain Skema MongoDB:Selalu Ada Skema

  4. Apakah Mongoose mendukung metode `findAndModify` Mongodb?

  5. Pemantauan Database Tanpa Agen dengan ClusterControl