我正試圖從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