mongodb 权限管理

启动mongod时加上--auth参数,开启权限认证

db.addUser("username","password ")

第三个参数是创建只读用户(only read,默认readwrite)

用此方法,在普通数据库下,创建的是当前数据库的用户;在amdin数据库下,创建的是root用户;

db.auth("username","password")

认证

(1)创建用户

use admin

db.addUser("admin","admin")

use test

db.adUser("test","test")

(2)管理员用户可以查看所有数据库

use admin

db.auth("admin","admin") (创建的root用户)

验证成功返回 1,失败返回0

(3)普通数据库用户,只能常看当前数据库

use test

db.auth("test","test")

 

db.createUser(user,writeConcern)

user :document,包括认证和权限

writeConcern :document,可选字段,于getLasterror中字段相同

以下是官网内容:

{ user: "",
  pwd: "",
  customData: { <</span>any information> },
  roles: [
    { role: "", db: "" } | "",
    ...
  ]
}
use products
db.createUser( { "user" : "accountAdmin01",
                 "pwd": "cleartext password",
                 "customData" : { employeeId: 12345 },
                 "roles" : [ { role: "clusterAdmin", db: "admin" },
                             { role: "readAnyDatabase", db: "admin" },
                             "readWrite"
                             ] },
               { w: "majority" , wtimeout: 5000 } )

创建的accountAdmin01拥有以下角色:

admin数据库: clusterAdmin和readAnyDatabase角色

products数据库:readWrite角色

数据库角色拥有的权限,详细见官网Database User Roles

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值