1. 启用认证
首先,你需要确保MongoDB实例启用了认证。这通常在mongod.conf文件中配置。
修改mongod.conf文件
找到并编辑MongoDB的配置文件mongod.conf,通常位于/etc/mongod.conf或/etc/mongodb.conf。
security:
authorization: enabled
2. 创建管理员用户
在启用认证后,你需要创建一个具有管理员权限的用户。
连接到MongoDB
使用mongo shell连接到MongoDB实例。
mongo
创建管理员用户
在admin数据库中创建一个管理员用户。
use admin
db.createUser({
user: "admin",
pwd: "yourStrongPassword",
roles: ["root"]
})
3. 配置其他用户和角色
你可以根据需要创建其他用户和分配角色。
创建普通用户
例如,创建一个名为myUser的用户,并分配readWrite角色。
use myDatabase
db.createUser({
user: "myUser",
pwd: "myUserPassword",
roles: ["readWrite", "dbOwner"]
})
4. 重启MongoDB服务
修改配置文件后,需要重启MongoDB服务以使更改生效。
在Linux上
sudo systemctl restart mongod
在Windows上
通过服务管理器重启MongoDB服务。
5. 使用认证连接
在客户端连接MongoDB时,需要提供用户名和密码。
使用mongo shell
mongo -u admin -p yourStrongPassword --authenticationDatabase admin
使用应用程序连接
在应用程序代码中,配置连接字符串以包含用户名和密码。
例如,在Node.js中使用mongoose:
const mongoose = require('mongoose');
mongoose.connect('mongodb://admin:yourStrongPassword@localhost:27017/myDatabase', {
useNewUrlParser: true,
useUnifiedTopology: true,
authSource: 'admin'
});
6. 验证认证
确保所有用户都能正确登录并访问其权限范围内的数据。
通过以上步骤,你可以在MongoDB中成功配置认证,确保数据库的安全性。
以上就是关于“MongoDB如何配置认证”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm