【发布时间】:2018-12-18 18:51:40
【问题描述】:
我正在尝试读取 JSON 数组。每次我尝试通过像这样传递 JSON 对象键来读取数组/值时-
json[key]
它显示了一个 Eslint 错误-
[eslint] Generic Object Injection Sink (security/detect-object-injection)
我理解这是一个安全警告,因为密钥可能不存在。但是我该如何解决这个警告?有没有更简单的方法来读取 Json 对象。我的计划是将“密钥”传递给函数并根据密钥读取json。
【问题讨论】:
-
来自自述文件:“这个项目将有助于识别潜在的安全热点,但会发现很多误报,需要人工进行分类。”我把它读作“你不应该把它们都修好”。
-
那么禁用此规则?
-
有时需要,当可能涉及到外包(如用户输入)时。在此处查看@viveksharma 的答案:stackoverflow.com/a/55701580
-
这篇文章解释了为什么它可能是一个安全问题:github.com/nodesecurity/eslint-plugin-security/blob/master/docs/… 在我看来,当你(确定你)不使用
key的用户输入时,你可以eslint-disable它
标签: javascript json node.js eslint