欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mongo 权限认证

程序员文章站 2022-05-09 11:40:07
...
1、首先关闭权限认证模式。

2、show dbs  (只能看到  local库,因为3.X 版本以上 admin 库已经不存在)

添加管理员用户:

use admin

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

roles 中的 db 参数是必须的,不然会报错:Error: couldn’t add user: Missing expected field “db”。另外,有很多文章记录的是使用 db.addUser(…) 方法,这个方法是旧版的,3.0中已经不存在


  切换到admin下,查看刚才创建的用户

show  users 或者  db.system.users.find();

怎么关闭 mongoDB?千万不要 kill -9 pid,可以 kill -2 pid 或 db.shutdownServer()

开启 monog 权限认证模式  :使用配置文件 开启注释 :  auth=true   或者使用权限认证模式启动:    1.使用--auth参数启动MongoDB:

use  admin

db.auth("admin","admin");

此时 show collections:

会报错。 因为admin 用户只有 管理用用户权限

use  库 

创建用户

db.createUser({user:"marvel",pwd:"aa111111",roles:[{role:"readWrite",db:"studentfavor"}]})

show  users

use admin

db.system.users.find();


验证  

use  studentfavor 

show  collections
报错 :因为没加权限验证

显然没权限,先auth:

db.auth("root","aa111111");

相关标签: mongo