宝塔-安装mongodb,密码验证 mongo



#修改配置

# network interfaces

net:

  port: 27017

  bindIp: 0.0.0.0

......

security:

#  authorization: disabled  注意此处 这个是关闭 enabled 是开启

  authorization: enabled

  javascriptEnabled: false

# 个人建议加入以下参数

setParameter:

  enableLocalhostAuthBypass: false  


#重启

service mongod restart  


#进入数据库

/www/server/mongodb/bin/mongo


#切换到admin数据库

use admin  

db.createUser({user:"mongo",pwd:"bgnT$HvtZJj91!LX",roles:["root"]})  

or

db.createUser({ user: "mongo", pwd: "bgnT$HvtZJj91!LX", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })

---mongodb中的用户是基于身份role的,该管理员账户的 role是 userAdminAnyDatabase。 ‘userAdmin’代表用户管理身份,’AnyDatabase’ 代表可以管理任何数据库。


# 执行认证

db.auth("user_test","pwd_test") 


note: 注意是admin数据库。

---新建你需要管理的mongodb 数据的账号密码。

use yourdatabase

db.createUser({ user: "youruser", pwd: "yourpassword", roles: [{ role: "dbOwner", db: "yourdatabase" }] })

---rote:dbOwner 代表数据库所有者角色,拥有最高该数据库最高权限。比如新建索引等


---新建数据库读写账户

use yourdatabase

db.createUser({ user: "youruser2", pwd: "yourpassword2", roles: [{ role: "readWrite", db: "yourdatabase" }] })

---该用户用于该数据的读写,只拥有读写权限。


删除用户:

db.dropUser(<user_name>) 删除某个用户,接受字符串参数

db.dropUser(“admin”)

-删除当前库的所有用户

`db.dropAllUser()`


Read:允许用户读取指定数据库

readWrite:允许用户读写指定数据库

dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile

userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户

clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。

readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限

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

userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限

dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。

root:只在admin数据库中可用。超级账号,超级权限


签名:这个人很懒,什么也没有留下!
最新回复 (0)
返回