我们发现了什么
当 AI 代理代表用户执行操作时,传统审计日志往往无法完整说明实际执行操作的主体。AI 代理造成了一种新的审计缺口。
- 来源:DEV Community(发现于 2026-10-10)
- 证据等级:D · 发现产品或需求信号,暂未获得可核验的商业证据。
- 商业模式:待核验
- 主题:AI Agent
- 初筛评分:18.4/100 · 收录 1 次
证据,比故事更重要。
规则清洗与初筛,未经人工商业核验。原文语境、实际客户和付费情况仍需自行验证。
引用与数字披露
来源类型(原作者自述/第三方测算/媒体转引)需采集端标注,本版尚未落字段。
- 作者
- 未标注
- 抓取日期
- 来源类型
- 未标注
- 币种
- 未标注
- 口径
- 未标注
- 披露主体
- 未标注
- 披露日期
- 未标注
上下文核对:来源原文含限定词一次性预测,中文摘要未逐字保留 —— 引用或跨期比较前请回原文核对,别把估算读成已实现。
中文辅助译文(节选·触顶截断)
当 AI 智能体代表用户执行操作时,传统的审计日志往往无法完整说明操作的实际执行者。在本文中,我将探讨如何利用 Auth0 的监控、Token Vault 和 CIBA 审批流程来弥补这一缺口。我还将介绍如何追踪委托操作、如何安全管理令牌,以及如何在智能体工作流中维护清晰的审计追踪。
AI 智能体带来了一种新型的审计缺口。当智能体代表用户执行操作时,它们可能会使用在该用户身份下签发的令牌,即便操作是由智能体执行的。当一条高权限操作出现在你的日志中时,你需要知道它是来自一名人类开发人员、一个计划任务的后台作业,还是一个拥有委托权限的 AI 智能体。如果你只查看传统的审计日志,可能会显示为用户 X 执行了 Y,即便操作实际上是由智能体间接执行的。
随着智能体在身份提供商、SaaS 平台和内部服务之间运行,审计和可追溯性会变得更加困难。单个用户请求可能会演变成一连串委托操作,其中意图、授权和执行发生在不同的地方。弥合审计缺口意味着不仅要记录发生了什么,还要记录谁发起了它、委托是如何发生的、使用了什么权限,以及过程中发生了哪些审批。
在本文中,你将学习如何使用 Auth0 的监控和日志来捕获智能体相关的活动、如何解读委托授权流程中的事件类型,以及如何利用 Auth0 内置的监控功能、日志和日志流组装一个实用的工作流。
理解 AI 智能体系统中的审计缺口
身份模型通常是围绕一个简单的流程构建的。人类进行身份验证,他们的应用收到一个令牌,然后调用 API。即便是服务之间的调用,通常也被建模为具有明确边界和可预测生命周期的显式机器身份。
智能体系统使用类似的身份验证和授权模型,但围绕该委托的运行上下文发生了变化。你仍然拥有一个人类身份,但你也有一个可以为该人类行事的智能体,通常跨多个外部提供商。委托链可能包括一次 UI 操作、一个后台作业、一次令牌交换,以及一系列 API 调用。许多日志管道并不能清晰地呈现这些交接。
核心问题是间接执行。归因变得更加困难,因为发起意图的参与者(人类)和执行调用的参与者(智能体)可能并不共享同一个运行时、IP、设备,甚至不在同一个系统中。例如,当用户要求智能体从 Salesforce 拉取最新的数据管道并对其进行总结时,智能体会使用存储的 OAuth 2.0 令牌来调用 Salesforce API。如果没有明确的委托上下文,审计追踪可能使该操作看起来像普通的用户访问,即便它是由代表用户行事的智能体执行的。对于智能体而言,这种区分很重要,因为它们可以根据用户的授权在后台工作流中执行操作,而不仅仅是响应一次直接的点击。
Auth0 监控 和租户日志通过提供对身份验证、授权和委托相关事件的一致身份层记录来提供帮助。你可以关联令牌签发、交换、审批、失败以及下游活动。Auth0 有助于确保委托层发出足够的信号,以重建谁授权了什么、智能体是如何获得执行能力的,以及哪个工作流使用了该访问权限。
例如,如果一个智能体代表用户访问 Google Drive,你应该能够将用户最初与 Google 的连接、所授予的范围、令牌的访问或刷新事件、智能体运行 ID 以及下游文件访问关联起来。如果同一个智能体稍后访问 Salesforce,你应该能够跨不同的提供商执行相同的重建。这种关联正是将分散的日志转变为审计追踪的关键。
使用 Token Vault 监控由智能体驱动的 API 访问
Token Vault 专为那些代表用户调用外部提供商(如 Google 或 Salesforce)的应用(和智能体)而设计。Token Vault 不在你的智能体数据库中存储长期存在的第三方刷新令牌,而是存储提供商的访问令牌和刷新令牌并代为提供访问。你的智能体在运行时检索它需要的内容,以便在用户的委托授权下调用外部 API。这一点很重要,因为外部提供商的令牌往往是用户意图和智能体执行之间的桥梁。如果每个团队都将提供商的刷新令牌存储在自己的服务中,你很快就会失去集中可见性。你还会增加敏感凭据可能泄露、被滥用或在缺乏明确审计追踪的情况下被刷新的位置数量。Token Vault 通过将令牌存储和访问纳入身份层来减少这种分散,如下图所示。
图注:流程图展示了 Token Vault 通过集中存储并代理外部提供商(如 Google、Salesforce)的访问令牌与刷新令牌,将其纳入 Auth0 身份层,从而减少令牌分散、避免长期凭据留在智能体后端。
当用户首次授权访问外部提供商时,Auth0 会将这些提供商令牌存储在 Token Vault 中。当智能体稍后需要代表用户执行操作时,它通过 Auth0 检索所需的令牌。然后它使用该令牌调用提供商 API,而无需在智能体后端存储长期凭据。
Token Vault 支持端到端审计追踪和可追溯性。它的一些优势包括:
- 减少令牌分散: 集中式存储缩小了令牌签发、刷新和检索可能发生的位置数量。
- 有助于维护用户上下文: 智能体可以"作为用户"行事,而无需使用会抹去归属的共享服务凭据。这并不能完全解决审计缺口问题,但它能使委托锚定在用户授权之上。
- 支持异步工作而不削弱控制: 用户授权一次,智能体可以稍后运行。你仍然可以集中强制执行范围和生命周期控制。
- 提升调查质量: 在事件调查期间,调查人员可以询问使用了哪个已连接的账户、哪些范围可用、令牌何时被访问,以及当时运行的是哪个智能体工作流。
设想这样一个场景:你正在构建一个智能体,它能够通过从 Google Drive 和 Salesforce 提取上下文来起草一封客户跟进邮件。用户一次性授权所需的提供商。之后,智能体在后台运行,检索相关的访问令牌,从 Google Drive 读取文档,检查 Salesforce 中的客户详情,然后起草回复。在中间有 Token Vault 的情况下,你将看到值得监控的身份层日志:
- 当用户首次连接 Google 时(初始同意和令牌存储)。
- 当为智能体运行的任务检索访问令牌时。
- 当由于访问令牌过期而发生刷新时。
- 当范围发生变化时(例如,智能体现在需要额外的权限)。
如果智能体声称它需要 Google Drive 访问权限,你应该能在同一时间前后看到相应的事件。如果你在异常时段看到 Google OAuth 令牌的重复刷新,这可能表明存在循环、过于宽泛的集成,或被入侵的工作流。
使用 CIBA 监控异步授权流程中的审批
CIBA(Client-Initiated Backchannel Authentication,客户端发起的反向信道身份验证) 是一种解耦的 OAuth/OIDC 流程。它允许客户端应用发起身份验证或授权请求,而无需用户处于同一浏览器会话中。这适合这样的智能体工作流:智能体希望执行某些敏感操作,但你仍然希望在继续之前设置一个人工审批步骤。下图详细展示了 CIBA 流程:
图注:流程图展示了 CIBA 流程——智能体后端向 Auth0 发起反向信道授权请求(含 scope、binding 和 user hint),Auth0 提示用户审批;若获得批准,智能体收到令牌并调用受保护 API;若被拒绝或过期则返回错误。
如上所示,最初,智能体后端向 Auth0 发送反向信道授权请求,其中包含请求的范围、绑定和用户提示。然后 Auth0 提示用户审批。如果获得批准,智能体将收到一个令牌并调用受保护的 API,而被拒绝或过期的请求则返回错误。
CIBA 在委托链中创建了明确的、可记录的检查点。在典型的"智能体直接运行"模型中,你可能只会看到下游 API 调用和令牌刷新。使用 CIBA,你可以监控:
- 智能体何时发起了授权请求: 这是一个"智能体意图"信号,表明智能体试图获得继续操作的许可。
- 用户是批准、拒绝还是流程失败/过期: 这将成为合规和事件响应的清晰审计凭据。
CIBA 最适合在你想提升智能体效率而不想发生静默升级的场景。例如,如果你的智能体希望从 Salesforce 下载一个客户列表并将其附加到内部工单。与其让智能体静默地使用现有令牌,你可以要求带有"导出客户"范围的 CIBA 审批。
- 智能体后端发起请求。
- 用户在其手机上收到推送通知。
- 智能体只有在获得批准后才能收到允许导出的令牌。
- 如果请求被拒绝或超时,智能体可以退回到要求用户采用不同的方式。
为了弥合审计缺口,请将这些 CIBA 事件视为一流的监控信号。在 Auth0 日志中,查找 请求已发起 > 待处理 > 已批准/已拒绝/已过期 的序列。将该序列与令牌签发和 API 活动关联起来。将稳定的关联 ID(智能体运行 ID、作业 ID 或工作流 ID)附加到 CIBA 发起请求上。将其通过内部日志进行传递,以便你可以将"已授予审批"与"已执行操作"联系起来。此外,你还应该决定哪些操作需要 CIBA 审批。并非每个智能体操作都需要人工检查点。读取日历以安排会议可能是低风险的,前提是用户已经授予了相应的范围。导出客户数据、转账、修改权限、删除文件或发布内容则可能需要明确的审批。目标是仅在能够产生有意义的问责的地方应用审批,而不是放慢每个工作流。
如何使委托操作可追溯
在使用 AI 智能体时,你可以执行以下操作来帮助使跨身份、应用和提供商层的委托操作可追溯:
- 在 Auth0 中捕获身份层事件: 使用 Auth0 租户日志,通过日志跟踪身份验证、授权和委托相关的活动。
- 集中外部提供商令牌: 使用 Token Vault,使令牌的存储、刷新和检索都可在一个地方进行观察。
- 为敏感操作添加明确的审批: 在需要明确的"已批准/已拒绝"检查点时使用 CIBA。
- 将日志流式传输到你的分析平台: 使用日志流将 Auth0 事件转发到你的 SIEM(安全信息与事件管理)或数据平台。
- 端到端传递关联 ID: 在 Auth0 发起、后端执行和提供商 API 调用中使用稳定的 ID(智能体运行 ID、作业 ID、工作流 ID)。
Auth0 监控弥合智能体审计
……(正文超出本站单页篇幅上限,此处截断;完整表述请见下方原文入口。)
译文由上游机器翻译生成,可能有误;判断请以英文原文为准。
英文原文(来源本站未改写)
When AI agents act on behalf of users, traditional audit logs often don't tell the full story of who actually performed an action. In this article, I explore how to close that gap using Auth0's monitoring, Token Vault, and CIBA approval flows. I also cover how to track delegated actions, manage tokens securely, and maintain a clear audit trail across agent workflows.
AI agents create a new kind of audit gap. When agents act on behalf of a user, they may use tokens issued under that user’s identity, even though the action is executed by the agent. When a high-privilege action shows up in your logs, you need to know whether it came from a human developer, a scheduled backend job, or an AI agent acting with delegated authority. If you only look at traditional audit logs, it can appear that user X did Y, even when the action was carried out indirectly by an agent.
Auditing and traceability get harder as agents operate across identity providers, SaaS platforms, and internal services. A single user request can turn into a chain of delegated actions where intent, authorization, and execution happen in different places. Closing the audit gap means capturing not only what happened, but also who initiated it, how delegation occurred, what permission was used, and what approvals happened along the way.
In this article, you will learn how to use Auth0’s monitoring and logs to capture agent-related activity, how to interpret event types in delegated authorization flows, and how to assemble a practical workflow using Auth0’s built-in monitoring features, logs, and log streams.
Understanding the Audit Gap in AI Agent Systems
Identity models are typically built around a simple flow. A human authenticates, their application receives a token, and calls an API. Even service-to-service calls are usually modeled as explicit machine identities with clear boundaries and predictable lifecycles.
Agentic systems use a similar authentication and authorization model, but the operational context around that delegation changes. You still have a human identity, but you also have an agent that can act for that human, often across multiple external providers. The delegation chain can include a UI action, a background job, a token exchange, and a series of API calls. Many logging pipelines do not represent those handoffs clearly.
The core problem is indirect execution.Attribution gets harder because the actor that initiated intent (the human) and the actor that executed the call (the agent) may not share a runtime, IP, device, or even the same system.For example, when a user asks an agent to pull the latest pipeline from Salesforce and summarize it.The agent would use the stored OAuth 2.0 tokens to call Salesforce APIs.Without explicit delegation context, the audit trail can make the action look like normal user access, even when it was performed by an agent acting on the user’s behalf.
For agents, that distinction matters because they may act on a user’s authorization across background workflows, not just in response to a direct click.
Auth0 monitoring and tenant logs help by providing a consistent identity-layer record of authentication, authorization, and delegation-related events. You can correlate token issuance, exchanges, approvals, failures, and downstream activity. Auth0 helps ensure the delegation layer emits enough signals to reconstruct who authorized what, how the agent obtained the ability to do it, and which workflow used that access.
For example, if an agent accesses Google Drive on behalf of a user, you should be able to correlate the user’s original connection to Google, the scopes granted, the token access or refresh event, the agent run ID, and the downstream file access. If the same agent later accesses Salesforce, you should be able to perform the same reconstruction across a different provider. This correlation is what turns disconnected logs into an audit trail.
Monitoring Agent-Driven API Access with Token Vault
Token Vault is designed for applications (and agents) that call external providers like Google or Salesforce on behalf of users.Instead of storing long-lived third‑party refresh tokens in your agent’s database, Token Vault stores provider access and refresh tokens and brokers access to them.Your agent retrieves what it needs at run time to call external APIs under the user’s delegated authorization.This matters because external provider tokens are often the bridge between user intent and agent execution.
If every team stores provider refresh tokens in its own service, you quickly lose centralized visibility.You also increase the number of places where sensitive credentials can leak, be misused, or be refreshed without a clear audit trail.Token Vault reduces that sprawl by making token storage and access part of the identity layer, as shown in the diagram below.

When the user first authorizes access to an external provider, Auth0 stores those provider tokens in Token Vault. When the agent later needs to act on the user’s behalf, it retrieves the required token through Auth0\. It then uses that token to call the provider API without storing long-lived credentials in the agent backend.
A token vault enables end-to-end audit trails and traceability. Some of its advantages include:
- Reduces token sprawl: Centralized storage narrows the number of places where token issuance, refresh, and retrieval can occur.
- Helps maintain user context: The agent can act “as the user” without shared service credentials that erase attribution.This does not fully solve the audit gap, but it keeps delegation anchored to a user grant.
- Supports asynchronous work without weakening controls: Users authorize once.Agents can operate later.
You can still enforce scope and lifecycle controls centrally. Improves investigation quality:* During an incident, investigators can ask which connected account was used, which scopes were available, when the token was accessed, and which agent workflow was running at the time.
Consider a scenario where you are building an agent that can draft a customer follow-up email by pulling context from Google Drive and Salesforce. The user authorizes the required providers once. Later, the agent runs in the background, retrieves the relevant access tokens, reads a document from Google Drive, checks customer details in Salesforce, and drafts a response. With Token Vault in the middle, you will see identity-layer logs worth monitoring:
- When the user first connects Google (initial consent and token storage).
- When an access token is retrieved for an agent-run task.
- When a refresh occurs because the access token has expired.
- When scopes change (for example, the agent now needs additional permissions).
If an agent claims it needed Google Drive access, you should see a corresponding event around the same time. If you see repeated refreshes for Google OAuth tokens at unusual hours, that can indicate a loop, an overly broad integration, or a compromised workflow.
Monitoring Approvals in Async Authorization Flows with CIBA
CIBA (Client-Initiated Backchannel Authentication) is a decoupled OAuth/OIDC flow. It lets a client application initiate an authentication or authorization request without the user being present in the same browser session. This fits agent workflows where the agent wants to do something sensitive, but you still want a human approval step before it proceeds. The following diagram shows the CIBA flow in detail:

As shown above, initially, the agent backend sends a backchannel authorization request to Auth0 with the requested scope, binding, and user hint. Auth0 then prompts the user for approval. If approved, the agent receives a token and calls the protected API, while denied or expired requests return an error instead.
CIBA creates explicit, loggable checkpoints in the delegation chain. In a typical “agent just runs” model, you may only see downstream API calls and a token refresh. With CIBA, you can monitor:
- When an agent initiated an authorization request: This is an “agent intent” signal that the agent attempted to obtain permission to proceed.
- Whether the user approved, denied, or the flow failed/expired: This becomes a clean audit artifact for compliance and incident response.
CIBA fits best when you want agent productivity without silent escalation. For example, if your agent wants to download a customer list from Salesforce and attach it to an internal ticket. Instead of letting the agent use existing tokens silently, you require a CIBA approval with the “export customers” scope.
- The agent backend initiates the request.
- The user receives a push notification on their phone.
- The agent only receives a token that allows the export after approval.
- If the request is denied or times out, the agent can fall back to asking the user for a different approach.
To close the audit gap, treat these CIBA events as first-class monitoring signals.In Auth0 logs, look for the sequence of request initiated > pending > approved/denied/expired.Correlate that sequence to token issuance and API activity.Attach a stable correlation ID (agent run ID, job ID, or workflow ID) to the CIBA initiation.Propagate it through internal logs so you can tie “approval granted” to “action executed”.Additionally, you should also decide which actions require CIBA approval.Not every agent action needs a human checkpoint.Reading a calendar to schedule a meeting may be low risk if the user has already granted the right scope.
Exporting customer data, sending money, modifying permissions, deleting files, or publishing content may require explicit approval.The goal is to apply approvals where they create meaningful accountability, not to slow every workflow down.
How To Make Delegated Actions Traceable
When working with AI agents, you can do the following to help make delegated actions traceable across identity, application, and provider layers:
- Capture identity-layer events in Auth0: Use Auth0 tenant logs to track authentication, authorization, and delegation-related activity via logs.
- Centralize external provider tokens: Use Token Vault so token storage, refresh, and retrieval are observable in one place.
- Add explicit approvals for sensitive actions: Use CIBA when you need a clear “approved/denied” checkpoint.
- Stream logs to your analysis platform: Use log streams to forward Auth0 events to your SIEM (Security Information and Event Management) or data platform.
- Propagate correlation IDs end-to-end: Use a stable ID (agent run ID, job ID, workflow ID) across Auth0 initiation, backend execution, and provider API calls.
Auth0 Monitoring Closes the Agent Audit
... (truncated at the site's per-page length limit; see the source link below for the full text.)
出处https://dev.to/auth0/closing-the-audit-gap-in-human-to-agent-delegation-48il
这条还缺什么证据?
下面每条都由本条已有字段推出(等级、理由、商业模式、来源次数、是否演示), 本站不生成推测性结论;通用验证方法放在方法论页。
- 可核验的收入或付费证据查官网定价页与付费口径;第三方数据源(如 GetLatka)只作旁证,需标注来源与时点。
- 商业模式未定确认按席位/按用量/授权还是开源托管版收费;开源项目另查 LICENSE 与是否存在付费版。
- 只有单一来源找一手站点或其他渠道是否重复出现同一产品;社区热帖数量不等于商业进展。
通用验证清单(谁有这个问题/谁愿意付费/一个人能交付哪一小步)见我们的筛选方法。