设为首页 收藏本站
查看: 1246|回复: 0

[经验分享] mongodb 用户管理

[复制链接]

尚未签到

发表于 2017-12-15 07:31:01 | 显示全部楼层 |阅读模式
  登录认证:db.auth( <username>, <password> )
  查看账号:db.system.users.find();
  修改密码:db.changeUserPassword("reporting", "123456")
  1:添加一个products的readWrite和dbAdmin账号
  

use products  
db.createUser(
  
{
  

user: "accountUser",  
pwd: "password",
  
roles:
[ "readWrite", "dbAdmin" ]  
}
  
)
  

  登录:db.auth('accountUser','password')
  2:添加一个maxiangqian的只读账号
  

db.createUser(  
{
  

user: "maxiangqian",  
pwd: "maxiangqian",
  
roles:
[ { role: "Read", db: "maxiangqian" } ]  
}
  
)
  

  登录:db.auth('maxiangqian','maxiangqian')
  3:添加一个空用户
  

use admin  
db.createUser(
  
{
  

user: "reportsUser",  
pwd: "password",
  
roles:
[ ]  
}
  
)
  

  4:添加一个超级管理员账号
  

use admin  
db.createUser(
  
{
  

user: "maxiangqian",  
pwd: "maxiangqian",
  
roles:
[ { role: "userAdminAnyDatabase", db: "admin" } ]  
}
  
)
  
db.auth(
'maxiangqianadmin','maxiangqianadmin')  

  5:admin数据库添加读写权限和群集管理员权限
  

use admin  
db.createUser(
  
{
  

user: "appAdmin",  
pwd: "password",
  
roles:
  

[  
{ role: "readWrite", db: "config" },
  
"clusterAdmin"
  

]  
}
  
)
  
db.updateUser()
  

  语法格式如下:
  

db.updateUser(  
"
<username>",  
{
  
customData : {
<any information> },  
roles :
[  
{ role: "<role>", db: "<database>" } | "<role>",
  
...
  

],  
pwd: "
<cleartext password>"  
},
  
writeConcern: {
<write concern> }  
)
  

  修改密码:db.changeUserPassword()
  

db.changeUserPassword("accountUser", "SOh3TbYhx8ypJPxmt1oOfL")  

  删除用户:db.removeUser(username)
  

db.dropAllUsers( {w: "majority", wtimeout: 5000} )  

  删除某个用户:
  

use products  
db.dropUser("reportUser1", {w: "majority", wtimeout:
5000})  

  授予账号权限:
  

db.grantRolesToUser( "<username>", [ <roles> ], { <writeConcern> } )  

  例子
  

use products  
db.grantRolesToUser(
  
"accountUser01",
  

[ "readWrite" , { role: "read", db: "stock" } ],  
{ w: "majority" , wtimeout:
4000 }  
)
  

  收回权限:
  db.revokeRolesFromUser( "<username>", [ <roles> ], { <writeConcern> } )
  例子:(The following db.revokeRolesFromUser() method removes the two of the user’s roles: the read role on the stock database and the readWrite role on the products database)
  

use products  
db.revokeRolesFromUser( "accountUser01",
  

[ { role: "read", db: "stock" }, "readWrite" ],  
{ w: "majority" }
  
)
  

  获取当前用户权限:
  

use accounts  
db.getUser("appClient")
  

  账号角色以及权限:
  1,内建的角色
  2,数据库用户角色:read、readWrite;
  3,数据库管理角色:dbAdmin、dbOwner、userAdmin;
  4,集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
  5,备份恢复角色:backup、restore;
  6,所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
  7,超级用户角色:root // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
  8,内部角色:__system
  角色说明:
  Read:允许用户读取指定数据库
  readWrite:允许用户读写指定数据库
  dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
  userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
  clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
  readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
  readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
  userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
  dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
  root:只在admin数据库中可用。超级账号,超级权限

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-424247-1-1.html 上篇帖子: C# MongoDB 查询,分组,聚合,排序,条件,分页 下篇帖子: Mongodb注入
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表