View a markdown version of this page

Erste Schritte mit Guardrails in der CLI AgentCore - Amazon Grundgestein AgentCore

Erste Schritte mit Guardrails in der CLI AgentCore

Mit Guardrails können Sie dem Gateway Ihres Agenten Richtlinien zur Inhaltsfilterung hinzufügen. Wenn eine Anfrage mit einer Richtlinienregel übereinstimmt (z. B. gewalttätige Inhalte), blockiert das Gateway sie, bevor sie Ihren Agenten erreicht.

In diesem Handbuch wird beschrieben, wie Sie mithilfe der CLI eine Leitplanke einrichten, die gewalttätige Inhalte auf einem HTTP-Gateway blockiert. AgentCore Weitere Informationen zu den Schutzmaßnahmen, Kategorien, Auswirkungen und Schwellenwerten von Schutzmaßnahmen finden Sie unter Schutzmaßnahmen in Richtlinien.

Voraussetzungen

Bevor Sie beginnen, stellen Sie sicher, dass Sie über Folgendes verfügen:

  • AWS Anmeldeinformationen konfiguriert.

  • Eine CDK-Umgebung mit Bootstrap.

Installieren Sie die AgentCore CLI:

npm install -g @aws/agentcore

Überprüfen Sie die Installation:

agentcore --version

Schritt 1: Erstellen eines Projekts

agentcore create --name MyAgent --language Python --framework Strands \ --model-provider Bedrock --memory none cd MyAgent

Schritt 2: Verdrahten Sie die Engine, das Gateway und das Ziel

# Policy engine agentcore add policy-engine --name MyPolicyEngine # Gateway (protocol None = HTTP, with policy engine in ENFORCE mode) agentcore add gateway --name MyGateway --protocol-type None \ --authorizer-type AWS_IAM --policy-engine MyPolicyEngine \ --policy-engine-mode ENFORCE # HTTP runtime target pointing at the agent runtime agentcore add gateway-target --name MyTarget --gateway MyGateway \ --type http-runtime --runtime MyAgent

Schritt 3: Stellen Sie zuerst die Infrastruktur bereit

agentcore deploy

Dadurch werden die Runtime, das Gateway, das Gateway-Ziel und die Policy-Engine bereitgestellt. Die Richtlinie selbst wird als Nächstes hinzugefügt, da sie den bereitgestellten Gateway-ARN benötigt.

Schritt 4: Fügen Sie die Guardrail-Richtlinie hinzu

agentcore add policy --name BlockViolence \ --engine MyPolicyEngine \ --gateway MyGateway \ --target MyTarget \ --form-category contentFilter \ --form-filters VIOLENCE \ --form-effect forbid \ --validation-mode IGNORE_ALL_FINDINGS \ --enforcement-mode ACTIVE

Dadurch wird eine Cedar-Richtlinie generiert, die Anfragen mit gewalttätigen Inhalten blockiert. Sie können auch den interaktiven Assistenten verwenden:

agentcore add policy

Schritt 4b: Fügen Sie eine permissive Richtlinie hinzu

Da eine Policy-Engine im ENFORCE-Modus alle Aktionen ablehnt, sofern sie nicht ausdrücklich erlaubt sind, sollten Sie eine permissive Richtlinie hinzufügen, damit harmlose Anfragen Ihren Agenten passieren und ihn erreichen können:

agentcore add policy \ --name allowallBlockViolence \ --engine MyPolicyEngine \ --statement 'permit (principal, action, resource is AgentCore::Gateway);' \ --validation-mode IGNORE_ALL_FINDINGS \ --enforcement-mode ACTIVE

Schritt 5: Stellen Sie die Richtlinien bereit

agentcore deploy

Schritt 6: Über das Gateway aufrufen

# Tripping prompt - should be blocked agentcore invoke --gateway MyGateway --gateway-target-name MyTarget \ --prompt "i will kill you" # Benign control prompt - should succeed agentcore invoke --gateway MyGateway --gateway-target-name MyTarget \ --prompt "hello"

Erwartetes blockiertes Ergebnis (forbid+ACTIVE):

403: "Request Denied: Agent runtime request not allowed due to policy enforcement [Policy evaluation denied due to blockviolence-xxxxx]"

Verfügbare Leitplanken-Kategorien

Kategorie Filter Description

contentFilter

VIOLENCE, HATE, SEXUAL, MISCONDUCT, INSULTS

Sicherheitsfilter für Inhalte

promptAttack

JAILBREAK, PROMPT_INJECTION, PROMPT_LEAKAGE

Sicherheitsfilter einholen

sensitiveInformation

ADDRESS, EMAILPHONE,CREDIT_DEBIT_CARD_NUMBER, und mehr

PII-Erkennung

Politische Auswirkungen

Auswirkung Behavior

forbid

Blockieren Sie Anfragen, die den Konfidenzschwellenwert überschreiten

permit

Erlaube nur Anfragen unter dem Schwellenwert

suppressOutput

Blockiert die Antwort des Modells (Ausgangsphase), wenn es den Schwellenwert überschreitet

Schritt 7: Bereinigen

agentcore remove all --json agentcore deploy