1. 主页
  2. 文档
  3. MongoDB初学者教程——7天学习MongoDB
  4. 如何在MongoDB中创建用户并添加角色

如何在MongoDB中创建用户并添加角色

MongoDB创建管理员用户

通过使用createUser方法在MongoDB中创建用户管理员。下面演示如何操作。

db.createUser(

{       user: "Guru99",

pwd: "password",

roles:[{role: "userAdminAnyDatabase" , db:"admin"}]})

代码说明:

  1. 第一步是指定需要创建的“username”和“password”。
  2. 第二步是为用户分配角色。由于它需要是数据库管理员,在这种情况下,我们已分配给“ userAdminAnyDatabase”角色。该角色允许用户对MongoDB中的所有数据库具有管理特权。
  3. db参数指定admin数据库,它是MongoDB中一个特殊的元数据库,其中包含该用户的信息。

命令执行成功,结果如下:

显示创建了一个名为“ Guru99”的用户,该用户对MongoDB中的所有数据库具有权限。

 

MongoDB为单个数据库创建用户

要创建将管理单个数据库的用户,我们可以使用上述相同的命令,但是我们只需要使用“ userAdmin”选项。

成功操作的例子如下:

db.createUser(

{

user: "Employeeadmin",

pwd: "password",

roles:[{role: "userAdmin" , db:"Employee"}]})

代码说明:

  1. 第一步是指定需要创建的“username” 和 “password”。
  2. 第二步是为用户分配一个角色,在这种情况下,由于需要成为数据库管理员,因此将其分配给“ userAdmin”角色。该角色允许用户仅对db选项中指定的数据库具有管理特权。
  3. db参数指定用户应对其具有管理特权的数据库。

命令执行成功,结果如下:

结果显示创建了一个名为“ Employeeadmin”的用户,并且该用户仅对“ Employee”数据库具有权限。

 

管理用户

首先了解我们需要定义的角色。MongoDB中提供了完整的角色列表。例如,有一个“read role”仅允许对数据库进行只读访问,然后有一个“ readwrite”角色提供了对数据库的读写访问,这意味着用户可以发出插入,删除和更新该数据库中集合的命令。

db.createUser(

{

user: "Mohan",

pwd: "password",

roles:[

{

role: "read" , db:"Marketing"},

role: "readWrite" , db:"Sales"}

}

]

})

如上代码,显示了创建一个名为Mohan的用户,并且在多个数据库中分配了多个角色。在上面的示例中,他被授予对“ Marketing”数据库的只读权限,对“ Sales”数据库具有readWrite权限。

 

译者:徐扬

源地址:https://www.guru99.com/mongodb-create-user.html

这篇文章对您有用吗? 4

我们要如何帮助您?

评论 1

评论前必须登录!

 

  1. #1

    MongoDB的角色权限设置的很好呀

    Q_Q3年前 (2021-08-31)