是否有像MongoDB的“root”用户的超级UNIX?我一直在看http://docs.mongodb.org/manual/reference/user-privileges/并尝试了很多组合,但它们似乎都缺乏一个区域或另一个区域。当然,有一个角色高于那里列出的所有角色。
虽然开箱即用,MongoDb没有身份验证,但您可以通过对admin
数据库的特定用户使用“any”角色来创建等效的root /超级用户。
像这样的东西:
use admin
db.addUser( { user: "<username>",
pwd: "<password>",
roles: [ "userAdminAnyDatabase",
"dbAdminAnyDatabase",
"readWriteAnyDatabase"
] } )
虽然2.6中有一个新的root用户,但您可能会发现它不能满足您的需求,因为它仍有一些限制:
提供对readWriteAnyDatabase,dbAdminAnyDatabase,userAdminAnyDatabase和clusterAdmin角色组合的操作和所有资源的访问。
root不包括对以系统开头的集合的任何访问权限。字首。
使用db.createUser
作为db.addUser
被删除。
最好的超级用户角色是root。语法是:
use admin
db.createUser(
{
user: "root",
pwd: "password",
roles: [ "root" ]
})
有关详细信息,请查看built-in roles.
希望这可以帮助 !!!
Mongodb用户管理:
角色列表:
read
readWrite
dbAdmin
userAdmin
clusterAdmin
readAnyDatabase
readWriteAnyDatabase
userAdminAnyDatabase
dbAdminAnyDatabase
创建用户:
db.createUser(user, writeConcern)
db.createUser({ user: "user",
pwd: "pass",
roles: [
{ role: "read", db: "database" }
]
})
更新用户:
db.updateUser("user",{
roles: [
{ role: "readWrite", db: "database" }
]
})
删除用户:
db.removeUser("user")
要么
db.dropUser("user")
查看用户:
db.getUsers();
更多信息:https://docs.mongodb.com/manual/reference/security/#read
有一个超级用户角色:root,这是一个内置角色,可以满足您的需求。
“userAdmin实际上是特定数据库的超级用户角色。具有userAdmin的用户可以授予自己所有权限。但是,userAdmin不会明确授权用户获得用户管理之外的任何权限。”来自the link you posted