BLACKSHIELD

公开指南

导入首批发现

在扩展到更多集成之前,运行首次扫描、提交结果并确认数据质量。 受众: 安全工程师、CI所有者和集成工程师. 典型配置时长: 10-15分钟.

Start herejourney

Use this if

在扩展到更多集成之前,运行首次扫描、提交结果并确认数据质量。

Audience
安全工程师、CI所有者和集成工程师
Typical time
10-15分钟

Start here

Step 4 of 6

Recommended
1
2
3
4
5
6

开始之前

  • 在 /api-keys 中创建摄取 API 密钥并保存原始密钥(显示一次)。
  • 使用扫描仪图像 public.ecr.aws/blackshield-security/pipeline-scanner:1.0.6 (或您的镜像 public.ecr.aws 别名)。
  • 将 BLACKSHIELD_API_URL 设置为您的后端端点(本地:http://localhost:8000).

Do this now

步骤 1

选择扫描仪图像和第一个目标

使用确定性目标和已知的扫描仪图像,以便轻松验证结果。

  • 首次运行时使用 `public.ecr.aws/blackshield-security/pipeline-scanner:1.0.6` (或您的镜像公共 ECR 别名)。
  • 选择一个已知目标,例如 `python:3.11-slim` 以获得可预测的第一个结果。
  • 默认首次扫描运行 Trivy;仅在使用本地规则或客户自有规则时使用 Semgrep。
  • 保留分支、提交或工件元数据以进行故障排除。

What success looks like

保留分支、提交或工件元数据以进行故障排除。

步骤 2

创建并使用摄取 API 密钥

在 API 密钥中创建工作区密钥并仅将其用于扫描仪摄取。

  • 打开 `/api-keys`,创建一个密钥,并立即保存原始 `sp_...` 值。
  • 通过环境设置 `BLACKSHIELD_API_URL` 和 `BLACKSHIELD_API_KEY`变量。
  • 运行匹配的扫描仪客户端入口点或容器命令.
  • 捕获响应日志作为已接受有效负载的证明。

What success looks like

捕获响应日志作为已接受有效负载的证明。

步骤 3

验证质量和重复数据删除

确保调查结果完整、严重性映射正确,并且重复上传不会重复问题。

  • 打开结果并按扫描仪和资源进行过滤。
  • 验证 `first_seen` 和 `last_seen` 字段已填充。
  • 重新提交相同的负载一次并验证重复数据删除行为。

What success looks like

重新提交相同的负载一次并验证重复数据删除行为。

Demonstration only

This configuration is designed for ease of use. To deploy scanner clients at scale, please plan your deployment architecture accordingly or contact us for enterprise best practices.

运行命令

通过 API 创建摄取 API 密钥

bash
TOKEN=$(curl -s -X POST "http://localhost:8000/api/v1/auth/login?email=admin@acme.com&password=changeme123" | python3 -c "import sys, json; print(json.load(sys.stdin)['access_token'])")

curl -s -X POST http://localhost:8000/api/v1/api-keys \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"label":"Pipeline Scanner","expires_in_days":90}'

运行首次管道扫描和摄取结果

bash
docker run --rm \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -e BLACKSHIELD_API_URL=http://localhost:8000 \
  -e BLACKSHIELD_API_KEY=sp_your_key_here \
  -e SCAN_TOOL=trivy \
  -e SCAN_TARGET=python:3.11-slim \
  public.ecr.aws/blackshield-security/pipeline-scanner:1.0.6

What success looks like

  • 摄取作业状态达到已创建> 0或已更新> 0的完成状态。
  • 新发现出现在 /findings 中,并包含严重性、来源
导入首批发现 | BlackShield Docs