如何创建用户管理员
用户管理员用来创建的用户,也用来创建和分配角色。用户管理员可以拥有数据库中的任何特权,可以创建新的用户或者管理员。正常情况下在一个MongoDB的部署中,应该创建用户管理员作为第一个用户,然后使用这个用户创建的所有其他用户。 为了能够创建第一个用户管理员,MongoDB提供userAdmin和userAdminAnyDatabase角色,两个角色支持用户和角色管理操作的各种访问。使用最小权限userAdmin或者使用userAdminAnyDatabase赋予所有有关的特权。 拥有这两个角色的用户可以授予自己无限的特权。具体地,拥有userAdmin角色的用户可以授予本身数据库中的任何特权。一个用户拥有userAdminAnyDatabase角色的用户管理员可以授予本身在系统中的任何特权。 使用以下步骤创建用户管理员,首先连接admin数据库:
mongo --port 27017 --authenticationDatabase admin
然后创建系统用户:
db.createUser({user: "siteUserAdmin",pwd: "password",roles: [{role: "userAdminAnyDatabase",db: "admin"}]}
最后可以验证一下:
db.runCommand({usersInfo:"manager",showPrivileges:true})