View a markdown version of this page

架构约束 - Amazon Bedrock AgentCore

架构约束

Amazon Bedrock AgentCore Gateway 的策略必须根据网关的 MCP 工具清单自动生成的特定 Cedar 架构进行验证。此架构定义了您的策略中可能包含的内容。

主要类型

主体类型取决于为 AgentCore 网关配置的身份验证方法:

AgentCore::OAuthUser
  • 用于 OAuth-authenticated 网关

  • id属性(来自 JWT 订阅声明)

  • 支持 OAuth 声明的标签(用户名、范围、角色等)

AgentCore::IamEntity
  • 用于 IAM-authenticated 网关(AWS_IAM 授权机构)

  • 具有包含来电者的 IAM ARN 的id属性

  • 不支持标签;使用模式匹配principal.id进行访问控制

资源类型

  • 必须是 AgentCore::Gateway

  • 代表 MCP 网关实例

  • 可以按类型 (is) 或特定的 ARN () 进行匹配 ==

  • 必须使用特定的 ARN 来指代特定的操作

操作

  • 每个 MCP 工具都变成一个动作:AgentCore::Action::"ToolName"

  • 所有工具操作都继承自 CallTool → Mcp 层次结构

  • 示例:Action::"RefundTool___process_refund"是一个 CallTool

上下文

  • 只有可用的上下文是 context.input

  • 包含 MCP 清单中定义的工具输入参数

  • 每个工具都有一个键入的输入结构(例如 RefundTool ___process_refunInput)

  • 参数类型会自动从 JSON 架构映射到 Cedar 类型:

    • 字符串 → 字符串

    • 整数 → 长整数

    • 布尔值 → 布尔

    • 数字 → 十进制

你不能做什么

  • 无法引用 AgentCore 命名空间之外的实体类型

  • 无法访问除之外的上下文字段context.inputcontext.output只能与护栏一起使用)

  • 无法在上使用自定义属性 OAuthUser (改用标签)

  • 无法在策略中定义新的实体类型