Heim >Backend-Entwicklung >PHP-Tutorial >Mongodb用户权限问题??

Mongodb用户权限问题??

WBOY
WBOYOriginal
2016-06-06 20:23:551215Durchsuche

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>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:php代码乱码问题Nächster Artikel:javascript - jquery 数据格式解析