Saat Anda membuat instans ApsaraDB for MongoDB, sistem secara otomatis membuat akun root di database admin. Izin yang diberikan kepada akun root ini bergantung pada versi MongoDB yang dijalankan oleh instans Anda.
| Versi instans | Peran yang diberikan ke akun root |
|---|---|
| MongoDB 4.2 dan sebelumnya | Peran bawaan root |
| MongoDB 4.4 atau lebih baru | alibabaCloudAdmin (peran kustom Alibaba Cloud) |
Untuk memeriksa apa yang dapat dilakukan oleh akun root, jalankan:
db.getSiblingDB("admin").runCommand({usersInfo: "root"});Untuk detail mengenai perintah usersInfo, lihat usersInfo.
Untuk memeriksa izin suatu peran tertentu, gunakan perintah rolesInfo. Untuk peran bawaan root, lihat root.
Demi keamanan data, hindari menggunakan akun root untuk operasi database sehari-hari. Sebagai gantinya, buat akun database khusus dengan hanya izin yang dibutuhkan oleh workload Anda. Lihat Buat akun untuk instans ApsaraDB for MongoDB.
Izin peran alibabaCloudAdmin
Peran alibabaCloudAdmin adalah peran kustom untuk ApsaraDB for MongoDB. Peran ini berbeda dari peran root standar — memahami perbedaan ini membantu Anda menghindari error izin yang tidak terduga.
Peran bawaan yang disertakan
Peran alibabaCloudAdmin menggabungkan peran bawaan MongoDB berikut:
| Peran bawaan | Kemampuan |
|---|---|
readWriteAnyDatabase | Membaca dan menulis koleksi di database mana pun |
userAdminAnyDatabase | Mengelola akun di database mana pun |
dbAdminAnyDatabase | Meminta statistik dan mengelola indeks di database mana pun |
clusterMonitor | Akses read-only ke alat pemantauan |
backup | Melakukan operasi backup |
enableSharding | Mengaktifkan sharding pada database |
restore | Memulihkan data dari backup |
Pembatasan database admin
Peran alibabaCloudAdmin memiliki akses read-only ke database admin. Peran ini tidak dapat menulis ke database admin dan tidak dapat membuat akun dengan izin menulis pada database admin.
Pada beberapa skenario, jitter performa parah dapat terjadi saat Anda menulis data ke database admin. Akibatnya, Anda tidak dapat membuat pengguna atau peran dengan izin readWrite, dbAdmin, atau dbOwner yang diterapkan pada database admin.
Perbedaan dari perilaku MongoDB standar
Izin xxxAnyDatabase di ApsaraDB for MongoDB (seperti readWriteAnyDatabase) tidak mencakup database config, local, dan admin. Di MongoDB standar, peran-peran tersebut mencakup semua database. Ingat hal ini saat memberikan izin untuk operasi yang menyentuh database sistem tersebut.
Perintah O&M kluster sharded
Untuk instans kluster sharded, akun root dengan peran alibabaCloudAdmin dapat menjalankan perintah O&M berikut secara langsung:
flushRouterConfig, cleanupOrphaned, runCommandOnShard, splitVector, clearJumboFlag, moveChunk, splitChunk