MongoDB权限机制
需求
使用权限机制,开启验证模式
语法
db.createUser({
"user":"账号",
"pwd":"密码",
"roles":[{
role:"角色",
db:"所属数据库"
}]
})
角色
超级用户角色:root
数据库用户角色:read、readWrite
数据库管理角色:dbAdmin、userAdmin
集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager
备份恢复角色:backup、restore
所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
开启验证模式
用户需要输入账号密码才能登陆
操作步骤
1.添加超级管理员
2.退出卸载服务
3.重新安装需要账号密码的服务(在原安装命令上加–auth即可)
4.启动服务–>登陆测试
1.添加超级管理员
//登录数据库后,输入mongo
mongo
//必须进入admin数据库
use admin
//设置超级管理员
db.createUser({
"user":"admin",
"pwd":"admin888",
"roles":[{
role:"root",
db:"admin"
}]
})
//格式化查看数据库角色
db.system.users.find().pretty()
2.退出卸载服务
用管理员身份打开DOS窗口
bin\mongod --remove
3.安装需要身份验证的MongoDB服务
mongod --install --dbpath E:\mongodb\data --logpath E:\mongodb\logs\mongodb2.log --auth
新的日志文件与原来的不要重复
4.启动服务+登录测试
启动服务不再进行安全警告,没有进行安全验证也看不了数据库内容
成功!
5.通过超级管理员登录
- 方法一
mongo 服务器IP地址:端口/数据库 -u数据库 -p密码
mongo 127.0.0.1:27017/admin -u admin -p admin888
- 方法二
a-先登录 b-选择数据库 c-输入db.auth(用户名,密码)