MongoError报错求助:用户无test.tours集合insert操作权限
解决MongoError: user is not allowed to do action [insert] on [test.tours]
检查当前用户权限
登录MongoDB Shell,执行命令:db.getUser("你的用户名")查看返回结果中
roles字段,确认该用户在test数据库下是否拥有insert或readWrite权限。为用户添加对应权限
需使用具备userAdmin或userAdminAnyDatabase权限的用户执行以下操作:- 切换到admin数据库:
use admin - 授予用户
test数据库的读写权限(或仅插入权限):
读写权限(推荐,满足多数操作需求):
仅插入权限:db.grantRolesToUser("你的用户名", [{ role: "readWrite", db: "test" }])db.grantRolesToUser("你的用户名", [{ role: "insert", db: "test" }])
- 切换到admin数据库:
验证权限生效
重新用目标用户登录MongoDB,执行插入测试:db.tours.insertOne({ name: "测试数据" })若未报错则权限配置成功。
内容的提问来源于stack exchange,提问作者andrius
相关产品推荐
相关产品推荐

