View a markdown version of this page

Schemaeinschränkungen - Amazon Grundgestein AgentCore

Schemaeinschränkungen

Richtlinien für Amazon Bedrock AgentCore Gateway müssen anhand eines bestimmten Cedar-Schemas validiert werden, das automatisch aus dem MCP-Tool-Manifest des Gateways generiert wird. Dieses Schema definiert, was in Ihren Richtlinien möglich ist.

Haupttypen

Der Prinzipaltyp hängt von der für Ihr AgentCore Gateway konfigurierten Authentifizierungsmethode ab:

AgentCore::OAuthUser
  • Wird für OAuth-authenticated Gateways verwendet

  • Hat ein id Attribut (aus dem JWT-Unteranspruch)

  • Unterstützt Tags für OAuth-Ansprüche (Benutzername, Bereich, Rolle usw.)

AgentCore::IamEntity
  • Wird für IAM-authenticated Gateways verwendet (AWS_IAM-Authorizer)

  • Hat ein id Attribut, das den IAM-ARN des Anrufers enthält

  • Unterstützt keine Tags. Verwenden Sie principal.id für die Zugriffskontrolle den Musterabgleich ein

Ressourcentyp

  • Muss AgentCore::Gateway sein.

  • Stellt die MCP Gateway-Instanz dar

  • Kann nach Typ (is) oder spezifischem ARN (==) abgeglichen werden

  • Muss bestimmte ARNs verwenden, um auf bestimmte Aktionen zu verweisen

Aktionen

  • Jedes MCP-Tool wird zu einer Aktion: AgentCore::Action::"ToolName"

  • Alle Werkzeugaktionen erben von der CallTool → MCP-Hierarchie

  • Beispiel: Action::"RefundTool___process_refund" ist ein CallTool

Kontext

  • Der einzige verfügbare Kontext ist context.input

  • Enthält die Eingabeparameter des Tools, wie sie im MCP-Manifest definiert sind

  • Jedes Tool hat eine typisierte Eingabestruktur (z. B. ___Process_RefundInput) RefundTool

  • Parametertypen werden automatisch vom JSON-Schema den Cedar-Typen zugeordnet:

    • Zeichenfolge → Zeichenfolge

    • Ganzzahl → Lang

    • boolean → Bool

    • Zahl → Dezimal

Was du nicht tun kannst

  • Auf Entitätstypen außerhalb des AgentCore Namespaces kann nicht verwiesen werden

  • Es kann nicht auf andere Kontextfelder zugegriffen werden als context.input (context.outputkann nur mit Leitplanken verwendet werden)

  • Benutzerdefinierte Attribute können nicht verwendet werden OAuthUser (verwenden Sie stattdessen Tags)

  • Es können keine neuen Entitätstypen in Richtlinien definiert werden