AI Agent凭证管理:如何保护密钥、令牌和工具访问权限
一个AI Agent的安全性取决于其背后凭证的安全性。即使一个设计良好的模型能准确遵循指令,但如果API密钥泄露、服务账户权限过大或未审查的工具权限,仍可能将一次错误操作演变为严重事故。因此,凭证管理不仅仅是存储细节,它是决定Agent能访问什么资源、访问持续多久以及多快能停止的控制层。
本文档为云环境下的AI Agent提供实用的凭证架构指南。涵盖密钥存储、身份边界、短期令牌、工具范围、审批关卡、轮换、审计证据及事件响应。目标不是消除自主性,而是让自主性具备边界、可观察性和可逆性。
为什么AI Agent凭证需要不同的安全模型
传统应用通常执行已知操作序列。而AI Agent在运行时选择工具、根据上下文构建参数,可能在人类看到结果前就串联多个动作。这种灵活性带来了更大的授权问题:同一凭证可能被用于更多路径,输入更不可预测,且以机器速度运行。
关键风险不仅是秘密可能被暴露,更深层次的风险是:有效凭证可能授权了技术上允许但当前任务不合适的操作。提示注入、损坏的上下文、故障集成或模糊的用户请求都可能引导Agent走向错误操作。强大的凭证管理能在其他控制失效时缩小影响范围。
- 秘密被复制到提示或日志中:凭证超出预期执行边界可见。
- 单一身份服务于多个工作流:低风险任务的泄露会波及高风险系统。
- 令牌有效期过长:泄露的访问权在任务结束后仍有效。
- 工具范围过广:仅需读取一个文件夹的Agent却拥有整个账户的修改权限。
- 审批与授权脱节:用户批准的是摘要,但凭证允许更广泛的操作。
在提示前建立凭证边界

应从执行边界开始,而非模型提示。提示可以指导行为,但不能强制执行访问控制。凭证代理、工具适配器、云身份提供商和目标服务必须做出最终决策。将模型视为提出动作的请求者,确定性策略层应决定是否授予可用凭证。
有用的架构分离五项职责:用户身份、Agent运行时身份、工作流策略、工具特定凭证和审计记录。保持这些职责分离有助于回答谁请求了动作、哪个工作流允许了它、授予了什么资源范围、实际发生了什么。
| 层级 | 核心问题 | 推荐控制措施 |
|---|---|---|
| 用户身份 | 谁请求了任务? | 认证用户和租户上下文 |
| Agent运行时 | 哪个执行实例在操作? | 唯一的工作负载身份 |
| 工作流策略 | 此操作现在是否允许? | 工具、资源、风险和审批规则 |
| 工具凭证 | 授予的确切访问权限是什么? | 短期、作用域受限的令牌 |
| 审计证据 | 请求和执行了什么? | 带红删的不可变事件轨迹 |
使用短期凭证和即时访问
长期API密钥虽方便,但便利意味着持久暴露。优先使用工作负载身份、委托授权或凭证代理——仅在策略检查通过后颁发短期令牌。令牌应在预期操作窗口后迅速过期,且仅对必要服务、资源和操作有效。
即时访问改变了失败模式:被盗静态密钥可能数月有效;而仅限读取某个对象数分钟的令牌复用价值极低。但短时长本身不足够:一个有效期5分钟却能删除所有生产资源的令牌依然危险。持续时间、受众、资源和操作范围必须同时缩减。
将令牌绑定到预期动作
当目标系统支持时,将授权绑定到具体参数:租户、仓库、文件夹、记录类型、HTTP方法、工具名和最大事务量。对于消息类Agent,区分草稿阅读与消息发送;对于部署类Agent,区分状态查看与基础设施变更;对于内容类Agent,区分草稿创建与发布。
在工具和资源级别应用最小权限原则
最小权限常被粗粒度实施。给Agent只读账户优于管理员权限,但仍可能暴露所有客户记录。有效的最小权限需结合工具权限、资源过滤器和工作流上下文。
- 仅允许工作流所需的工具。
- 将每个工具限制在命名资源或租户边界内。
- 分离读、创建、更新、发布、发送和删除权限。
- 设置支出上限、记录数量、文件体积和执行次数的数值限制。
- 默认禁止权限扩展、凭证创建和政策修改。
- 当任务发生重大变化时,要求重新授权决策。
这对多步骤工作流尤为重要。Agent可能从无害的读操作开始,随后决定发送、修改或删除数据。不要让首次授权无声地覆盖整个链条。在每个有意义的副作用边界重新评估授权。SmaugBrain工作流可结合显式工具访问、分步执行和人机检查点,使权限模型跟随每一步的实际风险。
为高影响操作添加审批关卡

人工审核仅在审查者能看到将被授权的实际操作时才有效。“批准此任务”这类模糊信息不够充分。审批视图应显示目标位置、操作、受影响资源、重要参数、预期影响及操作是否可逆。
审批对象应与执行请求在密码学或逻辑上绑定。若审批后参数变更,授权应自动失效。这防止安全预览变成实质不同的命令。更广泛的决策框架参见AI Agent审批工作流指南。
通常需要显式审批的操作
- 发送外部消息或发布内容
- 删除或覆盖数据
- 更改访问策略或创建凭证
- 花费资金或提交付费资源
- 部署到生产环境
- 导出敏感信息
- 执行原始请求中未见过的新工具或目的地
将密钥存储在提示、内存和日志之外
Agent应通过受控的执行通道接收凭证,而非普通对话语境。切勿将密钥置于系统提示、用户可见配置、长期记忆、源代码库、分析事件或返回模型的输出中。模型通常只需知道访问可用,无需知晓凭证值本身。
使用托管密钥存储或云身份系统作为权威来源。工具适配器应在执行时检索或交换凭证,直接注入出站请求,并从日志中红删敏感头和字段。避免将密钥写入临时文件。若遗留集成需要静态密钥,应通过窄代理隔离,确保Agent从未收到原始值。
记录授权决策而不记录密钥
安全团队需要足够证据重建事件,同时在日志中不创建第二个秘密存储。记录用户、Agent实例、工作流、工具、资源、请求操作、策略决策、审批参考、令牌标识符、时间戳、结果和错误类别。切勿记录Bearer令牌、密码、私钥、会话Cookie或完整敏感载荷。
跨完整工具链关联事件。缺少最终API结果的模型轨迹是不完整的,缺少发起任务意图的API日志缺乏上下文。使用共享关联ID使审查者能连接请求、策略评估、审批、凭证发放、工具调用和结果。配套指南AI Agent追踪与可观测性解释了如何构建端到端视图。
轮换、撤销并测试恢复
轮换应是常规操作,但事件发生时的撤销速度更重要。维护映射每个凭证所有者、工作流、环境、目标系统、允许范围、创建时间和到期日的清单。无明确所有者或当前使用的凭证应被移除。
在需要前测试响应路径。团队应能禁用Agent身份、撤销已颁发令牌、轮换静态备用方案、停止活跃作业并识别受影响操作。恢复测试还应确认当凭证代理或策略服务不可用时,正常工作流应关闭(fail closed)。静默扩大访问权限的后备方案会破坏架构。
生产级AI Agent的实施检查清单
- 清点所有工具、目标服务、凭证和副作用。
- 为每个环境和信任边界创建工作负载唯一身份。
- 将密钥移至托管存储或身份交换系统。
- 在支持处用短期令牌替换静态密钥。
- 定义工具级和资源级白名单规则。
- 设置事务量、体积、时间和目的地限制。
- 对高影响操作要求参数绑定的审批。
- 从所有日志中红删凭证和敏感载荷。
- 关联策略、令牌、工具和结果事件。
- 自动化过期、轮换、孤儿检测和撤销测试。
- 审查拒绝请求和异常权限模式。
- 针对凭证泄露和策略服务不可用进行故障演练。
从能发布、发送、删除、部署、花费或导出的工作流开始。这些影响最清晰,通常揭示可复用的政策模式。将凭证控制与成本限制结合;AI Agent预算护栏指南涵盖令牌、工具和支出边界。
常见的凭证管理错误
为所有Agent使用同一个服务账户
共享身份简化设置,但破坏归属关系并扩大影响范围。按环境、工作流类别、租户边界和风险等级拆分身份。生产和开发绝不能共享Agent凭证。
认为只读自动安全
读取权限可暴露客户数据、源代码、财务记录或内部策略。限制可读取的记录、字段、文件夹和租户,并对大查询设置导出限制。
通过模型上下文传递密钥
即使提供商承诺安全处理,不必要的密钥暴露也会增加风险。将凭证值保留在可信工具执行层内,仅向模型返回 sanitized 结果。
轮换密钥但不测试撤销
轮换证明新凭证有效,但不证明旧凭证已失效或活动会话已终止。验证转换的两端。
常见问题解答
AI Agent是否应该看到API密钥?
通常不应如此。工具适配器应检索或交换凭证并将其注入出站请求。模型仅应接收能力描述和 sanitized 结果。
短期令牌足以保护Agent吗?
否。它们减少泄露的有效寿命,但令牌还需具备窄受众、资源范围、操作范围和事务限制。
AI Agent凭证应多久轮换一次?
尽可能使用按任务或短期凭证。对不可避免的静态密钥,根据影响和暴露程度制定计划,自动化执行,并单独测试即时撤销。
Agent工具调用应记录什么?
记录请求者、Agent实例、工作流、工具、资源、操作、策略决策、审批参考、凭证标识符、结果和关联ID。永远不要记录凭证值。
何时需要人工审批?
当操作难以逆转、对外可见、涉及财务重大金额、改变权限、具有破坏性或可能暴露敏感数据时使用显式审批。将审批绑定到最终参数。
按设计保障SmaugBrain Agent工作流安全
准备好构建有边界、生产就绪的AI自动化了吗? 探索 SmaugBrain,使用清晰的权限、更安全的凭证和可问责的执行设计您的下一个Agent工作流。