SuperAPI AI 工具集

managing-workflow-secrets

办公与效率

查看项目

更新于 10-16 09:53

技能介绍

用途:为 GitHub Actions 作业提供在 Bitwarden CI/CD 及运维工作流中安全取用密钥的规范模式,核心是 OIDC 联合登录 Azure、从 Azure Key Vault 取密钥,再尽早登出。

主要能力与流程:每个需要 Key Vault 密钥的作业遵循固定四步:azure-login → get-keyvault-secrets → azure-logout → 使用步骤输出。示例中登录用 bitwarden/gh-actions/azure-login@main,取密钥步骤 id 固定为 secrets,取回的值保存在步骤输出中并在登出后仍可用;登出紧随取回之后,除非后续步骤需要活动 Azure 会话。

关键约束:任何会导致密钥被日志、文件、构件、命令行参数或作业输出暴露的改动都不得提供,应标记为暴露;每次都要核对密钥卫生清单。内部动作使用 @main,第三方动作须用完整 40 位 SHA 固定;任何登录作业必须声明 id-token: write,权限保持最小;仅存在三个认证用 GitHub 密钥(AZURE_SUBSCRIPTION_ID、AZURE_TENANT_ID、AZURE_CLIENT_ID)。

跨作业传递:不要通过 jobs 输出传密钥值;需要 GitHub 访问时在消费作业内自行从 AKV 取 App 凭据并铸造短期 App token;可复用工作流由调用方转发 OIDC 三件套,被调用方自行登录取密钥,双方都要声明相应 secrets 与 id-token: write。

适用场景:需要容器 registry 推送、外部服务集成、失败通知等真正需要密钥的作业;纯 CI 步骤通常无需 AKV。限制:fork PR 的触发访问门、单作业多 vault、动态身份选择、证书与密钥写回等不在本技能范围内,需逐案处理;vault 与密钥名称须由任务提供,缺失时应询问,不得推断。输入输出契约及 OIDC 身份约定见 references/actions.md。