1、不带 --auth 参数下启动mongod服务。

2、执行mongo命令,连接到mongo服务,成功进入后如下图所示:

3、执行use admin命令,进入到admin数据库,如下图所示:

4、创建一个超级账号:

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


// readWriteAnyDatabase:只在admin数据库中可用,赋予对应用户所有数据库的读写权限
// userAdminAnyDatabase:只在admin数据库中可用,赋予对应用户所有数据库的userAdmin权限

5、带 --auth 参数下重新启动mongod服务。

6、创建一个新的db,并给某个用户追加或者新增权限:

// 1、切到admin数据库
use admin

// 2、登陆user1超级管理员
db.auth("user1","123456")

// 3、准备创建新的数据库mydb
use mydb

// 4、创建一个集合test并插入一条数据,这样才会真正创建mydb数据库
db.test.insert({})

// 5、再mydb数据库里面,执行创建用户命令,这样,改用户就拥有改数据库的权限了
db.createUser({user:"user1",pwd:"123456",roles:[{role:"readWrite",db:"mydb"}]})

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐