运行时包管理器打包器测试运行器代码检查格式化指南参考博客反馈

安全扫描器 API

Bun 的包管理器可以在安装软件包之前扫描它们,以捕获供应链攻击和已知漏洞。


快速开始

在您的 bunfig.toml 中配置安全扫描器:

bunfig.toml
[install.security]
scanner = "@oven/bun-security-scanner" # 示例名称,请替换为您扫描器的包名

配置扫描器后,Bun 将:

  • 在安装前扫描所有软件包
  • 显示安全警告和公告
  • 如果扫描器发现致命公告,则取消安装

工作原理

安全扫描器会在执行 bun install、bun add 及其他包操作时分析包。它们可以检测:

  • 已知安全漏洞(CVE)
  • 恶意包
  • 许可证合规问题

安全级别

扫描器报告两种严重等级的问题:

  • fatal - 立即停止安装,返回非零退出码
  • warn - 在交互式终端中提示是否继续;在 CI 环境中立即退出

使用预构建扫描器

安全公司会将 Bun 安全扫描器作为 npm 包发布。

安装扫描器

从 npm 安装安全扫描器:

terminal
bun add -d @oven/bun-security-scanner

配置扫描器

安装后,在您的 bunfig.toml 中进行配置:

bunfig.toml
[install.security]
scanner = "@oven/bun-security-scanner" # 示例名称,请替换为您扫描器的包名

企业配置

一些企业级扫描器通过环境变量获取身份验证信息和其他配置:

terminal
# 例如可以放在 ~/.bashrc 中
export SECURITY_API_KEY="your-api-key"

# 扫描器会自动使用这些凭证
bun install

请查阅扫描器的文档,了解需要设置的环境变量以及其他必需的配置。

自定义扫描器开发

完整的示例(含测试和 CI 配置)请查看官方模板: github.com/oven-sh/security-scanner-template。

相关链接