旋风DX 网络软件包 插件
此插件用于 网络软件包 创建一个 旋风DX 包含所有捆绑依赖的软件清单.
这很可能是最准确,最完整的基于网页包的SBOM生成器.
此插件使用由 : 网络软件包 以创建仅包含依赖关系的依赖图 实际使用的 树摇) (中文(简体) ).
生成的 SBOM 文件如下 正式规格和标准。 。 。 .
所需资源
- 节点.js
>= 20.18 - 网络软件包
^5
然而,这个插件有更古老的版本,支持
- 节点.js v8.0.0 或更高级
- 网络软件包 v4.0.0 或 更高级
安装
npm i -D @cyclonedx/webpack-plugin
yarn add -D @cyclonedx/webpack-plugin
使用量
new CycloneDxWebpackPlugin(options?: object)
选项配置( C)
| 名称 | 类型 | 默认 | 说明 |
|---|---|---|---|
specVersion | {string}其中一个: "1.2", (中文(简体) ), "1.3", (中文(简体) ), "1.4", (中文(简体) ), "1.5", (中文(简体) ), "1.6", (中文(简体) ), "1.7" | "1.6" | 哪个版本 气旋DX光谱 用来使用. 支持的值取决于安装的依赖性 旋风DX-javascript-图书馆。 。 。 . |
reproducibleResults | {boolean} | false | 是否要多走一英里, 使输出可复制 . 可复制性可能导致时间价值和随机价值的损失. |
validateResults | {boolean} | true | 是否验证 BOM 结果 . 如果不符合要求,则取消验证。 要求数 过渡性可选依赖性。 。 。 . |
outputLocation | {string} | "./cyclonedx" | 将输出写入路径 。 路径相对 网络软件包'总输出路径. |
includeWellknown | {boolean} | true | 是否写出 Wellknowns . |
wellknownLocation | {string} | "./.well-known" | 写《名人录》的路径 路径相对 网络软件包'总输出路径. |
rootComponentAutodetect | {boolean} | true | 是否尝试对根元件进行自动检测 . 尝试寻找最近的 package.json 并且从中构建一个 CircleDX 组件,从而可以分配到 bom.metadata.component。 。 。 . |
rootComponentType | {string} | "application" | 设置根组件的类型 . 见 有效数值列表。支持的值取决于 旋风DX-javascript-图书馆语句 ComponentType。 。 。 . |
rootComponentName | 选项 {string} | undefined | 若为 rootComponentAutodetect 的“名称” package.json。 。 。 . |
rootComponentVersion | 选项 {string} | undefined | 若为 rootComponentAutodetect 的“版本” package.json。 。 。 . |
rootComponentVCS | 选项 {string} | undefined | 若为 rootComponentAutodetect 已禁用或版本控制系统未在 package.json,然后将该值用作 URL Root Content 的外部参考文献 “vcs”类型. |
rootComponentBuildSystem | 选项 {string} | undefined | 设置 URL 为 Root Content 的外部参考文献 类型“构建系统”. 这种行为是不管 rootComponentAutodetect状况. |
collectEvidence | {boolean} | false | 是否收集(许可证)证据并附在由此产生的SBOM上. |
示例
在你身边 网络包配置 添加 CirponDX 插件 :
const { CycloneDxWebpackPlugin } = require('@cyclonedx/webpack-plugin');
/** @type {import('@cyclonedx/webpack-plugin').CycloneDxWebpackPluginOptions} */
const cycloneDxWebpackPluginOptions = {
specVersion: '1.7',
outputLocation: './bom'
}
module.exports = {
// ...
plugins: [
new CycloneDxWebpackPlugin(cycloneDxWebpackPluginOptions)
]
}
参见扩展 实例。 。 。 .
对 IETF /. 熟知/ sbom 的支持
旋风DX 网络软件包 插件支持将 CirlowDX SBOM 放置在预定义的位置, 具体在
/.well-known/sbom。默认启用此选项。 行为可以通过超越值来改变
联 合 国 includeWellknown 财务报告和审定财务报表 wellknownLocation。 。 。 .
见 草稿- ettf- opsawg- sbom- 访问 关于该规格的更多信息,目前是综合贸易工作队草案.
在你身边 网络包配置 添加 CirponDX 插件 :
const { CycloneDxWebpackPlugin } = require('@cyclonedx/webpack-plugin');
/** @type {import('@cyclonedx/webpack-plugin').CycloneDxWebpackPluginOptions} */
const cycloneDxWebpackPluginOptions = {
includeWellknown: true,
wellknownLocation: './.well-known'
}
module.exports = {
// ...
plugins: [
new CycloneDxWebpackPlugin(cycloneDxWebpackPluginOptions)
]
}
以角为单位使用
角质 用途 网络软件包 在引擎盖下。 因此,可以通过使用
@angular-buildingers/custom-webpack。 。 。 .
例如: 与Angular17/webpack5的结合。 。 。 .
用反应
反应 用途 网络软件包 在引擎盖下。 因此,可以整合这个插件.
例如: 与 React18/webpack 合并。 。 。 .
与 Vue 一起使用
阴道 用途 网络软件包 在引擎盖下。 因此,可以整合这个插件.
例如: 与 Vue2/webpack 合并 5。 。 。 .
内部
这个 网络软件包 插件使用 旋风DX库 生成实际数据结构.
除了班级 CycloneDxWebpackPlugin 和接口 CycloneDxWebpackPluginOptions, (中文(简体) ),
这个 网络软件包 插件会 没有 披露任何额外的 公开 API或类 - 所有代码都是为了内部的,在版本升级时可能会不经任何通知而更改.
发展和贡献
随意打开问题,错误报告或拉取请求.
见 捐款 详细文件.
许可证
根据Apache 2.0许可证的规定,允许修改和再分配.
见 自由主义 完整许可证存档.