好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

MongoDB 用户管理

小小最近接触了MongoDB,所以这里开始学习MongoDB,之用户管理模块的相关内容。

进入MongoDB的Shell

这里输入如下的命令,进入MongoDB的shell

?

1

mongo

切换数据库

?

1

use admin

使用如上的命令,切换数据库到admin数据库。

创建超级管理员用户

创建超级管理员权限的用户

?

1

2

3

4

5

6

7

db.createUser(

  { user: "admin" ,

   customData:{description: "superuser" },

   pwd : "admin" ,

   roles: [ { role: "userAdminAnyDatabase" , db: "admin" } ]

  }

)

其中各个字段解释如下

user字段: 新用户的名字。 pwd 字段 用户的密码 cusomData 字段,任意内容,可以是用户名的全民介绍。 roles 字段 指定用户的角色,用于给一个空数组,给新用户设定空的角色,在roles字段,可以指定设置相关的角色。 db 数据库的名字,用于管理数据库。

创建超级用户

这里创建一个超级用户,用于管理全部用户的权限

?

1

2

3

4

5

6

7

db.createUser(

   {

     user: "root" ,

     pwd : "pwd" ,

     roles:[ "root" ]

   }

)

创建一个业务数据库的管理员的用户

这个用户专门负责一个或者几个数据库的增删查改。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

> db.createUser({

   user: "user001" ,

   pwd : "123456" ,

   customData:{

     name: 'jim' ,

     email: 'jim@qq.com' ,

     age:18,

   },

   roles:[

     {role: "readWrite" ,db: "db001" },

     {role: "readWrite" ,db: "db002" },

     'read' // 对其他数据库有只读权限,对db001、db002是读写权限

   ]

})

其中

数据库用户角色,read,readWrite。 数据库管理角色: dbAdmin,dbOwner,userAdmin 集群管理角色: clusterAdmin,clusterManager,clusterMonitor,hostManage。 备份恢复角色: backup,restore。 所有数据库角色: readAnyDatabase。readWriteAnyDatabase,userAdminAnyDatabase,dbAdminAnyDatabase。 超级用户角色: root 内部角色 _system

这样就完成了一个最基本的数据库管理角色的创建。

查看和创建用户

使用如下的命令,进行查看和创建用户

?

1

show users

使用该命令可以实现对用户的查看和创建用户。

修改密码

?

1

2

use admin

db.changeUserPassword( "username" , "xxx" )

使用该命令,可以实现对密码的修改。

修改密码和用户信息

?

1

2

3

4

5

6

7

db.runCommand(

   {

     updateUser: "username" ,

     pwd : "xxx" ,

     customData:{title: "xxx" }

   }

)

删除数据库用户

?

1

2

use admin

db.dropUser( 'user001' )

创建其他数据库管理员

?

1

2

3

4

5

6

// 登录管理员用户

use admin

db.auth( 'admin' , 'admin' )

// 切换至db001数据库

use db001

// ... 増查改删该数据库专有用户

核心,启用权限验证

权限设定完成以后,需要输入如下的命令,用于启用权限验证。

?

1

mongo --auth

所有的修改,都需要重写启动mongodb

所有的修改,都需要重写启动mongodb,才可以生效

?

1

2

net stop mongodb;

net start mongodb;

以上就是MongoDB 用户管理的详细内容,更多关于MongoDB 用户管理的资料请关注服务器之家其它相关文章!

原文链接:https://www.iming.info/2020/08/07/%E6%96%B0%E7%9F%A5-mongodb-%E8%B4%A6%E5%8F%B7%E7%AE%A1%E7%90%86/?utm_source=tuicool&utm_medium=referral

查看更多关于MongoDB 用户管理的详细内容...

  阅读:18次