

# Erste Schritte mit Guardrails in der CLI AgentCore
<a name="policy-guardrails-getting-started"></a>

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.](policy-guardrails-in-policies.md)

**Topics**
+ [Voraussetzungen](#policy-guardrails-getting-started-prerequisites)
+ [Schritt 1: Erstellen eines Projekts](#policy-guardrails-getting-started-create)
+ [Schritt 2: Verdrahten Sie die Engine, das Gateway und das Ziel](#policy-guardrails-getting-started-wire)
+ [Schritt 3: Stellen Sie zuerst die Infrastruktur bereit](#policy-guardrails-getting-started-deploy-infra)
+ [Schritt 4: Fügen Sie die Guardrail-Richtlinie hinzu](#policy-guardrails-getting-started-add-policy)
+ [Schritt 5: Stellen Sie die Richtlinien bereit](#policy-guardrails-getting-started-deploy-policy)
+ [Schritt 6: Über das Gateway aufrufen](#policy-guardrails-getting-started-invoke)
+ [Verfügbare Leitplanken-Kategorien](#policy-guardrails-getting-started-categories)
+ [Politische Auswirkungen](#policy-guardrails-getting-started-effects)
+ [Schritt 7: Bereinigen](#policy-guardrails-getting-started-cleanup)

## Voraussetzungen
<a name="policy-guardrails-getting-started-prerequisites"></a>

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
<a name="policy-guardrails-getting-started-create"></a>

```
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
<a name="policy-guardrails-getting-started-wire"></a>

```
# 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
<a name="policy-guardrails-getting-started-deploy-infra"></a>

```
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
<a name="policy-guardrails-getting-started-add-policy"></a>

```
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
<a name="policy-guardrails-getting-started-add-permissive"></a>

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
<a name="policy-guardrails-getting-started-deploy-policy"></a>

```
agentcore deploy
```

## Schritt 6: Über das Gateway aufrufen
<a name="policy-guardrails-getting-started-invoke"></a>

```
# 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
<a name="policy-guardrails-getting-started-categories"></a>


| Kategorie | Filter | Description | 
| --- | --- | --- | 
|  `contentFilter`  |  `VIOLENCE`, `HATE`, `SEXUAL`, `MISCONDUCT`, `INSULTS`  | Sicherheitsfilter für Inhalte | 
|  `promptAttack`  |  `JAILBREAK`, `PROMPT_INJECTION`, `PROMPT_LEAKAGE`  | Sicherheitsfilter einholen | 
|  `sensitiveInformation`  |  `ADDRESS`, `EMAIL``PHONE`,`CREDIT_DEBIT_CARD_NUMBER`, und [mehr](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-sensitive-filters.html)  | PII-Erkennung | 

## Politische Auswirkungen
<a name="policy-guardrails-getting-started-effects"></a>


| 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
<a name="policy-guardrails-getting-started-cleanup"></a>

```
agentcore remove all --json
agentcore deploy
```