美文网首页
给mongoDb设置权限

给mongoDb设置权限

作者: _十六 | 来源:发表于2020-06-14 20:50 被阅读0次

1、创建角色
连接数据库,在admin集合中新增一个用户

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

user是用户名,pwd是密码, roles是角色。
role: 'root'表示超级管理员,
db表示可以操作的数据库

2、修改配置文件:开启权限验证
找到安装目录
找到配置文件 mongodb.cfg
增加一句

#security:
security:
  authorization: enabled

3、重启mongoDb服务
我的电脑 >> 管理 >> 服务和应用程序 >> 服务 >> 找到mongoDb(键盘直接输入mong就能直接指向它)
右击重启服务,等待重启完成即可

4、重新连接mongoDb
此时连接输入用户名和密码

mongo -u username -p password

远程数据库连接

mongo 192.168.1.1:12702/test -u username -p password

MongoDB 内置角色

(1).数据库用户角色

针对每一个数据库进行控制。
**read **:提供了读取所有非系统集合,以及系统集合中的system.indexes, system.js, system.namespaces readWrite: 包含了所有read权限,以及修改所有非系统集合的和系统集合中的system.js的权限.

(2).数据库管理角色

每一个数据库包含了下面的数据库管理角色。
dbOwner:该数据库的所有者,具有该数据库的全部权限。
dbAdmin:一些数据库对象的管理操作,但是没有数据库的读写权限。(参考:http://docs.mongodb.org/manual/reference/built-in-roles/#dbAdmin
userAdmin:为当前用户创建、修改用户和角色。拥有userAdmin权限的用户可以将该数据库的任意权限赋予任意的用户。

(3).集群管理权限

admin数据库包含了下面的角色,用户管理整个系统,而非单个数据库。这些权限包含了复制集和共享集群的管理函数。
clusterAdmin:提供了最大的集群管理功能。相当于clusterManager, clusterMonitor, and hostManager和dropDatabase的权限组合。
clusterManager:提供了集群和复制集管理和监控操作。拥有该权限的用户可以操作config和local数据库(即分片和复制功能)
clusterMonitor:仅仅监控集群和复制集。
hostManager:提供了监控和管理服务器的权限,包括shutdown节点,logrotate, repairDatabase等。
备份恢复权限:admin数据库中包含了备份恢复数据的角色。包括backup、restore等等。

(4).所有数据库角色

admin数据库提供了一个mongod实例中所有数据库的权限角色:
readAnyDatabase:具有read每一个数据库权限。但是不包括应用到集群中的数据库。
readWriteAnyDatabase:具有readWrite每一个数据库权限。但是不包括应用到集群中的数据库。
userAdminAnyDatabase:具有userAdmin每一个数据库权限,但是不包括应用到集群中的数据库。
dbAdminAnyDatabase:提供了dbAdmin每一个数据库权限,但是不包括应用到集群中的数据库。

(5). 超级管理员权限

root: dbadmin到admin数据库、useradmin到admin数据库以及UserAdminAnyDatabase。但它不具有备份恢复、直接操作system.*集合的权限,但是拥有root权限的超级用户可以自己给自己赋予这些权限。

(6). 备份恢复角色:backup、restore;

(7). 内部角色:__system

相关文章

  • 给mongoDb设置权限

    1、创建角色连接数据库,在admin集合中新增一个用户 user是用户名,pwd是密码, roles是角色。rol...

  • 25.Mongodb的权限管理

    Mongodb的权限管理 学习目标 1.了解 mongodb的权限管理 1. 为什么要进行权限管理的设置 刚安装完...

  • MongoDB权限设置

    本文阅读对象: MongoDB权限设置不熟悉者 MongoDB开发者 其他对MongoDB感兴趣的开发者 对技术感...

  • 【mongoDB】mongoDB设置权限配置

    方法介绍: 启动MongoDB服务(禁用访问权限控制)mongod --port 27017 --dbpath d...

  • 创建用户名 密码

    MongoDB如何设置权限(类似关系型数据库的用户名和密码) MongoDB 缺省是没有设置鉴权的,业界大部分使用...

  • mongoDB(2) -- 权限设置

    首先需要不加权限启动启动时在配置文件中 auth设置为false 重新启动数据库./mongod --config...

  • Mongodb设置用户权限

    参考:https://www.cnblogs.com/swordfall/p/10841418.html说明:操作...

  • 【mongoDB】mongoDB设置权限登陆后,在keyston

    问题: mongoDB的默认登陆时无密码登陆的,为了安全起见,需要给mongoDB设置权限登录,但是keyston...

  • UnhandledPromiseRejectionWarning

    如果之前MongoDB设置了数据库访问权限,所以不论是打开mongodb-compass软件还是运行node ap...

  • Mongodb 使用内存 engine

    给 mongodb 的配置文件增加 engine 设置。官方文档说还有设置 dbPath,但是安装 mongodb...

网友评论

      本文标题:给mongoDb设置权限

      本文链接:https://www.haomeiwen.com/subject/rkzxxktx.html