Meteor Dev Tools Auditor将收藏标记为不安全

时间:2016-07-19 10:55:39

标签: google-chrome security meteor

我在Chrome中使用Meteor Dev Tools插件,我注意到了一个很酷的新功能,让我担心我的应用编码方式。 审计收集工具告诉我,我的一些收藏品是不安全的。

我仍在使用Meteor 1.2 with Blaze

1。 其中之一是meteor_autoupdate_clientVersions

1.1。我应该担心这个吗?

1.2。我该如何保护它? InsertUpdateRemove被标记为不安全。

2。 然后我有一个cycles集合,标记为不安全:updateremove 此集合现在在数据库中更新,但不应该从前端访问,并且不应与任何客户端交互相关。

对于这个集合,我在公共文件夹(客户端和服务器)中都有这些允许/拒绝规则 我尝试仅在服务器端应用这些规则,但我没有看到审计结果的差异。

2.1。这些规则应仅在服务器端吗?

Cycles.allow({
    insert: function () {
        return false;
    },
    remove: function () {
        return false;
    },
    update: function () {
        return false;
    }
});
Cycles.deny({
    insert: function () {
        return true;
    },
    remove: function () {
        return true;
    },
    update: function () {
        return true;
    }
});

2.2。我该如何保护这个系列?

3。 然后,我还有另一个带有不安全检查的集合users,其中remove被标记为不安全。 在这个webapp上我没有使用任何用户,没有登录等。 不过,我可能希望在将来实现这一点。

3.1我是否应该担心此收藏品不安全,因为我根本不使用它?

3.2如何保护此系列?

1 个答案:

答案 0 :(得分:1)

您不必允许或拒绝。只需从流星应用程序中删除不安全的包。 然后,您可以使用发布/订阅和方法进行数据插入,更新和删除。

从app中删除此代码:

Cycles.allow({
    insert: function () {
        return false;
    },
    remove: function () {
        return false;
    },
    update: function () {
        return false;
    }
});
Cycles.deny({
    insert: function () {
        return true;
    },
    remove: function () {
        return true;
    },
    update: function () {
        return true;
    }
});
  

对于1.1

用户登录时会发生这种情况。 基本上,问题不是这个,而是登录方法。 看等待时间:https://ui.kadira.io/pt/2fbbd026-6302-4a12-add4-355c0480f81d

为什么登录方法慢?

每当您的应用重新连接时,就会发生这种情况。因此,在成功登录后,它将再次重新运行所有出版物。这就是为什么你看到这样的延迟登录这个出版物。

对此没有这样的补救措施,但除非您的应用程序对此方法/出版物有大量的通过/次要参与,否则这样做很好。

对于3.1: 在删除允许/拒绝和不安全包之后,您不必再担心安全问题。但请确保,您编写了安全的方法。