如何在npm工作区中使用npm审计?



对于一个使用AWS CDK的项目,我们正在从lna工作空间转向NPM工作空间。到目前为止,一切似乎都很好,除了在项目根目录下运行npm audit,它似乎没有考虑到工作空间。

我们使用以下文件夹结构:

.
|-package.json
|-package-lock.json
|-ts-config.json
|-lib
|-index.ts
|-lambdas
|-workspace-a
|-index.ts
|-package.json

当向项目根目录package.json添加带有漏洞的依赖时,npm audit会像往常一样向我们报告这些漏洞。当在workspace-a package.json中安装相同的依赖项时,它最终出现在项目的工作空间根package-lock.json部分,正如预期的那样,但npm audit没有注意到它,并报告0漏洞。

到目前为止,我已经尝试了几种方式运行npm audit;通过添加--workspaces=true,--workspace lib/lambdas/workspace-a--package-lock-only,但似乎都不起作用。

是否有一些东西我没有看到让npm auditworkspace-a工作?

在相同和不同机器上对示例项目进行了一些测试后,解决方案似乎在于.npmrc中的注册表集。当注释掉企业npm存储库时,审计又被捡起来了。

或者,运行npm audit --registry=https://registry.npmjs.org将工作不改变全局配置。

这似乎只需要对工作区和嵌套依赖项进行审计,因为根包级别上的顶级依赖项将被审计得很好。

相关内容

  • 没有找到相关文章

最新更新