了解 Microsoft Entra Agent ID

发布: (2026年2月27日 GMT+8 11:21)
11 分钟阅读
原文: Dev.to

I’m happy to translate the article for you, but I’ll need the full text you’d like translated. Could you please paste the content (excluding the source line you already provided) here? Once I have the article, I’ll translate it into Simplified Chinese while preserving the original formatting, markdown, and technical terms.

介绍

随着代理在决策方面变得更强大,它们需要拥有自己的身份,以确保适当的治理、安全性和问责制。AI 代理已经在各种工作流中被使用(也许你已经自行部署了一些!)。但随着它们变得更强大并做出自主决策,需要解决若干关注点和挑战:

  • 我们如何对代理进行身份验证和授权?
  • 我们如何治理它们?
  • 也许最重要的是,我们如何将它们与人类区分开来?!

Microsoft Entra Agent ID 将身份功能扩展到代理,帮助开发者构建、治理和保护代理身份。本文将探讨 Entra Agent ID 如何为代理提供安全功能,如访问策略控制、身份保护等。

核心概念

代理身份

代理身份是 AI 代理用于对各种系统进行身份验证的主要账户。它拥有 对象 ID应用 ID,可用于身份验证和授权。代理身份是 Entra ID 中的特殊服务主体。

  • 无密码 – 代理身份通过呈现颁发给其运行的服务或平台的访问令牌进行身份验证。
  • 令牌功能 – 它们可以:
    1. 向 Entra ID 请求代理令牌(令牌的 subject)。
    2. 接收由 Entra ID 颁发的传入访问令牌(令牌的 audience)。
    3. 代表已认证用户向 Entra ID 请求用户令牌(令牌的 subject 为用户,actor 为代理身份)。

关键组件

Agent Identity diagram

组件描述
对象 ID (id)由 Entra 生成的唯一标识符,用于在租户内标识该账户。
显示名称在 Azure 门户、Teams、Outlook 等处显示的可读名称。
赞助者对该代理负责的人类用户或组。发生安全事件时可联系赞助者。
蓝图可重用的模板,定义代理的类型并存储该类型所有代理的共享元数据。
可选代理用户某些代理需要访问要求用户身份的系统时使用的次要用户账户(不同的 id),与代理身份呈 1:1 关系。

代理身份蓝图

代理身份蓝图是用于创建和管理多个代理身份的模板和管理结构。它们充当代理身份的 父级所有 Microsoft Entra 租户中的代理身份都由蓝图创建。

组织可能会部署许多执行不同目标、需要不同访问级别的 AI 代理实例。蓝图捕获共同特征,使得每个从蓝图创建的身份都继承一致的配置。

蓝图包含的内容

  • OAuth 客户端 ID凭据 – 用于蓝图向 Entra ID 请求访问令牌。
  • Microsoft Graph 权限 AgentIdentity.CreateAsManager – 允许蓝图在租户中创建代理身份。
  • 逻辑容器 – 管理员可以对蓝图应用策略和设置;这些设置会自动影响所有从该蓝图派生的代理身份。

蓝图主体

当蓝图添加到租户时,Entra 会创建一个 蓝图主体 对象。该主体具有两个重要角色:

  1. 令牌签发 – 当蓝图获取令牌时,令牌的 oid(对象 ID)声明指向蓝图主体。
  2. 策略执行 – 应用于该主体的策略会向下传递至所有由蓝图创建的代理身份。

Blueprint principal diagram

摘要

  • Agent identities 为 AI 代理在 Entra ID 中提供一等身份,使其能够在无需密码的情况下实现安全认证。
  • Blueprints 提供一种可重用、基于策略的方式来创建和管理大量代理,同时保持治理和问责。
  • 通过利用 Entra Agent ID,组织可以自信地扩展 AI 驱动的自动化,同时保持强大的安全性、可审计性,以及人类与机器行为者之间的明确分离。

代理身份蓝图可追溯性

代理身份蓝图可追溯到租户中的主体对象。

审计日志记录代理身份蓝图在审计日志中执行的操作,视为由主体执行。这为蓝图执行的操作提供了问责制和可追溯性。

代理用户

代理用户是 AI 代理用于对各种系统进行身份验证的次要账户。当代理必须与需要用户对象的系统交互时,需要这些账户,实际上充当数字工作者。

  • 代理用户是 Microsoft Entra 中用户身份的一个子类型。
  • 它们获取带有 idtyp=user 声明的令牌,能够访问需要用户身份的 API 和服务。
  • 代理用户 不会自动创建;必须显式创建并关联到其父代理身份。
  • 每个代理身份最多只能关联 一个 代理用户,每个代理用户只能关联 唯一一个 父代理身份。
  • 每个父身份仅关联 唯一一个 代理身份蓝图应用。

代理用户同样通过 代理身份蓝图 创建。它们在创建时始终与特定的代理身份关联,拥有独立的唯一标识符(与代理身份分离),并且只能通过向关联的代理身份颁发的令牌进行身份验证。

Agent User Diagram

在创建代理用户时,必须为代理身份蓝图授予必要的权限,因为代理用户是可选的。一旦蓝图拥有适当的权限,它即可:

  1. 创建代理用户。
  2. 与特定的代理身份建立父子关系(代理身份是代理用户的父级)。

代理用户的行为类似于人类用户账户,但使用稍有不同的身份验证模型:

  • 身份验证通过分配给代理用户的 联合身份凭据 进行。
  • 这些凭据同样用于对代理身份蓝图以及代理身份本身进行身份验证。
  • 代理用户只能使用其父关系提供的凭据,而不是密码。
  • 代理身份可以通过内置的模拟机制冒充其子代理用户。

代理注册表

代理注册表 是一个集中式存储库,用于维护组织内所有已注册代理的元数据。它使系统和服务能够根据能力、角色和其他属性发现代理。

关键特性

  • Entra Agent IDCore Directory 集成,以强制执行身份和发现策略。
  • 支持代理卡与多个代理实例之间的灵活映射。
  • 作为代理相关数据的唯一真实来源。

该注册表帮助组织:

  • 确保代理发现的安全。
  • 应用零信任原则。
  • 维护对代理资产的治理。

操作模式

代理身份平台支持两种主要的代理运行和认证模式:

模式描述令牌类型
交互式代理以用户身份登录并响应用户提示(通常通过聊天界面)。它们代表已登录的用户操作,使用该用户的授权。User token (delegated permissions)
自主式代理使用自身身份执行操作,无需人类用户。它们在后台运行并做出独立决策。Agent token (when the agent identity is authenticated) or Agent user token (when an agent user is authenticated)

Owners, Sponsors, and Managers

平台引入了一种将技术管理与业务责任分离的管理模型。角色如下:

  • Owners – 代理的技术管理员;负责运营和配置方面的工作。
  • Sponsors – 为代理提供业务责任。
  • Managers – 充当代理用户的招聘经理或运营所有者的人类用户。

结论

Microsoft Entra Agent ID 仍处于预览阶段,但它代表了在保护和治理我们部署的代理方面的重要第一步。我将在不久的将来更深入地探索此领域,并随着 Entra Agent ID 的发展创建更多内容。

如果您对本文内容有任何疑问,欢迎通过 BlueSky 与我联系,或在下方留言。

下次见,祝编码愉快! 🤓🖥️

0 浏览
Back to Blog

相关文章

阅读更多 »