- A+
所属分类:mongodb
1. 创建一个不受访问限制的超级用户
1 2 3 4 5 6 7 8 |
use admin db.createUser( { user:"root", pwd:"www.ttlsa.com", roles:["root"] } ) |
2. 创建一个超级用户
超级用户的role有两种,userAdmin和userAdminAnyDatabase
1 2 3 4 5 6 7 8 9 10 11 12 |
use admin db.createUser( { user: "admin", pwd: "www.ttlsa.com", roles:[ { role: "userAdminAnyDatabase", db: "admin" }] } ) |
db是指定数据库的名字,admin是管理数据库。
3. 创建普通用户
1 2 3 4 5 6 7 8 9 10 11 12 |
use admin db.createUser( { user:"dev", pwd:"www.ttlsa.com", roles:[ {role:"read",db:"db01"}, {role:"read",db:"db02"}, {role:"read",db:"db03"} ] } ) |
4. 查看当前用户权限
1 2 3 4 5 6 |
db.runCommand( { usersInfo:"userName", showPrivileges:true } ) |
只能查看当前数据库中的用户,哪怕当前数据库admin数据库,也只能查看admin数据库中创建的用户。
5. 修改用户密码
1 2 |
use admin db.changeUserPassword("username", "xxx") |
6. 查看用户信息
1 |
db.runCommand({usersInfo:"userName"}) |
7. 修改用户密码和用户信息
1 2 3 4 5 6 7 |
db.runCommand( { updateUser:"username", pwd:"xxx", customData:{title:"xxx"} } ) |
注:
- 与用户管理相关的操作基本都要在admin数据库下运行,要先use admin;
- 如果在某个单一的数据库下,那只能对当前数据库的权限进行操作;
- db.addUser是老版本的操作,现在版本也还能继续使用,创建出来的user是带有root role的超级管理员。

微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~