欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mongodb学习笔记(3)——用户管理

程序员文章站 2022-07-14 19:58:43
...


注意:
验证库,建立用户时use到的库,在使用用户时,要加上验证库才能登陆
对于管理员用户,必须在admin下创建

参数说明:
user 用户
pwd 密码
role 角色名
db 作用对象
role: root/readWrite/read 权限

登录:
[[email protected] conf]$ mongo 192.168.253.129/admin

配置文件中加入
security:
 authorization: enabled

3.1 案例一–创建超级管理员,管理所有数据库(必须use admin 再去创建)

db.createUser(
{
   user:"root",
   pwd:"root123",
   roles:[ { role: "root", db: "admin" } ]
}
)

验证用户:

> db.auth("root","root123")
1

重启mongodb

[[email protected] conf]$ mongod -f /mongodb/conf/mongodb.conf --shutdown
[[email protected] conf]$ mongod -f /mongodb/conf/mongodb.conf

登陆验证:

[[email protected] conf]$ mongo -uroot -proot123 admin
[[email protected] conf]$ mongo -uroot -proot123 192.168.253.129/admin

查看用户:

> db.system.users.find().pretty()

3.2 创建库管理用户

[[email protected] conf]$ mongo -uroot -proot123 admin
> use app

db.createUser(
{
    user:"admin",
    pwd:"admin",
    roles:[ { role: "dbAdmin", db: "app" } ]
}
)

> db.auth('admin','admin')
[[email protected] conf]$ mongo -uadmin -padmin app

3.3 创建对app数据库,读写权限的用户app01

超级管理员用户登录

[[email protected] conf]$ mongo -uroot -proot123 192.168.253.129/admin

选择一个验证库

> use app
db.createUser(
{
    user:"app01",
    pwd:"app01",
    roles:[ { role: "readWrite", db: "app" } ]
}
)

[[email protected] conf]$ mongo -uapp01 -papp01 192.168.253.129/app

3.4 创建app数据库读写权限的用户对test数据库具有读权限

[[email protected] conf]$ mongo -uroot -proot123 192.168.253.129/admin
> use app
db.createUser(
{
    user:"app03",
    pwd:"app03",
    roles:[ { role: "readWrite", db: "app" },
{ role: "read",db: "test" } ]
}
)

[[email protected] conf]$ mongo -uapp01 -papp01 192.168.253.129/app

3.5 删除用户(皮一下,哈哈)

[[email protected] conf]$ mongo -uroot -proot123 192.168.253.129/admin
> use app
> db.dropUser("admin")