Mongo管理用户相关操作总结
列出所有用户
mongo
use admin
db.system.users.find()
use admin
db.system.users.find()
禁用认证模式
/etc/mongod.conf
noauth = true
auth = false
noauth = true
auth = false
创建用户
用户是基于数据库的,在admin数据库上创建的用户属于管理者用户。
管理者用户的创建
拥有所有数据库管理权限的用户
use admin
db.createUser({
user : “用户名”
pwd : “密码”
roles : [
{
role : “userAdminAnyDatabase”
db : “admin”
}
]
})
db.createUser({
user : “用户名”
pwd : “密码”
roles : [
{
role : “userAdminAnyDatabase”
db : “admin”
}
]
})
特定数据库管理权限的用户
use “数据库名”
db.createUser({
user : “用户名”,
pwd : “密码”,
roles : [
{
role : “userAdmin”,
db : “数据库名”
}
]
})
db.createUser({
user : “用户名”,
pwd : “密码”,
roles : [
{
role : “userAdmin”,
db : “数据库名”
}
]
})
一般用户
db “数据库名”
db.createUser({
user : “用户名”,
pwd : “密码”,
roles: [
{
role : “read”, # or “readWrite”
db : “数据库名”,
}
]
})
db.createUser({
user : “用户名”,
pwd : “密码”,
roles: [
{
role : “read”, # or “readWrite”
db : “数据库名”,
}
]
})
用户验证
db.auth(“用户名”, “密码”)
mongo shell 启动的验证
$ mongo “数据库名” -u “用户名” -p “密码”
mongo shell 启动的验证
$ mongo “数据库名” -u “用户名” -p “密码”
删除用户
use “数据库名”
db.system.users.remove({user: “要删除的用户名”})
db.system.users.remove({user: “要删除的用户名”})
例:创建一个数据库用户,对该数据具有读写权限
创建一个对数据库具有读写权限的数据库用户
use dbname ;
db.createUser({user: “dbuser”, pwd: “dbuseradmin”, roles:[{role: “readWrite”, db: “dbname”}] })
db.createUser({user: “dbuser”, pwd: “dbuseradmin”, roles:[{role: “readWrite”, db: “dbname”}] })
数据库用户登录
mongo dbname -u dbuser -p dbduseradmin