深入讲解自主系统的身份管理机制——认证、授权、跨 API 委托访问,是构建可控生产级 Agent 的关键基础。
过时的安全模型不适用于如今由 AI 驱动的系统。传统的身份与访问管理(IAM)假设键盘背后是一个人,而 AI Agent 需要不同的身份识别与补救流程。
本指南将介绍为什么 AI Agent 身份管理需要一套独立的架构、哪些要素定义了 Agent 的身份,以及如何在生产环境中安全地对它们进行身份认证和授权。
自主 Agent 打破了 IAM 的所有基本假设。它们以服务主体的身份完成认证,随后在几秒钟内跨越五六个 API 连续发起调用。路由决策可能在运行途中,根据电子邮件的内容或 LLM 的输出动态产生。两个使用同一个 OAuth token 的 Agent,可能因为模型接下来的决定不同,而执行截然不同的操作。更棘手的是,当审计记录里仍然只写着 agent_service_account_3 时,几乎不可能追踪实际发生了什么。
人类用户通常拥有各自独立的账户和权限范围,而缺少完善 Agentic IAM 的 AI Agent 往往拥有过大的权限范围,审计轨迹也不透明。

同样的身份缺口也普遍存在于各个团队的 AI Agent 生产部署中。一个 token 被五个彼此毫无关联的 Agent 共用。审计日志只记录服务账户的名称,除此之外再无信息。权限范围直接从最初的原型中复制粘贴过来,之后便再也无人过问。
在多起 AI Agent 事故复盘中,反复出现了以下几类风险模式:
权限过大且 API 访问不受限制: Agent 往往继承其未来可能需要的所有权限范围的并集,其中甚至包括远超实际工作流所需权限的生产环境 token。
跨环境复用凭证: 同一个 secret 在数十个 Agent 之间轮换使用,导致身份传播过程无法追踪,凭证轮换的成本也高得难以承受。
身份传播存在缺口,执行责任无法追溯: 日志只记录操作,却没有记录产生该操作的决策路径、prompt 或模型输出。出现问题时,没有人能够证明谁授权了什么操作。
Agentic 系统需要一种不同的模型:围绕身份传播、运行时授权以及专门的非人类身份治理构建。AI Agent 身份管理会为每个自主 Agent 分配独立的凭证、权限范围和审计轨迹,使每项操作都能追溯到具体的身份与授权上下文。
Agentic identity 比人类身份包含更多层次。它结合了 Agent 提交的凭证、Agent 执行操作时所依据的委托授权上下文,以及能够将二者追溯至实际授权用户的审计链。
以下是支撑这套架构的几大支柱。
理想情况下,Agentic identity 应当继承用户的权限范围,并附带一个短期有效的 token。

运行时身份,是 Agent 执行操作时向下游系统提交的身份,而不是几个月前为该 Agent 配置的静态凭证。
这一点之所以重要,有几个不同的原因。首先,运行时身份是委托而来的。Agent 代表特定用户或特定工作流上下文执行操作,而且该上下文会随每次调用一起传递。其次,它具有明确的时间边界。工作流完成或发起操作的用户会话结束时,凭证便会失效,以先发生的时间点为准。
针对 AI Agent 的委托授权,正是 OpenID Foundation 最近在 Agentic identity 相关工作中推动标准化的模型。用户为工作流授权,工作流再将这份权限缩小到 Agent 实际需要的范围;下游 API 在验证调用时,则能同时看到 Agent 和原始用户这两个身份。这样一来,企业既能按照约束人类用户的责任标准来约束自主 Agent,又不会因此限制系统吞吐量。
限定权限范围,是解决“Agent 永久持有生产环境凭证”这一问题的务实方案。系统不会授予 Agent 宽泛的权限,而是针对特定任务向其分配一组有限的权限,这些权限通常还只在特定时间内有效。系统会在执行开始时签发 access token,并在工作流退出的那一刻将其撤销。
身份传播让审计轨迹真正具有意义。当一个 Agent 依次调用三个 API 时,每个下游系统都需要知道最初是哪位用户授权了这条调用链。仅仅声称操作是由 Agent 的服务账户完成的,远远不够。
没有身份传播时,所有操作最终都会归并到 Agent 自身的身份下。有了身份传播,Salesforce 的日志记录仍然可以追溯到触发工作流的人、实际运行的工作流版本,以及促成该项决策的 prompt。大多数 Agentic identity 平台目前仍然难以处理好这一层,这也是可验证凭证和经过加密签名的身份声明在 AI 身份治理框架中日益普及的原因。
保护 AI Agent 的第一步,是将身份认证与授权分开。这两个概念很容易混淆,而这种混淆往往正是 Agent 最终获得未经任何人批准权限的原因。
明确这些区别后,接下来看看有哪些框架能够让 AI Agent 访问系统。
API key 往往不适合 AI 场景。它们不会过期,难以按照特定用户上下文精确限定权限范围,而且通常存放在多个服务共用的环境变量中。对于大多数生产场景,采用 Proof Key for Code Exchange(PKCE)的 OAuth 2.0 是更好的选择。在企业部署中,单点登录(SSO)和 OpenID Connect(OIDC)可以把 Agent 会话与已完成身份认证的用户关联起来,让 Agent 从用户会话中继承限定范围的权限,而不是从共享服务账户获取权限。
n8n 支持通过 Okta 及其他身份提供商接入 SAML SSO,并为每个 Agent 集成提供相互隔离的凭证存储。尤其对于基于 HTTP 的集成,该平台会集中管理 OAuth 凭证,使 refresh token、权限范围和授权类型都保留在工作流定义之外。这样一来,AI Agent 身份认证便成为一项配置问题,而不需要为每个 Agent 单独手工实现。
基于角色的访问控制(RBAC)对于 Agent 而言比对人类更加重要,因为 Agent 的行动速度远快于任何人撤销其权限的速度。其模型以工作流为粒度:谁可以编辑工作流、谁可以执行工作流,以及每次执行可以使用哪些凭证。拥有编辑权限并不意味着自动拥有执行权限,而拥有执行权限也不代表可以访问凭证。
这与 dev、staging 和 production 之间的环境隔离直接对应。每一层环境都有自己的凭证池和 RBAC 规则,这意味着将工作流提升至生产环境必须成为一项经过明确决策的操作,而不能只是部署脚本带来的附带结果。底层的角色与权限系统负责管理日常的最小权限实施方式。与此同时,工作流共享规则则决定哪些协作者可以查看、修改或运行每个 Agent。
n8n 会加密存储凭证,并将其与工作流定义分开;凭证绝不会暴露在工作流 JSON 中。在环境级隔离方面,external secrets 允许你按项目限定 vault 的访问范围,确保 staging 凭证不会进入 production 工作流。
身份感知的可观测性意味着,Agent 的每项操作都可以追溯到授权该操作的凭证、实际运行的工作流版本,以及发起这条调用链的用户会话。没有这种能力,AI Agent 事故复盘就会沦为在日志中考古和互相推卸责任。
自主 AI Agent 需要的身份控制机制,在大多数 IAM 平台设计之初根本不存在。这意味着仅有身份认证远远不够。Agent 还需要有边界的授权、能够传播的身份,以及针对每次执行的可观测性;而且这些控制措施必须延伸到 IAM 平台之外,进入 Agent 真正执行操作的工作流层。希望 AI Agent 在生产环境中表现得可预测的团队,应当从一开始就把身份视为工作流层面的问题,而不是等 Agent 上线之后再临时补上的机制。
了解确定性逻辑与 AI 推理如何协同工作。
n8n 用户有着广泛的背景、经验水平和兴趣方向。我们一直希望在博客文章中介绍不同的用户及其项目。如果你正在使用 n8n,并且愿意为社区带来启发,欢迎联系我们 💌