Amazon Bedrock AgentCore 推出时间策略,基于会话历史强化 AI 代理安全
AWS 在 Bedrock AgentCore 中引入时间策略(Temporal Policies),通过分析代理会话历史来执行状态化授权,防止数据伪造、控制财务风险并强制人工审批。本文详解其工作原理、应用场景,并探讨对国内开发者的影响与替代方案。
一句话看懂
AWS 在 Amazon Bedrock AgentCore 中推出时间策略(Temporal Policies),基于代理会话历史执行状态化授权,防止数据伪造、控制财务风险并强制人工审批。
详细发生了什么
传统访问控制把每个操作都当成独立事件来处理。但 AI 代理在运行时自己决定调用哪些工具、传什么参数、按什么顺序调用,所以孤立地检查每个请求很难发现风险。比如,代理可能先读了一个不可信的数据源,再执行一个单独看没什么问题的操作,实际上已经造成了危害。
AWS 在 Amazon Bedrock AgentCore 里加入了时间策略。这是一种状态化授权机制,通过分析代理的轨迹(trajectory)——也就是会话中按顺序排列的动作序列——来判断当前请求是否被允许。策略跑在 AgentCore Gateway 的外围,不在代理自己的代码里,所以代理没法拦截或者篡改它。
时间策略能应对不少场景:强制工具调用顺序,确保符合标准操作流程;要求当前调用的参数必须和之前某个工具的输出完全一致,防止代理在步骤之间瞎编或者替换数值;在破坏性或敏感操作之前要求人工审批;还有保证数据新鲜度,比如要求数据查询必须在某个时间窗口内完成。
技术实现上,时间策略是在现有策略引擎上扩展出来的,引入了轨迹的概念,用主体和会话 ID 来标识。策略默认拒绝,禁止优先于允许。每个请求都要带上 x-amzn-bedrock-agentcore-policy-session-id 这个头,会话 ID 和用户身份绑在一起形成唯一会话,轨迹回看窗口最长 24 小时。策略一改,现有会话就失效了,保证评估用的都是最新策略。
中文圈视角
对国内用户来说,AWS Bedrock 服务需要海外账号和网络环境,数据还可能涉及出境合规的问题。不过时间策略这个思路值得借鉴:国内云厂商像阿里云、腾讯云,在 AI 代理安全这块还缺少类似的状态化授权机制,这或许能成为差异化的竞争点。
用国产模型(比如 DeepSeek、Kimi)的开发者,可以自己搭网关来实现类似功能,比如在 API 层记录会话历史、写规则,但成本比较高。AWS 的托管服务把这事简化了,但国内用户得权衡合规风险。
另外,时间策略对金融、医疗这些强监管行业特别重要。国内企业在用 AI 代理的时候,可以参考这个思路来设计安全层,确保符合《数据安全法》等法规的要求。
几条值得记住的细节
- 时间策略在 AgentCore Gateway 运行,覆盖 MCP 工具调用、代理间调用和模型推理调用。
- 会话 ID 和用户身份绑定,不同身份就算用同一个会话 ID 也会被当成独立会话。
- 轨迹回看窗口是 24 小时,超过时限的事件会被自动删掉。
- 策略变更会让现有会话失效,确保评估用的都是最新策略。
- 示例场景:防止代理在调用
lookup_customer后伪造账号,再传给transfer_funds。
一句话总结
时间策略给 AI 代理安全提供了新思路,国内开发者可以借鉴这个理念,在自建系统里实现类似的状态化控制。