文档数据库服务提供了一些预置角色,这些角色具有特定的权限和功能,可以用于管理文档数据库服务实例或集群。以下是文档数据库服务中的预置角色:
角色 | 权限描述 | 包含的操作命令 |
---|---|---|
read | 该角色具有读取所有非系统集合数据和订阅部分系统集合(system.indexes、system.js、system.namespaces)的权限。 | changeStream、collStats、dbHash、dbStats、find、killCursors、listIndexes、listCollections |
readWrite | 该角色基于read角色的权限,并额外增加了对非系统集合数据的修改权限。然而,该角色仅对系统集合中的system.js具有修改权限。 | collStats、convertToCapped、createCollection、dbHash、dbStats、dropCollection、createIndex、dropIndex、find、insert、killCursors、listIndexes、listCollections、remove、renameCollectionSameDB、update |
dbAdmin | 该角色具备执行特定管理任务的权限,包括与模式相关的操作、索引管理和收集统计信息等。然而,该角色不包含对用户和角色进行管理的权限。 | 对于系统集合(system.indexes、system.namespaces、system.profile)包含命令操作:collStats、dbHash、dbStats、find、killCursors、listIndexes、listCollections、dropCollection and createCollection(仅适用system.profile) 对于非系统集合包含命令操作:bypassDocumentValidation、collMod、collStats、compact、convertToCapped、createCollection、createIndex、dbStats、dropCollection、dropDatabase、dropIndex、enableProfiler、reIndex、renameCollectionSameDB、repairDatabase、storageDetails、validate |
userAdmin | 该角色具有在当前数据库中创建和修改角色以及用户的权限。此角色允许向任何用户(包括自身)授予任意权限,因此间接提供对超级用户(root)的访问权限。如果限定在admin数据库中,该角色还包括集群管理权限。 | changeCustomData、changePassword、createRole、createUser、dropRole、dropUser、grantRole、revokeRole、setAuthenticationRestriction、viewRole、viewUser |
dbOwner | 该角色是MongoDB中的一种数据库管理角色,授予了对指定数据库的完全权限。该角色具有管理指定数据库的能力,可以执行各种操作,如创建、修改和删除集合、索引和用户等。dbOwner角色拥有对指定数据库的所有权限,包括对数据库中任何集合、索引和用户的创建、修改和删除操作。 | createCollection 、dropCollection、 createIndex 、dropIndex、createUser、updateUser、removeUser 、dropAllUsersFromDatabase、grantRolesToUser、revokeRolesFromUser 、dropAllRolesFromDatabase、viewRole 、viewUser、convertToCapped、collMod、dbStats |