2
正如文檔中所述,我必須創建一個角色,允許anyResource上的anyAction,但該角色只能在admin數據庫中創建,所以這就是它的樣子:如何讓用戶在mongodb上運行eval命令2.6
use admin
db.createRole({
role: 'superuser',
privileges:[{
resource: {anyResource: true},
actions: ['anyAction']
}],
roles: []
})
下一步是授予此角色給用戶,但這裏的問題是,我不能從另一個數據庫授予從管理數據庫中的角色到用戶,所以這個命令:
db.createUser({
user: 'someusername',
pwd: 'somepassword',
roles: [{
role: 'superuser',
db: 'somedatabase'
}]
})
按預期回報:
Error: couldn't add user: No role named [email protected]
那麼,我應該怎麼做才能允許用戶someusername在somedatabase上運行eval命令?
您的問題+答案救了我的一天!謝謝! – 2015-01-19 22:59:51
[This](http://www.claudiokuenzler.com/blog/555/allow-mongodb-user-execute-command-eval-mongodb-3.x#.VcpQ6_ntlBc)對我也很有幫助。 – fracz 2015-08-11 19:52:05