Microsoft Graph 中的Microsoft Entra 智能体 ID API 可帮助你创建、保护和管理在组织中运行的 AI 代理标识。 可以编程方式创建代理标识,控制其对资源的访问,并通过集中式平台监视其活动。
本文介绍用于在 Microsoft Graph 中管理代理标识的关键概念和 API,包括构成代理标识的组件、如何将安全和治理策略应用于代理,以及以编程方式管理代理所需的权限。
若要了解有关Microsoft Entra 智能体 ID的详细信息,请参阅什么是Microsoft Entra 智能体 ID。
代理标识的构建基块
以下核心组件包含Microsoft Entra 智能体 ID的体系结构:
| 组件 | 用途 | Microsoft Graph 资源 |
|---|---|---|
| Blueprint | 定义代理标识类型的模板 | agentIdentityBlueprint |
| 蓝图主体 | 蓝图添加到租户的记录。 | agentIdentityBlueprintPrincipal |
| 代理标识 | 用于身份验证的主要标识 | agentIdentity |
| 代理用户 | 需要用户帐户的方案可选帐户 | agentUser |
| 代理注册表 | 用于代理管理的集中式存储库,用作管理代理卡清单、代理实例和代理集合的平台。 |
在以下文章中详细了解代理标识体系结构:
代理安全和治理的相关 API
Microsoft Entra 智能体 ID将Microsoft Entra的综合安全性和治理功能扩展到 AI 代理,包括条件访问、标识保护和审核日志。
所有权和责任
每个代理标识都应有一个指定方负责代理的作、访问权限和整体安全状况,以确保责任制和适当的治理。 Microsoft Graph API 允许分配和管理代理标识的以下元数据,以支持此原则。
| Metadata | 适用对象 |
|---|---|
| owner | agentIdentityBlueprint、agentIdentityBlueprintPrincipal、agentIdentity |
| 发起人 | agentIdentityBlueprint、agentIdentityBlueprintPrincipal、agentIdentity、agentUser |
| manager | agentUser |
有关详细信息,请参阅Microsoft Entra 智能体 ID (所有者、发起人和经理) 中的管理关系。
条件访问
可以基于代理标识、风险和其他上下文因素以编程方式应用条件访问策略,以在 AI 代理上强制实施访问策略。
- 使用 What If 评估 API 模拟条件访问策略如何影响尝试访问资源的代理标识。
- 使用 条件访问策略 API 为访问组织资源的 AI 代理应用或管理条件访问策略。 可以根据代理风险级别或分配给代理的自定义安全属性应用这些策略。
标识保护
Microsoft Entra ID保护基于各种信号和机器学习持续评估代理风险。 可以使用 agentRiskDetection 和 riskyAgent 资源类型来识别和管理组织中的代理风险,包括消除或确认检测到的风险。 已确认的风险可能会触发自动修正作,例如条件访问策略强制实施。
审核日志
Microsoft Entra signIn 日志捕获代理标识执行的活动,提供对代理作的可见性,以便进行合规性和安全监视 - 从创建代理标识到代理的配置更改(包括角色和权限的分配)。
用于管理代理标识的权限
Microsoft Graph 提供以下精细权限来管理代理标识及其关联组件。
重要
其中一些权限目前无法通过Microsoft Entra 管理中心上的 API 权限选取器获得。 相反,可以使用 Microsoft 图形 API 或 PowerShell 以编程方式分配这些权限。 若要授予委托的权限,需要权限 (范围) 名称,而对于仅限应用的权限,则需要 ID。 若要获取指南,请参阅下列文章:
| 权限名称 | 委托 ID | 仅限应用的 ID |
|---|---|---|
| 代理注册表权限 | ||
| AgentCardManifest.Read.All | ada96a26-9579-4c29-a578-c3482a765716 | 3ee18438-e6e5-4858-8f1c-d7b723b45213 |
| AgentCardManifest.ReadWrite.All | 80151b1a-1c31-4846-ae0d-c79939ee13d1 | 228b1a03-f7ca-4348-b50d-e8a547ab61af |
| AgentCardManifest.ReadWrite.ManagedBy | 不支持。 | 77f6034c-52f5-4526-9fa1-d55a67e72cc4 |
| AgentCollection.Read.All | fa50be38-fdff-469c-96dc-ef5fce3c64bf | e65ee1da-d1d5-467b-bdd0-3e9bb94e6e0c |
| AgentCollection.Read.Global | b14924c8-87f1-438a-81f2-dc370ba2f45d | 不支持。 |
| AgentCollection.Read.Quarantined | 43acfda3-daf3-4aa4-955d-b051d0024e82 | 不支持。 |
| AgentCollection.ReadWrite.All | 6d8a7002-a05e-4b95-a768-0e6f0badc6c8 | feb31d7d-a227-4487-898c-e014840d07b3 |
| AgentCollection.ReadWrite.Global | c001dd65-8a6b-4349-ab0c-4e8a410d28d2 | 不支持。 |
| AgentCollection.ReadWrite.ManagedBy | 不支持。 | 2e0fb698-9996-479f-926b-ce63f4397829 |
| AgentCollection.ReadWrite.Quarantined | ae331cc9-9f51-484b-a90b-124f2e4a6398 | 不支持。 |
| AgentInstance.Read.All | 4c3c738a-2df0-4877-bf4a-f796950ff34c | 799a4732-85b8-4c67-b048-75f0e88a232b |
| AgentInstance.ReadWrite.All | fc79e324-da24-497a-b5ec-e7de08320375 | 07abdd95-78dc-4353-bd32-09f880ea43d0 |
| AgentInstance.ReadWrite.ManagedBy | 不支持。 | 782ab1bf-24f1-4c27-8bbc-2006d42792a6 |
| 代理标识权限 | ||
| AgentIdentity.Read.All | 5e850691-d86a-4b24-bfa6-8a52fb37a0c1 | b2b8f011-2898-4234-9092-5059f6c1ebfa |
| AgentIdentity.ReadWrite.All | 4a4facd5-0ee1-49b7-a5b2-fdcc2491685e | dcf7150a-88d4-4fe6-9be1-c2744c455397 |
| AgentIdentity.DeleteRestore.All | c8ee41e5-35e7-4fe9-8ecb-93493adcac5b | 5b016f9b-18eb-41d4-869a-66931914d1c8 |
| AgentIdentity.CreateAsManager | ccf6a395-80ad-41b3-ba11-27d4930eb7d0 | 4c390976-b2b7-42e0-9187-c6be3be001 |
| AgentIdentity.Create.All | e75eeac6-d759-4ba3-ae5c-773a27efafba | ad25cc1d-84d8-47df-a08e-b34c2e800819 |
| AgentIdentity.EnableDisable.All | a501206a-e364-4a3f-be6e-765806d0e323 | 69ee0943-4fa4-4ec8-8e52-d12e4ea661a3 |
| AgentIdentityBlueprint.Read.All | 26512dc8-1364-4e9f-867c-6d8b22a9e162 | 7547a7d1-36fa-4479-9c31-559a600eaa4f |
| AgentIdentityBlueprint.ReadWrite.All | 4fd490fc-1467-48eb-8a4c-421597ab0402 | 7fddd33b-d884-4ec0-8696-72cff90ff825 |
| AgentIdentityBlueprint.DeleteRestore.All | f12ba1f6-afb7-4685-9a30-21e8c3f551d8 | 3f80b699-6405-4e36-a4df-4f19950ff91e |
| AgentIdentityBlueprint.AddRemoveCreds.All | 75b5feb2-bfe7-423f-907d-cc505186f246 | 0510736e-bdfb-4b37-9a1f-89b4a074763a |
| AgentIdentityBlueprint.UpdateBranding.All | 60960e31-67cb-4d25-9d36-4922109923a2 | 76232daa-a1e4-4544-b664-495a006513bf |
| AgentIdentityBlueprint.Create | 8fc15edd-ba24-494e-9bf6-d38e1b7ba8fd | ea4b2453-ad2d-4d94-9155-10d5d9493ce9 |
| AgentIdentityBlueprintPrincipal.Read.All | 88c856a2-de61-4632-b2d4-ac503cbc8dd2 | 9361dea9-4524-493d-941d-f1b65aaf6c7c |
| AgentIdentityBlueprintPrincipal.ReadWrite.All | bf2cad6a-9082-438a-9a63-95fa2687af65 | 3bc933bc-8b4d-4cb6-ac49-b73774299250 |
| AgentIdentityBlueprintPrincipal.DeleteRestore.All | 2c70023e-a482-4af2-9ff1-51ded53e6bad | f86a2dd8-9298-4675-bd78-f5a3572da2d7 |
| AgentIdentityBlueprintPrincipal.Create | 00dcd896-6b23-42ce-b5de-c58493c05e22 | 8959696d-d07e-4916-9b1e-3ba9ce459161 |
| AgentIdentityBlueprintPrincipal.EnableDisable.All | e7475e0a-9f02-43e2-a250-5c2ea74ccd0e | a0bdd23d-8b19-4682-b428-574d96527c6f |
| 代理用户权限 | ||
| AgentIdUser.ReadWrite.All | ad57fb88-4658-4fd6-ab7d-e43184b08e4e | b782c9ad-6f2b-4894-a21b-72bf22417f0a |
| AgentIdUser.ReadWrite.IdentityParentedBy | 52a417d9-0b3c-4466-9a3b-66960de73d74 | 4aa6e624-eee0-40ab-bdd8-f9639038a614 |
管理代理的条件访问策略、标识保护和查看审核日志需要与在 Microsoft Entra 中管理其他标识类型的这些功能相同的权限。 有关详细信息,请参阅每个功能的相应 API 文章。
有关通过 Microsoft Graph 和 Microsoft Entra 管理中心 列出的权限的详细信息,请参阅 Microsoft Graph 权限参考。
阻止代理的 Microsoft Graph 权限
代理标识使用与其他标识相同的 Microsoft Graph 权限模型。 因此,可以向其授予访问Microsoft Graph API 的委托权限或应用程序权限。
但是,由于代理的自主性及其构成的潜在风险,代理显式阻止以下高风险Microsoft图形 API权限,以防止对敏感数据进行误用或意外访问。 无法通过 Microsoft Graph 或 Microsoft Entra 管理中心 向代理标识授予这些权限。
图例:
- ❌ 指示在该类别中阻止了权限
- ➖ 指示权限在该类别中不适用/被阻止