MongoDB创建管理员用户

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

db.createUser(
{       user: "Guru99",
pwd: "password",
roles:[{role: "userAdminAnyDatabase" , db:"admin"}]})

root创建mongodb用户和用户组 mongodb 创建用户_Sales

代码说明:

第一步是指定需要创建的“username”和“password”。

第二步是为用户分配角色。由于它需要是数据库管理员,在这种情况下,我们已分配给“ userAdminAnyDatabase”角色。该角色允许用户对MongoDB中的所有数据库具有管理特权。

db参数指定admin数据库,它是MongoDB中一个特殊的元数据库,其中包含该用户的信息。

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

root创建mongodb用户和用户组 mongodb 创建用户_Sales_02

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

MongoDB为单个数据库创建用户

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

成功操作的例子如下:

root创建mongodb用户和用户组 mongodb 创建用户_创建用户_03

db.createUser(
{
user: "Employeeadmin",
pwd: "password",
roles:[{role: "userAdmin" , db:"Employee"}]})

代码说明:

第一步是指定需要创建的“username” 和 “password”。

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

db参数指定用户应对其具有管理特权的数据库。

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

root创建mongodb用户和用户组 mongodb 创建用户_Sales_04

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

管理用户

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

root创建mongodb用户和用户组 mongodb 创建用户_Sales_05

db.createUser(
{
user: "Mohan",
pwd: "password",
roles:[
{
role: "read" , db:"Marketing"},
role: "readWrite" , db:"Sales"}
}
]
})

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

译者:徐扬