mongo 创建用户

在MongoDB中,可以通过创建用户来对数据库进行安全的访问控制。用户可以被赋予特定的权限,以便在访问数据库时进行验证。接下来将详细介绍如何在MongoDB中创建用户。
步骤1:连接到MongoDB
首先,我们需要连接到MongoDB数据库。可以通过命令行客户端或者图形化界面工具连接到MongoDB。命令行方式连接的示例代码如下:
mongo
连接到数据库后,我们可以通过以下命令查看当前数据库中已存在的用户:
use admin
db.system.users.find()
步骤2:创建用户
接下来,我们可以使用db.createUser()方法来创建用户。下面是一个示例代码:
use admin
db.createUser({
user: "newUser",
pwd: "newPassword",
roles: [{ role: "readWrite", db: "testDB" }]
})
在上面的代码中,我们创建了一个名为newUser的用户,密码为newPassword,并赋予了该用户在testDB数据库中的readWrite权限。我们也可以根据需要赋予不同的权限角色,比如read, readWrite, dbAdmin, userAdmin等。
步骤3:验证用户
创建用户后,我们可以通过以下命令来验证用户:
db.auth("newUser", "newPassword")
如果用户名和密码匹配,将返回1表示验证成功,否则返回0表示验证失败。
示例代码运行结果
下面是一个完整的示例代码及其运行结果:
mongo
use admin
db.createUser({
user: "newUser",
pwd: "newPassword",
roles: [{ role: "readWrite", db: "testDB" }]
})
db.auth("newUser", "newPassword")
运行结果:
MongoDB shell version v4.4.3
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("6572d13e-2a10-4ed0-abae-115c7c91d4e0") }
MongoDB server version: 4.4.3
switched to db admin
Successfully added user: {
"user" : "newUser",
"roles" : [
{
"role" : "readWrite",
"db" : "testDB"
}
]
}
1
结论
通过上面的步骤,我们成功创建了一个用户并赋予了相应的权限。在实际应用中,我们可以根据具体需求创建不同权限的用户,以保障数据库的安全性。
极客教程