【发布时间】:2014-09-01 10:20:28
【问题描述】:
我希望能够将用户添加到 MongoDB,以便我们可以自动安装已包含身份验证的 MongoDB。通过执行此操作,我可以使用 pymongo 成功添加只读用户或 dbOwner 用户:
from pymongo import MongoClient
client = MongoClient('localhost:27017')
client.admin.authenticate('siteRootAdmin', 'Test123')
client.testdb.add_user('newTestUser', 'Test123', True)
但是当我执行以下代码块来指定角色时,它会失败:
from pymongo import MongoClient
client = MongoClient('localhost:27017')
client.admin.authenticate('siteRootAdmin', 'Test123')
client.testdb.add_user('newTestUser', 'Test123', False, 'readWrite')
出现错误:
line 10, in <module>
client.admin.add_user('newTestUser', 'Test123', False, 'readWrite')
TypeError: add_user() takes at most 4 arguments (5 given)
在文档中,这意味着您可以为用户文档提供可选字段,例如其他角色。有没有人能够正确设置这些?即,我希望拥有可以将数据添加到集合但没有完整 dbOwner 权限的 readWrite 服务帐户。
【问题讨论】: