【问题标题】:MongoDB security, what am I missing?MongoDB 安全性,我错过了什么?
【发布时间】:2013-08-03 00:43:49
【问题描述】:

如果您想使用 Node JS 实时推送某些内容,Mongo DB & Express 是否足以作为连接到 Mongo DB 的安全方式?

有人可以从安全角度解释这段代码吗?

===

很多教程只是使用...

var mongoClient = new MongoClient(new Server('localhost', 27017));

Mongos 文档包括...

   var MongoClient = require('mongodb').MongoClient;

    // Connect to the db
    MongoClient.connect("mongodb://localhost:27017/exampleDb", function(err, db) {
      if(!err) {
        console.log("We are connected");
      }
    });

===

代码基于 Mongo 文档 - http://mongodb.github.io/node-mongodb-native/api-articles/nodekoarticle1.html#getting-that-connection-to-the-database

【问题讨论】:

  • MongoDB 的主要安全性是一个适当的防火墙、私有的运行环境。可以添加身份验证,但许多入门教程省略了它,以便让您立即启动并运行。 docs.mongodb.org/manual/core/security

标签: javascript node.js mongodb express


【解决方案1】:

你并没有错过太多。对大多数数据库服务器最好的办法是通过让它们远离公共网络来保护它们。

同样的道理,例如MySQL——它缺少像 Kerberos 这样的企业身份验证方法(自 2004 年起请求:http://bugs.mysql.com/bug.php?id=6733)。

您只需要将您的数据库服务器保存在受信任的局域网内。如果你想使用密码登录,总比没有好,但是将大多数数据库暴露给外界是个坏主意,因为它们缺乏简单的保护措施,如密码错误率限制。它们只是不打算以这种方式面向用户。

【讨论】:

    猜你喜欢
    • 2012-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多