gpt4 book ai didi

node.js - 如何排除不安全的 package.json transient 依赖项?

转载 作者:行者123 更新时间:2023-12-03 12:12:54 24 4
gpt4 key购买 nike

我有一个 package.json那个gives a load of security warnings .查看第一个关键项目,我看到它的 open@0.0.5五年没更新了。看着 npm ll它包含在 npm@6.5.0 中我正在使用大约两周前更新的最新版本。

我想删除不安全的依赖项。在 Java 世界中 maven package manager让您排除某些传递依赖项。理想情况下,使用 npm或其他 Node 包管理器,我应该能够排除具有漏洞的依赖项。然后我可以重新测试我的应用程序是否正常工作并且没有看到任何安全错误。有没有办法从我的 package.json 中快速排除任何有安全漏洞的东西?如果没有办法做到这一点,可以采取哪些方法来确保我的应用程序不使用不安全的包?

更新:虽然 "npm": "^6.5.0"是在 package.json 中指定的,我正在使用旧的 npm 构建它,该 npm 解决了上面提到的关键问题。我用 ./node_modules/.bin/npm audit fix --force 解决了所有问题

最佳答案

根据定义,您不能排除您正在使用的依赖项所依赖的包。换句话说,如果您需要包 A , 和包 A声称它依赖于包 B ,然后删除包 B会引起A要么完全停止工作,要么开始行为不正常。

不幸的是,这确实发生了,您的选择包括:

  • 忽略安全警告。
  • 更换包装A与其他东西(适用于某些情况而不是其他情况)。
  • 询问包的维护者A升级包版本B他们依赖,可能自己打开一个拉取请求。

  • 不过,就您而言,我不确定您的调查是否已完成 - 我没有看到 open在 npm 的依赖项列表中。可能值得废弃你的 node_modules 并重新运行 npm install,然后再次查看谁在使用 open .

    关于node.js - 如何排除不安全的 package.json transient 依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53933184/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com