Bun 的包管理器可以在安装前扫描软件包是否存在安全漏洞,帮助保护您的应用程序免受供应链攻击和已知漏洞的侵害。
快速开始
在您的 bunfig.toml
中配置安全扫描器
[install.security]
scanner = "@acme/bun-security-scanner"
配置后,Bun 将会
- 在安装前扫描所有软件包
- 显示安全警告和建议
- 发现严重漏洞时取消安装
- 自动禁用安全相关的自动安装
工作原理
安全扫描器会在 bun install
、bun add
和其他包操作期间分析软件包。它们可以检测
- 已知的安全漏洞 (CVEs)
- 恶意软件包
- 许可证合规性问题
- ……等等!
安全级别
扫描器会报告两个严重级别的事件
fatal
- 立即停止安装,并以非零状态码退出warn
- 在交互式终端中,会提示是否继续;在 CI 中,会立即退出
使用预构建的扫描器
许多安全公司会发布 Bun 安全扫描器作为 npm 包,您可以立即安装和使用。
安装扫描器
从 npm 安装安全扫描器
bun add -d @acme/bun-security-scanner
注意:请查阅您的安全扫描器文档,了解其特定的包名称和安装说明。大多数扫描器都可以使用 bun add
进行安装。
配置扫描器
安装后,在您的 bunfig.toml
中进行配置
[install.security]
scanner = "@acme/bun-security-scanner"
企业配置
一些企业级扫描器可能支持通过环境变量进行身份验证和/或配置
# This might go in ~/.bashrc, for example
export SECURITY_API_KEY="your-api-key"
# The scanner will now use these credentials automatically
bun install
请查阅您的安全扫描器文档,了解需要设置哪些环境变量以及是否需要其他配置。
编写自己的扫描器
有关包含测试和 CI 设置的完整示例,请参阅官方模板 github.com/oven-sh/security-scanner-template