View a markdown version of this page

Regeln zu einem Gateway hinzufügen - Amazon Grundgestein AgentCore

Regeln zu einem Gateway hinzufügen

Mit Gateway-Regeln können Sie das Routing des Datenverkehrs steuern und Zielkonfigurationen auf Ihrem Gateway außer Kraft setzen, ohne Ziele erneut bereitstellen zu müssen. Sie erstellen Konfigurationspakete, die das Verhalten eines Ziels außer Kraft setzen, und steuern dann mithilfe von Regeln, welche Bundle-Version für welchen Traffic gilt. Regeln unterstützen auch das Routing von Anfragen an verschiedene Ziele, basierend auf dem Anforderungspfad oder der Identität des Anrufers.

Verwenden Sie Gateway-Regeln, um die folgenden Ziele zu erreichen:

  • Experimentieren Sie mit den Versionen der Konfigurationspakete im Rahmen von A/B Tests

  • Binden Sie bestimmte Prinzipale zum Debuggen an eine Version des Konfigurationspakets

  • Leiten Sie den Verkehr auf der Grundlage des Anforderungspfads oder der Identität des Anrufers an bestimmte Ziele weiter

  • Legen Sie ein Standardkonfigurationspaket oder ein Standardziel für den gesamten Datenverkehr fest

Wie funktionieren Gateway-Regeln

Jede Gateway-Regel enthält die folgenden Komponenten:

Komponente Description

Priorität

Eine Ganzzahl von 1 bis 1.000.000. Niedrigere Zahlen bedeuten eine höhere Priorität. Jeder Prioritätswert muss innerhalb eines Gateways eindeutig sein.

Conditions (optional)

Kriterien, die bestimmen, ob die Regel einer Anfrage entspricht. Eine Regel ohne Bedingungen dient als Sammelbegriff für den gesamten Verkehr.

Aktionen (erforderlich)

Die Aktion, die ausgeführt werden soll, wenn die Regel zutrifft. Sie können Konfigurationspakete überschreiben, an bestimmte Ziele weiterleiten oder beides.

Description (optional)

Eine Textbeschreibung des Zwecks der Regel.

Auflösung der Regel

Das Gateway bewertet Regeln in aufsteigender Prioritätsreihenfolge (niedrigere Zahlen zuerst). Das Gateway löst jeden Aktionstyp unabhängig unter Verwendung der First-Match-Semantik auf.

Die folgende Tabelle zeigt, wie das Gateway Regeln für eine Beispielanforderung auflöst. In diesem Beispiel sendet die QA-Rolle eine Anfrage an/my-target-canary/chat.

Priorität Bedingungen Aktionen Entspricht der Anfrage? Ergebnis

100

Eine Rolle

configurationBundle: Bundle-Version A

Ja

Löst sich configurationBundle in Version A auf

200

Pfad /my-target-canary/*

routeToTarget: my-target-canary

Ja

Entschließt sich zu routeToTarget my-target-canary

1000000

Keine (Sammelsurkunde)

configurationBundle: Bündelversion B,: routeToTarget my-target-primary

Ja

Beide Aktionstypen wurden bereits gelöst. Übersprungen.

Endergebnis: Die Anfrage verwendet Bundle-Version A und leitet weiter zumy-target-canary.

Tipp

Lassen Sie Lücken zwischen den Prioritätsnummern (z. B. 100, 200, 300), sodass Sie Regeln später einfügen können, ohne bestehende Regeln neu zu nummerieren.

Bedingungen

Die Bedingungen bestimmen, welchen Anforderungen eine Regel entspricht. Eine Regel kann maximal 2 Bedingungen haben. Eine Regel ohne Bedingungen entspricht dem gesamten Traffic.

Das Gateway unterstützt die folgenden Bedingungstypen:

MatchPrincipals

Findet Anfragen, die auf dem IAM-Principal des Anrufers basieren. Die anyOf Liste enthält 1 bis 100 Einträge. Jeder Eintrag spezifiziert eine iamPrincipal mit den folgenden Feldern:

  • arn— Der passende IAM-Prinzipal-ARN.

  • operator(optional) — Der Vergleichsoperator. Gültige Werte sind StringEquals (Standard) und StringLike. Wird StringLike für den Platzhalterabgleich verwendet.

MatchPaths

Ordnet Anfragen basierend auf dem Anforderungspfad zu. Die anyOf Liste enthält 1 bis 10 Einträge. Jeder Eintrag muss das Format verwenden/<targetName>/*, das dem Namen eines vorhandenen HTTP-Ziels auf dem Gateway <targetName> entspricht. Das Ziel muss sich im Ready Status befinden. Die matchPaths Bedingung wird nur für Gateways mit HTTP-Zielen unterstützt. Die folgenden Präfixe für reservierte Pfade sind nicht zulässig:/mcp,,/a2a,/responses,/converse. /.well-known

Logik zur Zustandsbewertung

  • Innerhalb eines Bedingungstyps: Das Gateway verwendet die OR-Logik. Eine Anfrage stimmt überein, wenn sie einen Eintrag in der anyOf Liste erfüllt.

  • Für alle Bedingungstypen: Das Gateway verwendet die UND-Logik. Wenn eine Regel matchPrincipals sowohl als auch enthältmatchPaths, muss die Anforderung mindestens einem Eintrag aus jedem Bedingungstyp entsprechen.

Aktionen

Aktionen definieren, was das Gateway tut, wenn eine Regel zutrifft. Eine Regel kann maximal 2 Aktionen haben.

Das Gateway unterstützt die folgenden Aktionstypen:

Das Konfigurationspaket überschreibt () configurationBundle

Überschreibt das Konfigurationspaket, das auf den entsprechenden Datenverkehr angewendet wird.

  • staticOverride— Verbindet den gesamten passenden Datenverkehr mit einer bestimmten Version des Konfigurationspakets. Geben Sie den Bundle-ARN und die Versions-ID an.

  • weightedOverride— Teilt den Verkehr zwischen zwei Versionen des Konfigurationspakets auf. Die trafficSplit Liste muss genau 2 Einträge mit Gewichtungen enthalten, deren Summe 100 ergibt. Das Konfigurationspaket muss sich in demselben Konto wie das Gateway befinden.

Ziel-Routing (routeToTarget)

Routen, die den Verkehr einem bestimmten Ziel zuordnen. Das Ziel muss das HTTP-Protokoll verwenden und sich im Ready Status befinden.

  • staticRoute— Leitet den gesamten übereinstimmenden Verkehr namentlich an ein bestimmtes Ziel weiter.

  • weightedRoute— Teilt den Verkehr auf zwei Ziele auf. Die trafficSplit Liste muss genau 2 Einträge mit Gewichtungen enthalten, deren Summe 100 ergibt. Die Namen der Einträge in Traffic Split müssen eindeutig sein.

Einschränkungen

In der folgenden Tabelle sind die Grenzwerte für Gateway-Regeln aufgeführt.

Ressource Limit

Regeln pro Gateway

20

Prioritätsbereich

1 bis 1.000.000

Maximale Bedingungen pro Regel

2

Maximale Anzahl von Aktionen pro Regel

2

matchPrincipals.anyOfmaximale Anzahl an Einträgen

100

matchPaths.anyOfmaximale Anzahl an Einträgen

10

trafficSplitEinträge

Genau 2

trafficSplitGewichtsbereich

1 bis 99

Themen