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进行简单管理,不至于被外界直接用端口进行连接。但更系统的权限管理还请参考官网说明
posted @ 2017-01-09 18:05  Sea_Sky  阅读(1228)  评论(0编辑  收藏  举报

转载请注明出处! About me