核心用法
agent-bom-discover-gcp 是一款专为GCP环境设计的AI Agent资产盘点技能,通过operator本地环境执行只读API调用,生成符合agent-bom规范的canonical inventory JSON。核心工作流程分为两步:
1. 发现阶段:调用GCP SDK(cloudresourcemanager、aiplatform、run、cloudfunctions、container等API)遍历项目中的Vertex AI、Cloud Run、Cloud Functions、GKE等AI相关基础设施
2. 扫描阶段:可选地将生成的inventory JSON输入agent-bom进行安全分析
关键命令示例:
python examples/operator_pull/gcp_inventory_adapter.py \ --project "$GOOGLE_CLOUD_PROJECT" \ --region us-central1 \ --output gcp-inventory.json
显著优点
- 零信任凭证架构:全程使用operator环境的ADC、Workload Identity或短期服务账号凭证,绝不请求用户粘贴私钥
- 数据驻留安全:所有API调用在operator本地执行,inventory JSON可离线存储,agent-bom仅接收operator主动推送的脱敏数据
- 标准化输出:严格遵循agent-bom schema,包含
discovery_provenance.source_type=skill_invoked_pull等审计字段 - 广泛兼容:支持Python 3.11+,跨平台(Darwin/Linux/Windows)
潜在局限
- 权限依赖:需要operator预先配置只读GCP凭证(
roles/cloudasset.viewer或更细粒度权限) - 网络可达性:必须能够访问GCP API端点(*.googleapis.com),不支持完全离线环境
- 扫描分离设计:发现与扫描分两步执行,operator需手动触发agent-bom扫描才能获得安全发现
- 无实时告警:作为一次性盘点工具,不具备持续监控能力
适合人群
- GCP安全团队进行AI资产梳理
- 合规审计人员收集AI基础设施证据
- DevSecOps工程师集成到CI/CD流水线
- 需要向agent-bom导入GCP inventory的安全分析师
常规风险
- 凭证泄露风险:若operator误配写权限或共享
~/.config/gcloud目录,可能导致权限扩大 - 数据残留:inventory JSON文件可能包含敏感资源元数据,需妥善保管输出路径
- API限流:大规模项目遍历可能触发GCP配额限制
- schema漂移:GCP API更新可能导致inventory格式与agent-bom验证不完全兼容
安全设计亮点
该skill在OpenClaw框架下实现了"credential_handling: Credentials stay in the operator environment"的严格隔离,是云原生安全盘点工具的参考实现。