官文列举如下(文档不长,过英语四级者可以轻松阅读,就不需要看本文额)(基于MongoDB 3.6的文档,4.0也没有变化):
MongoDB中的角色包含了 对 操作和资源 的一些权限(Privilege),定义好角色后,即可定义用户,然后使用用户对资源执行某些操作。
一个权限由一个特定的资源(Resource)和资源上允许的操作(Action)组成。
资源包括:数据库、集合、一系列集合(set of collections)、集群(cluster)等。更多信息请参考官文Resource Document,其中还有一种内部资源anyResource。
操作有很多,常用的有读、写、创建用户、创建索引、创建视图等,更多信息请参考官文Privilege Actions。
说明:
角色不是全局的,不同的数据库拥有不同的角色;
MongoDB有内建角色,也允许用户添加自己的角色;
下图是根据官文Built-In Roles(1)绘制的思维导图:其中,蓝色Database User Roles、Database Administration Roles是所有数据库都有的,其它几个专属于admin数据库。