Mongodb增加权限管理

Posted Sea_Sky

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mongodb增加权限管理相关的知识,希望对你有一定的参考价值。

 前言:
  随着列式存储理念的成熟,越来越多的开发者开始接纳mongodb,hbase这类大储存的分布式列式数据库。特别是mongodb的这种快速搭建,快速使用特点,使其得到更多人的青睐。本人主要通过官网说明针对mongodb权限配置做一个测试与实践。
 
step1:无验证启动mongod服务
 
mongod --port 27017 --dbpath /data/db1
 
step2:客户端mongo无密码连接并设置超级用户(用于admin登录)
 
mongo --port 27017
 
use admindb.createUser(
  {
    user: "myUserAdmin",
    pwd: "abc123",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  })
 
 
step3:有验证启动mongod服务
 
mongod --auth --port 27017 --dbpath /data/db1
 
step4:管理员mongo登录后新增用户,分配权限
 
mongo --port 27017 -u "myUserAdmin" -p "abc123" --authenticationDatabase "admin"
use testdb.createUser(
  {
    user: "myTester",
    pwd: "xyz123",
    roles: [ { role: "readWrite", db: "test" },
             { role: "read", db: "reporting" } ]
  })
 
step5:授权用户登录并操作表
 
mongo --port 27017 -u "myTester" -p "xyz123" --authenticationDatabase "test"
db.foo.insert( { x: 1, y: 1 } )
 
注:无权限访问时,将报如下错误

 

参考:
 
后语:
     以上仅供对mongodb进行简单管理,不至于被外界直接用端口进行连接。但更系统的权限管理还请参考官网说明

以上是关于Mongodb增加权限管理的主要内容,如果未能解决你的问题,请参考以下文章

如何对MongoDB 3.2.7进行用户权限管理配置

MongoDB的权限管理

MongoDB权限控制

Mongodb之权限认证管理

MongoDB用户及权限管理:用户管理

MongoDB的补充操作,用户权限管理,查询操作