引言:一般情況下,mongoDB 數據庫都要建立認證連接,這就需要用戶對數據庫創建管理員和用戶認證,而對於mongoDB 而言,在創建管理員和用戶時,分配的roles 是決定用戶操作數據庫權限的關鍵。
MongoDB 4.0 及以上版本
roles 詳解如下:
數據庫用戶角色(Database User Roles)
- read : 授權User只讀數據的權限,允許用戶讀取指定的數據庫
- readWrite 授權User讀/寫數據的權限,允許用戶讀/寫指定的數據庫
數據庫管理角色(Database Admininstration Roles)
- dbAdmin:在當前的數據庫中執行管理操作,如索引的創建、刪除、統計、查看等
- dbOwner:在當前的數據庫中執行任意操作,增、刪、改、查等
- userAdmin :在當前的數據庫中管理User,創建、刪除和管理用戶。
備份和還原角色(Backup and Restoration Roles)
- backup
- restore
跨庫角色(All-Database Roles)
- readAnyDatabase:授權在所有的數據庫上讀取數據的權限,只在admin 中可用
- readWriteAnyDatabase:授權在所有的數據庫上讀寫數據的權限,只在admin 中可用
- userAdminAnyDatabase:授權在所有的數據庫上管理User的權限,只在admin中可用
- dbAdminAnyDatabase: 授權管理所有數據庫的權限,只在admin 中可用
集羣管理角色(Cluster Administration Roles)
- clusterAdmin:授權管理集羣的最高權限,只在admin中可用
- clusterManager:授權管理和監控集羣的權限
- clusterMonoitor:授權監控集羣的權限,對監控工具具有readonly的權限
- hostManager:管理server
超級角色(super master Roles)
- root :超級賬戶和權限,只在admin中可用le