Maison  >  Article  >  développement back-end  >  Mongodb用户权限问题??

Mongodb用户权限问题??

WBOY
WBOYoriginal
2016-06-06 20:23:551170parcourir

Mongodb用户权限问题??

我查了好久 这个问题一直搞不好,google 百度出来的方法 是说先 在admin里面添加 用户!可是在我这边还是过不了!
Mongodb用户权限问题??

望解决!

回复内容:

Mongodb用户权限问题??

我查了好久 这个问题一直搞不好,google 百度出来的方法 是说先 在admin里面添加 用户!可是在我这边还是过不了!
Mongodb用户权限问题??

望解决!

确实是。首先创建一个总的数据库管理员。

然后创建一个对某个数据库有所有权限的管理员,mongoose就用这个账户登陆,对对应的数据库操作就行了。

如果权限比较复杂,就创建一些不同权限的账户,比如只读,可写等等。

首先你要关闭数据库的验证,重启数据库再进行登录,这样你才能进入admin建立用户。
如果你已经有了管理员账户,你要在对应的数据库里执行db.auth(username, password)来授权。授权之后你才能执行数据库操作。
mongodb的权限和其他数据库有比较大的区别,要熟悉一段时间的。

恰好
我前段时间写了篇介绍这个的博文
http://blog.wencan.org/2015/11/18/mongodb-user-privilege/

  • 关闭mongodb权限认证,去admin数据库新增用户,正确设置用户密码和权限, 试一下把用户的roles设置成root,不过这样很危险

  • 开启mongodb权限认证, 执行一下命令

<code>    use admin
    db.auth('用户名','密码')
    use otherdb
    db.system.users.find()</code>
  • nodejs里面,假设你在使用最新的mongodb模块,拿到db对象后要验证一下才能有权限执行查询命令:

<code>    db.admin().authenticate(username, password).then(function(authResult) { 
        return db.collection('sth').find()
    });</code>
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:php代码乱码问题Article suivant:javascript - jquery 数据格式解析