CycloneDX软件物料清单(SBOM)生成器,适用于Python项目和环境
项目描述
CycloneDX Python SBOM生成工具
此工具可以生成OWASP CycloneDX格式的软件物料清单(SBOM)文档。
支持的数据源包括
- Python(虚拟)环境
Poetry
清单和锁定文件Pipenv
清单和锁定文件- Pip的
requirements.txt
格式 PDM
清单和锁定文件不支持。
然而,PDM的Python虚拟环境完全支持。请参阅文档中的示例。- 从版本4开始,不再支持作为包管理器的
Conda
。
然而,可以通过上述方法完全支持conda的Python环境。请参阅文档中的示例。
根据OWASP软件组件验证标准的准则,此工具可以生成接近Level-2的SBOM文档(只需在外部执行签名即可)。
生成的SBOM文档遵循官方规范和标准,可能具有遵循cdx:python
命名空间分类法、cdx:pipenv
命名空间分类法、cdx:poetry
命名空间分类法的属性。
阅读完整的文档以获取更多信息。
要求
- Python
>=3.8,<4
然而,此工具还有支持Python >=2.7
的旧版本。
安装
使用您首选的Python包管理器从Python包索引(PyPI)安装此工具。
使用以下命令之一安装
python -m pip install cyclonedx-bom # install via pip
pipx install cyclonedx-bom # install via pipx
poetry add cyclonedx-bom # install via poetry
# ... you get the hang
用法
通过以下命令之一调用
cyclonedx-py # call script
python3 -m cyclonedx_py # call python module CLI
基本用法
$ cyclonedx-py --help
usage: cyclonedx-py [-h] [--version] command ...
Creates CycloneDX Software Bill of Materials (SBOM) from Python projects and environments.
positional arguments:
command
environment Build an SBOM from Python (virtual) environment
requirements Build an SBOM from Pip requirements
pipenv Build an SBOM from Pipenv manifest
poetry Build an SBOM from Poetry project
options:
-h, --help show this help message and exit
--version show program's version number and exit
高级用法和详细信息
有关高级用法、输入格式、开关和选项的详细信息,请参阅完整的文档。
Python支持
我们努力支持所有当前积极支持的Python版本的所有功能。但是,由于缺乏支持,某些功能可能无法在旧版Python版本中使用/存在。但是,此工具还有支持python>=2.7
的旧版本。
内部
本工具使用CycloneDX Python 库来生成实际的数据结构,并将它们序列化和验证。
该工具不公开任何额外的公共 API 或符号 - 所有代码均旨在内部使用,并且可能在版本升级期间没有任何通知而更改。然而,命令行界面是稳定的 - 您可以以编程方式调用它。请参阅文档中的示例。
贡献
请随时提交问题、错误报告或拉取请求。
有关详细信息以及如何在本地运行/设置,请参阅CONTRIBUTING文件。
版权 & 许可证
CycloneDX BOM 版权归 OWASP 基金会所有。版权所有。
根据 Apache 2.0 许可证的条款,允许修改和重新分发。
有关完整许可证,请参阅LICENSE文件。
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源代码分发
构建分发
cyclonedx_bom-4.6.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2fe72daadfd8addd824b235f8ea21ff6045ebe00bbb9da48ec07bfc5a3c39169 |
|
MD5 | 1555d1cdc3850c7a2265ab9cee933be4 |
|
BLAKE2b-256 | 7f99039d55af5fd11f096e37e6f3a87a922f597f2ee24e997f6b6b58478442a4 |
cyclonedx_bom-4.6.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 39600cb0fe9231285d9f6c234270e23200f9de28d63a2cc2c50d1f6fab75fe1b |
|
MD5 | 52598f4236ec6186068be3b2245ca333 |
|
BLAKE2b-256 | b029b81f99628ab6f4ce45e6540f6912ea6e0b16a1de40c0c6cf488db4eb2235 |