我正试图从openshift中的java应用程序连接到mongodb数据库,并且在允许的角色和操作方面遇到了一些麻烦。如何在mongodb中为用户提供诊断操作listDatabases?
我运行RCH端口转发命令,像这样:
rhc port-forward -a test
这一切都很大,我能够使用连接到数据库:
mongo admin -u admin -p '*******' --host 127.0.0.1 --port 44506
,我可以执行命令像:
> use test
> show databases
但是,如果我直接连接到我的数据库使用:
mongo test -u admin -p '*******' --host 127.0.0.1 --port 44506
我无法运行show命令数据库
listDatabases failed:{ "ok" : 0, "errmsg" : "unauthorized" } at src/mongo/shell/mongo.js:47
我怎能舍弃动作listDatabases这个用户在这个数据库?
我MongoDB的文档http://docs.mongodb.org/manual/reference/privilege-actions/#security-user-actions 其中约诊断操作会谈,但没有提到如何给这样的行动给用户找到了这个网页。
感谢您的帮助。
如果您以应用程序身份运行mongodb shell并以该用户身份运行mongodb shell,是否可以执行该命令? – 2015-02-05 17:36:01
编号相同的行为。 – JGS 2015-02-05 18:14:56