261_Mongodb_用户权限相关操作

举报
alexsully 发表于 2021/12/28 19:39:32 2021/12/28
【摘要】 用户权限相关操作

创建用户


1 创建超级管理员:管理所有数据库(必须use admin再去创建)

$ mongo
use admin
db.createUser({user: "root",pwd: "123456",roles: [ { role: "root", db: "admin" } ]})

基本语法说明:
user:用户名
pwd:密码
roles:
 role:角色名
 db:作用对象
 role:root, readWrite,read

验证用户
use admin
db.auth('root','123456')

查看用户:
use admin
db.system.users.find().pretty()

2 创建库管理用户

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

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

(1)超级管理员用户登陆
mongo -uroot -proot123 admin
(2)选择一个验证库
use app
(3)创建用户
db.createUser(
{
user: "app01",
pwd: "app01",
roles: [ { role: "readWrite" , db: "app" } ]
}
)

4、创建app数据库读写权限的用户并对test数据库具有读权限:


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


5 更改帐户的密码

1 选择admin数据库。
use admin

2 以user1帐户为例,修改帐户的密码。
db.updateUser("user1", {pwd:"newPasswd12#"})


6 删除用户

切换某数据库下 use dbName
db.dropUser(<username>,<writeConcern>)
db.dropUser("user01")
删除所有用户
db.dropAllUsers(<writeConcern>)


7 查询用户

db.getUser(<username>,<args>)
<args>
 showCredentials 默认false 是否显示加密后的密码相关信息 
 showPrivileges 默认false 是否显示用户的全部权限
 showAuthenticationRestrictions 默认false 是否显示ip地址管控限制

db.getUser("alex",{ showCredentials: true, showPrivileges:true, showAuthenticationRestrictions:true })

7 查询所有用户

db.getUsers({showCredentials: <Boolean>, filter:<document>})


8 授权用户

对已经纯在的账户再次授权
db.grantRolesToUser("<username>",[<roles>],{<writeConcern>})
db.grantRolesToUser("alex",[{role: "read", db: "Carts"}])

 9 撤销权限

db.revokeRolesFromUser("<username>",[<roles>],{<writeConcern>})
db.revokeRolesFromUser("alex",[{role: "read", db: "Carts"}])
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。