介绍
nsp-reporter-multi 是一个 npm 包,它可以帮助开发者在使用 nsp(Node Security Platform)进行安全审查时,更方便地获取审查结果。它可以将 nsp 输出的审查结果转换为易于读取的 JSON 格式,并提供了多种可定制的报告格式,方便开发者根据自己的需求生成各种类型的报告。
安装
首先需要安装 Node.js 和 npm,如果你还没有安装的话,可以从 Node.js 的官方网站下载对应的安装程序进行安装。
然后在终端中运行下面的命令进行全局安装:
npm install -g nsp-reporter-multi
使用
在终端中运行 nsp 命令时,加上 --reporter nsp-reporter-multi
参数,就可以启用 nsp-reporter-multi。例如:
nsp check --reporter nsp-reporter-multi
此时,nsp-reporter-multi 会把 nsp 输出的审查结果转换为 JSON 格式,并在终端上显示出来。
如果要输出报告,可以使用 --outputDir
参数指定报告输出目录,使用 --reporterOptions
参数指定报告的格式和风格。例如:
nsp check --reporter nsp-reporter-multi --outputDir reports --reporterOptions format=html,style=dark
此时,nsp-reporter-multi 会在 reports 目录下生成一个名为 report.html 的报告文件,风格为深色。
配置
nsp-reporter-multi 的配置文件是一个 JSON 文件,可以在项目的根目录下创建一个名为 .nsp-reporter-multi.config.json 的文件,在其中定义各种参数和报告格式。
以下是一个示例配置文件:
-- -------------------- ---- ------- - ------------ - ------- --- -------- --- ------- - -------- ------ -- ----------- -- -- ------------- - ------ -- - -
在上面的配置文件中,有两个主要的参数:reporters 和 categories。
reporters 定义了每一种报告的格式和风格。它是一个对象,键名是报告的名称,键值是报告的配置参数。默认情况下,nsp-reporter-multi 提供了四种报告的格式:
- json:JSON 格式的报告;
- table:基于控制台的表格格式的报告;
- html:HTML 格式的报告;
- markdown:Markdown 格式的报告;
以上每种报告都可以通过键值对来定制自己的格式和风格。
categories 定义了所有分类的报告。默认情况下,nsp 报告会将漏洞分为三个分类:高危、中危和低危。如果你需要定义自己的分类,在 categories 中添加名称和定制的规则即可。
示例代码
以下是一个示例的 .nsp-reporter-multi.config.json 文件:
-- -------------------- ---- ------- - ------------ - ------- --- -------- --- ------- - -------- ------- -------- ---- ----- ------- -- ----------- - -------- ---- ----- ------- - -- ------------- - ------ --- ----------- - ----------- ---------- -- ------- - ----------- ------ -- ----------- - ----------- ---------- -- ------ - ----------- ----- - - -
在上述示例中,我们定义了四种报告的格式:
- json:默认格式;
- table:默认格式;
- html:深色风格,标题为
NPM Audit Report
; - markdown:标题为
NPM Audit Report
。
还定义了五种分类的报告:
- all:所有漏洞;
- critical:严重漏洞;
- high:高危漏洞;
- moderate:中危漏洞;
- low:低危漏洞。
以上定义的分类规则可以在 nsp 报告中使用,例如:
nsp check --reporter nsp-reporter-multi --reporterOptions categories=all
这样就会生成包含所有漏洞的报告了。
小结
nsp-reporter-multi 是一个非常有用的 npm 包,它可以让开发者更方便地获取 nsp 的审查结果,并生成各种类型的易于阅读的报告。学习使用 nsp-reporter-multi 可以帮助我们更好地保证我们的应用程序的安全性。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066f923d1de16d83a66b7e