Microsoft Agent Governance Toolkit
概述
Agent Governance Toolkit(AGT) 是 Microsoft 推出的开源、MIT 许可运行时治理框架,可对自主 AI 智能体实施确定性策略管控。与基于提示词的安全方案不同,AGT 在中间件层拦截每一次工具调用、资源访问和智能体间消息,并在执行之前对其进行策略评估。该项目覆盖 OWASP Agentic Top 10 全部 10 项风险,并附带 10 份符合 RFC 2119 的正式规范,共包含 13,000+ 个测试用例。
核心组件
策略引擎
AGT 的核心是一个延迟极低(单条规则 p50 为 0.012 ms,每秒可处理 35,000 个并发操作)的确定性允许/拒绝策略求值器。支持三种策略语言:
| 语言 | 适用场景 |
|---|---|
| YAML | 简单的允许/拒绝规则;可读性强 |
| OPA/Rego | 复杂逻辑、基于属性的访问控制 |
| Cedar | 正式验证、合规场景 |
该引擎在设计上采用故障关闭(fail-closed)模式:任何求值错误均导致拒绝。据已报告的基准测试,策略违规的放行率为 0.00%——这是基于提示词的安全方案无法确定性实现的。
零信任身份(AgentMesh)
每个智能体均获得加密凭证,而非依赖环境信任:
- Ed25519 签名,适用于标准部署
- ML-DSA-65(后量子格基算法),适用于抗量子攻击环境
- 行为信任评分(0–1000 分制),检测到异常行为时自动衰减
- SPIFFE/SVID 兼容,可与现有服务网格身份系统集成
- 信任上限传播:被委托的智能体不得超过其父级的信任级别,从而防止通过调用链进行权限提升
执行沙箱隔离(Agent Hypervisor)
AGT 借鉴硬件特权环的设计,实现了四个隔离级别:
| 环级 | 名称 | 说明 |
|---|---|---|
| 0 | 内核(Kernel) | 仅限治理基础设施 |
| 1 | 主管(Supervisor) | 编排层 |
| 2 | 用户(User) | 标准智能体工作负载 |
| 3 | 不可信(Untrusted) | 外部/第三方智能体代码 |
多步骤工作流采用 Saga 编排模式并支持自动补偿——若某步骤执行失败或被拒绝,已执行的步骤将自动回滚。终止开关功能支持对整个智能体集群立即下线。
MCP 安全网关
专为 Model Context Protocol 工具集成提供安全防护:
- 工具投毒检测:标记描述中嵌有恶意指令的工具
- 描述漂移监控:当工具描述在两次调用之间发生变化时发出告警
- 仿冒名称检测(Typosquatting):捕获伪装成可信工具的工具名称
- 隐藏指令扫描:检测 MCP 工具元数据中不可见或混淆的指令
智能体 SRE(站点可靠性工程)
AGT 将 SRE 实践应用于自主智能体集群管理:
- 按智能体类型定义 SLO 与错误预算
- 熔断器:在级联故障蔓延之前终止失控智能体
- 回放调试:精确还原导致故障的完整事件序列
- 混沌工程钩子:支持在测试期间进行受控的故障注入
- OpenTelemetry 原生可观测性:治理事件以结构化链路追踪的形式输出
审计与合规
| 能力 | 说明 |
|---|---|
| 防篡改日志 | 基于 Merkle 链的审计轨迹,任何条目被篡改均可被检测 |
| 决策物料清单(BOM) | 可对任何治理决策进行完整的"物料清单"溯源重建 |
| 法规映射 | 自动生成 EU AI Act、SOC 2、HIPAA、GDPR 的合规证据 |
| SIEM 导出 | 支持以 CloudEvents 格式接入 Splunk、Sentinel、Datadog 等系统 |
OWASP Agentic Top 10 覆盖情况
AGT 将其控制措施明确映射至 OWASP Agentic 全部 10 项风险:
| OWASP 风险 | AGT 管控措施 |
|---|---|
| 智能体目标劫持 | 策略引擎阻止未授权的目标修改 |
| 能力过度授予 | 通过每个智能体的工具白名单实施最小权限 |
| 身份与权限滥用 | 零信任凭证与行为信任评分 |
| 不受控代码执行 | 执行环隔离与沙箱容器 |
| 不安全输出处理 | 对智能体输出的内容验证策略 |
| 记忆投毒 | 写操作时对情景记忆的完整性检查 |
| 不安全的智能体间通信 | 加密信道与信任门控的消息路由 |
| 级联故障 | 熔断器与全集群 SLO 强制执行 |
| 人与智能体信任缺失 | Merkle 链审计轨迹与飞行记录仪功能 |
| 流氓智能体 | 终止开关、3 环隔离与异常触发隔离 |
框架集成
AGT 为 20+ 个框架提供适配器,无需重写智能体代码即可接入治理能力:
- LangChain / LangGraph
- AutoGen
- CrewAI
- OpenAI Agents SDK
- Semantic Kernel
- Google ADK
- LlamaIndex
- Dify
多语言 SDK 支持 Python、TypeScript、.NET、Rust 和 Go。
一致性测试
AGT 的 992 个一致性测试映射至 10 份正式规范:
| 规范 | 测试数 |
|---|---|
| Agent OS 策略引擎 | 68 |
| AgentMesh 身份/信任 | 135 |
| Agent Hypervisor 执行 | 80 |
| MCP 安全网关 | 127 |
| 审计/合规 | 157 |
| 框架适配器契约 | 152 |
安全工具链包括 CodeQL(Python/TypeScript SAST)、Gitleaks(密钥扫描)、ClusterFuzzLite(7 个模糊测试目标)以及覆盖 13 个软件包生态系统的 Dependabot。
设计边界说明(Honest Design Boundaries)
AGT 在 Python 中间件层实施治理,而非在 OS 内核层。项目文档明确建议将智能体运行在独立容器中以实现操作系统级隔离。该工具包质量已达生产级别(v3.7.0,Microsoft 签名发布),但截至 2026 年仍处于公开预览阶段。
最佳实践
| 挑战 / 领域 | 说明 | 解决方案 / 建议 |
|---|---|---|
| 策略语言选择 | 初接触策略即代码的团队可能觉得 Rego 过于复杂 | 简单场景从 YAML 规则入手;需要正式验证时再迁移至 Cedar |
| 故障关闭与故障开放 | 策略求值出错可能导致智能体意外中断 | 接受故障关闭行为;上线前使用一致性测试套件构建并充分测试策略规则集 |
| 信任评分衰减 | 异常检测会降低信任评分,但不说明原因 | 通过 OpenTelemetry 链路追踪对信任评分变化进行埋点;对信任评分阈值配置 SLO 告警 |
| Saga 补偿 | 自动回滚可能导致外部系统遗留部分状态 | 使用混沌工程钩子测试补偿路径;将外部操作设计为幂等操作 |
| MCP 工具描述漂移 | 描述漂移监控可能误报合法的工具更新 | 在策略中锁定工具版本;在将 MCP 工具更新推广前先在预发布环境中验证 |
| 量子安全迁移 | ML-DSA-65 比 Ed25519 消耗更多 CPU 资源 | 仅对高保障智能体选择性启用量子安全模式;在全集群推广前先进行开销基准测试 |
参见
- Security Frameworks 概述
- NIST AI RMF
- Google SAIF
- 智能体安全(生产环境最佳实践)
- MCP 标准
- Microsoft — 智能体 AI 概述
- AI 治理解决方案
- 多智能体系统架构
- 智能体可观测性
参考资料
- agent-governance-toolkit (GitHub) — Microsoft 开源的运行时治理框架,MIT 许可,截至 2026 年处于公开预览阶段