User-Defined Roles

在本页面

2.6 版的新功能。

MongoDB 提供了多个built-in roles。但是,如果这些角色无法描述所需的特权集,则可以创建新角色。

角色 Management 界面

要添加角色,MongoDB 提供了db.createRole()方法。 MongoDB 还提供了更新现有用户定义角色的方法。有关角色 Management 方法的完整列表,请参见Role Management

Scope

添加角色时,可以在特定数据库中创建角色。 MongoDB 使用数据库和角色名称的组合来唯一定义角色。

除在admin数据库中创建的角色外,角色只能包含适用于其数据库的特权,并且只能从其数据库中的其他角色继承。

admin数据库中创建的角色可以包括应用于admin数据库,其他数据库或cluster资源的特权,并且可以从其他数据库以及admin数据库中的角色继承。

集中角色数据

MongoDB 将所有角色信息存储在admin数据库的system.roles集合中

不要直接访问此集合,而要使用角色 Management 命令来查看和编辑自定义角色。