资讯专栏INFORMATION COLUMN

MongoDB 用户权限管理

Nosee / 927人阅读

摘要:安装好配置用户访问权限后,在命令模式下发现报错,懵逼了不是配置权限了么。下面是我的解决回放进入命令模式发现拨错似乎是没权限操作。超级账号,超级权限

安装好mongdb 配置用户访问权限后,在命令模式下发现show dbs 报错,懵逼了不是配置权限了么。下面是我的解决回放:

#进入mongo 命令模式发现拨错
r@iZwz947cvofre97sstzcmuZ ~]# mongo
MongoDB shell version v3.4.2
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.2
> show dbs
2017-04-03T09:27:05.069+0800 E QUERY    [thread1] Error: listDatabases failed:{
    "ok" : 0,
    "errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }",
    "code" : 13,
    "codeName" : "Unauthorized"
} 

似乎是没权限操作。

#use admin 添加用户
db.createUser({user:"test",pwd:"123456",roles:[{role:"readAnyDatabase",db:"admin"}]})
Successfully added user: {
    "user" : "test",
    "roles" : [
        {
            "role" : "readAnyDatabase",
            "db" : "admin"
        }
    ]
}

退出mongo 命令模式,重新进入 发现可以了,?

[r@iZwz947cvofre97sstzcmuZ ~]# mongo
MongoDB shell version v3.4.2
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.2
> use admin
switched to db admin
> db.auth("test","123456")
1
> show dbs
admin  0.000GB
local  0.000GB
test   0.000GB
角色具体说明:
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
dbOwner:数据库拥有者,包含readWrite、dbAdmin、userAdmin
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限
root:只在admin数据库中可用。超级账号,超级权限

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/18969.html

相关文章

  • mongoDB初阶系列一:用户权限

    摘要:本文将重点介绍的用户和权限这一部分。结果返回,表示管理员登录成功。接下来,用这个管理员给数据库创建一个普通用户,并指定其权限为。 前言 对于数据库而言,用户和权限是非常重要的一部分,因为这涉及到安全,那么mongoDB的用户和权限是怎么样的呢? 说明 环境说明 本文所用的mongoDB版本是3.6,操作系统是windows。 其他说明 限于篇幅,本文不会介绍数据库从下载到安装的过程,关...

    CastlePeaK 评论0 收藏0
  • mongodb用户权限管理最全攻略:用户的创建、查看、删除与修改,mongodb入坑之旅

    摘要:在字段可以指定内置角色和用户定义的角色。超级用户的有两种,或者比前一种多加了对所有数据库的访问仅仅是访问而已。不能用数据库中的用户登录其他数据库。 1、进入mongodb的shell : mongo 2、切换数据库 use admin 3、创建admin超级管理员用户 指定用户的角色和数据库:(注意此时添加的用户都只用于admin数据库,而非你存储业务数据的数据库)(在cmd中敲多行代...

    Wuv1Up 评论0 收藏0

发表评论

0条评论

Nosee

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<