在执行 `yarn/npm publish` 时忽略 `nsp check`?

Ignore `nsp check` when doing `yarn/npm publish`?

我正在尝试将 javascript 包发布到内部存储库。当我执行 yarn publish(或 npm publish)时,它现在会运行 nsp check(否则很棒的功能!)来查找我项目中任何依赖项中的已知漏洞。它找到一个并错误退出:

[3/4] Publishing...
$ nsp check
(+) 1 vulnerability found
...
│ More Info  │ https://nodesecurity.io/advisories/nnn                 |
...
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/publish for documentation about this command.

我想忽略此漏洞并继续发布。我该怎么做?

我知道引入一种忽略漏洞的方法可能会被滥用,但在这种情况下,我发布的包是一个内部工具。我已经查看了依赖项的漏洞,并且在我使用它的上下文中无法利用它。

旁注:该漏洞在一个非常常用的包 (request@2.87.0) 中嵌套了 3 层。该漏洞本身已在其自己的最新版本中得到修复,但由于这种依赖关系深达三层,我们必须等待每个后续依赖关系升级。我怀疑这需要一些时间 - 他们的 Github 中有一张票开放了 3 个月 - 我不想再等了。

我找到了答案:

在项目顶部添加一个名为 .nsprc 的文件。在文件中添加:

{
    "exceptions": ["https://nodesecurity.io/advisories/nnn"]
}

URL 应与 nsp check 命令中出现的漏洞的 URL 匹配。