Mongodb Meteor:MongoError:未授权在使用身份验证时查询db.collection
在尝试查询数据库时,我跟踪到一个T并收到错误:Mongodb Meteor:MongoError:未授权在使用身份验证时查询db.collection,mongodb,meteor,Mongodb,Meteor,在尝试查询数据库时,我跟踪到一个T并收到错误: Exception while invoking method 'myMethod' MongoError: not authorized for query on myDB.bobRocks 我使用以下方法在Mongo中设置用户: use admin db.createUser( { user: 'bob', pwd: '12345', roles: [ { role: 'readWrite',
Exception while invoking method 'myMethod' MongoError: not authorized for query on myDB.bobRocks
我使用以下方法在Mongo中设置用户:
use admin
db.createUser(
{
user: 'bob',
pwd: '12345',
roles: [
{ role: 'readWrite', db: 'myDB'},
]
}
)
我的数据库调用是:
var myDB = new MongoInternals.RemoteCollectionDriver("mongodb://10.10.10.100:27017/myDB");
BobRocks = new Mongo.Collection('bobRocks', { _driver: myDB })
最后,我使用:
MONGO_URL=mongodb://bob:12345@10.10.10.100:27017/admin meteor run
我错过了什么?我假设身份验证将遵循MONGO_URL声明,但它似乎没有遵循。如果您使用linux,那么您必须像下面这样导出mongourl,然后像meteor一样运行
export MONGO_URL=mongodb://bob:12345@10.10.10.100:27017/admin meteor run
var myDB = new MongoInternals.RemoteCollectionDriver("mongodb://bob:12345@10.10.10.100:27017/myDB");
或者,如果您使用的是windows,则必须设置mongourl然后meteor运行
SET MONGO_URL=mongodb://bob:12345@10.10.10.100:27017/admin meteor run
请先尝试使用mongo cli进行连接
您也没有在此处传递用户名和密码
var myDB = new MongoInternals.RemoteCollectionDriver("mongodb://10.10.10.100:27017/myDB");
您可以在这里传递用户名和密码,就像在mongo url中传递一样
export MONGO_URL=mongodb://bob:12345@10.10.10.100:27017/admin meteor run
var myDB = new MongoInternals.RemoteCollectionDriver("mongodb://bob:12345@10.10.10.100:27017/myDB");
请确保远程服务器上存在myDB。如果您使用的是linux,那么您必须像下面这样导出mongourl,然后像meteor一样运行
export MONGO_URL=mongodb://bob:12345@10.10.10.100:27017/admin meteor run
var myDB = new MongoInternals.RemoteCollectionDriver("mongodb://bob:12345@10.10.10.100:27017/myDB");
或者,如果您使用的是windows,则必须设置mongourl然后meteor运行
SET MONGO_URL=mongodb://bob:12345@10.10.10.100:27017/admin meteor run
请先尝试使用mongo cli进行连接
您也没有在此处传递用户名和密码
var myDB = new MongoInternals.RemoteCollectionDriver("mongodb://10.10.10.100:27017/myDB");
您可以在这里传递用户名和密码,就像在mongo url中传递一样
export MONGO_URL=mongodb://bob:12345@10.10.10.100:27017/admin meteor run
var myDB = new MongoInternals.RemoteCollectionDriver("mongodb://bob:12345@10.10.10.100:27017/myDB");
请确保远程服务器上存在myDB。在实际节点应用程序的脚本中,我正在使用您提到的导出。如果我还必须在Meteor应用程序中传递用户名和密码,这难道不会否定一些安全性吗?另外,当我使用mongocli并使用
使用admin db.auth('bob','12345')
对“bob”进行身份验证时,我可以完全操纵脚本中的myDB(插入、查询等),用于您提到的实际节点应用程序,我正在使用导出。如果我还必须在Meteor应用程序中传递用户名和密码,这难道不会否定一些安全性吗?此外,当我使用mongocli并使用使用admin db.auth('bob','12345')对“bob”进行身份验证时,
我可以完全操作myDB(插入、查询等)