MongoError:未在SessionDB上授权执行命令{listIndexes:“sessions”,cursor:{}}

时间:2018-05-17 10:40:28

标签: mongodb

我已经在我的mongo数据库中启用了身份验证,并添加了如下用户。

db.createUser({
  user: "myuser",
  pwd: "abc123",
  roles: [ "readWriteAnyDatabase" ]
});

我正在使用此用户来运行快速节点服务器。数据库成功连接但随后失败,出现以下异常。

Unhandled rejection MongoError: not authorized on SessionDB to execute command { listIndexes: "sessions", cursor: {} }
    at Function.MongoError.create (/Users/myuser/code/test_project/node_modules/mongodb-core/lib/error.js:31:11)
    at queryCallback (/Users/myuser/code/test_project/node_modules/mongodb-core/lib/cursor.js:212:36)
    at /Users/myuser/code/test_project/node_modules/mongodb-core/lib/connection/pool.js:469:18
    at _combinedTickCallback (internal/process/next_tick.js:73:7)
    at process._tickCallback (internal/process/next_tick.js:104:9)

Unhandled rejection MongoError: not authorized on SessionDB to execute command { listIndexes: "sessions", cursor: {} }
    at Function.MongoError.create (/Users/myuser/code/test_project/node_modules/mongodb-core/lib/error.js:31:11)
    at queryCallback (/Users/myuser/code/test_project/node_modules/mongodb-core/lib/cursor.js:212:36)
    at /Users/myuser/code/test_project/node_modules/mongodb-core/lib/connection/pool.js:469:18
    at _combinedTickCallback (internal/process/next_tick.js:73:7)
    at process._tickCallback (internal/process/next_tick.js:104:9)

我阅读了mongodb的文档,它说索引保存在系统集合中,但read内置角色应该允许用户访问它。我尝试过为我的用户提供readAnyDatabaseread个内置角色,我还尝试了许多其他方法使其工作,但它仍然提供相同的例外。

我可以看到之前在此论坛上已经提出了类似的问题,但他们没有提供任何描述或解决方案。

0 个答案:

没有答案