微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

数据库 – 在mongo中创建超级用户

我正在尝试在mongo中创建一个可以在任何数据库中执行任何操作的用户.

根据指南,我创建了一个新的管理员http://docs.mongodb.org/manual/tutorial/add-user-administrator

这是代码

use admin
db.addUser( { user: "try1",pwd: "hello,roles: [ "userAdminAnyDatabase" ] } )

然后我停止了mongo,启用了auth并重新启动了mongo.

然后我试图用他的用户创建一个数据库.

根据本指南:http://www.mkyong.com/mongodb/how-to-create-database-or-collection-in-mongodb/

use fragola 
db.users.save( {username:"fragolino"} )

我得到这个:“没有授权在fragola.users上插入”

有人可以帮我吗

解决方法

角色userAdminAnyDatabase使用户能够创建用户并为其分配任意角色.因此,该用户有权在数据库上执行任何操作,因为他可以给任何人任何许可(包括他自己).

但是,userAdminAnyDatabase角色本身不允许用户执行任何其他操作,除了为任意用户分配任意权限.要在数据库上实际执行某些操作,该用户需要具有以下其他角色:

readWriteAnyDatabase
dbAdminAnyDatabase
clusteradmin

具有上述三个权限的用户和userAdminAnyDatabase是一个真正的超级用户,可以做任何事情.

原文地址:https://www.jb51.cc/mssql/81553.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐