

# Commencer à utiliser les glissières de sécurité dans la CLI AgentCore
<a name="policy-guardrails-getting-started"></a>

Les barrières de sécurité vous permettent d'ajouter des politiques de filtrage de contenu à la passerelle de votre agent. Lorsqu'une demande correspond à une règle de politique (par exemple, un contenu violent), la passerelle la bloque avant qu'elle n'atteigne votre agent.

Ce guide explique comment configurer un garde-corps qui bloque le contenu violent sur une passerelle HTTP à l'aide de la CLI AgentCore . Pour des informations de référence sur les mesures de protection, les catégories, les effets et les seuils, voir les [garde-corps](policy-guardrails-in-policies.md) dans les politiques.

**Topics**
+ [Conditions préalables](#policy-guardrails-getting-started-prerequisites)
+ [Étape 1 : Créer un projet](#policy-guardrails-getting-started-create)
+ [Étape 2 : câbler le moteur, la passerelle et la cible](#policy-guardrails-getting-started-wire)
+ [Étape 3 : Déployez d'abord l'infrastructure](#policy-guardrails-getting-started-deploy-infra)
+ [Étape 4 : Ajouter la politique de garde-corps](#policy-guardrails-getting-started-add-policy)
+ [Étape 5 : Déployer les politiques](#policy-guardrails-getting-started-deploy-policy)
+ [Étape 6 : Invoquer via la passerelle](#policy-guardrails-getting-started-invoke)
+ [Catégories de garde-corps disponibles](#policy-guardrails-getting-started-categories)
+ [Effets des politiques](#policy-guardrails-getting-started-effects)
+ [Étape 7 : nettoyer](#policy-guardrails-getting-started-cleanup)

## Conditions préalables
<a name="policy-guardrails-getting-started-prerequisites"></a>

Avant de commencer, assurez-vous que vous disposez des éléments suivants :
+  ** AWS informations d'identification** configurées.
+  **Un environnement CDK amorcé**.

Installez la AgentCore CLI :

```
npm install -g @aws/agentcore
```

Vérifiez l’installation :

```
agentcore --version
```

## Étape 1 : Créer un projet
<a name="policy-guardrails-getting-started-create"></a>

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

cd MyAgent
```

## Étape 2 : câbler le moteur, la passerelle et la cible
<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
```

## Étape 3 : Déployez d'abord l'infrastructure
<a name="policy-guardrails-getting-started-deploy-infra"></a>

```
agentcore deploy
```

Cela permet de déployer le moteur d'exécution, la passerelle, la cible de passerelle et le moteur de politiques. La politique elle-même est ajoutée ensuite, car elle nécessite l'ARN de la passerelle déployée.

## Étape 4 : Ajouter la politique de garde-corps
<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
```

Cela génère une politique Cedar qui bloque les demandes contenant du contenu violent. Vous pouvez également utiliser l'assistant interactif :

```
agentcore add policy
```

### Étape 4b : Ajouter une politique permissive
<a name="policy-guardrails-getting-started-add-permissive"></a>

Étant donné qu'un moteur de politiques en mode ENFORCE refuse toutes les actions sauf autorisation explicite, ajoutez une politique permissive afin que les demandes bénignes puissent être transmises et atteindre votre agent :

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

## Étape 5 : Déployer les politiques
<a name="policy-guardrails-getting-started-deploy-policy"></a>

```
agentcore deploy
```

## Étape 6 : Invoquer via la passerelle
<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"
```

Résultat bloqué attendu (`forbid`\+`ACTIVE`) :

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

## Catégories de garde-corps disponibles
<a name="policy-guardrails-getting-started-categories"></a>


| Catégorie | Filtres | Description | 
| --- | --- | --- | 
|  `contentFilter`  |  `VIOLENCE`, `HATE`, `SEXUAL`, `MISCONDUCT`, `INSULTS`  | Filtres de sécurité du contenu | 
|  `promptAttack`  |  `JAILBREAK`, `PROMPT_INJECTION`, `PROMPT_LEAKAGE`  | Filtres de sécurité rapides | 
|  `sensitiveInformation`  |  `ADDRESS`,`EMAIL`,`PHONE`,`CREDIT_DEBIT_CARD_NUMBER`, et [plus](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-sensitive-filters.html)  | Détection des informations personnelles | 

## Effets des politiques
<a name="policy-guardrails-getting-started-effects"></a>


| Effet | Comportement | 
| --- | --- | 
|  `forbid`  | Bloquer les demandes qui dépassent le seuil de confiance | 
|  `permit`  | Autoriser uniquement les demandes inférieures au seuil | 
|  `suppressOutput`  | Bloquer la réponse du modèle (phase de sortie) lorsqu'elle dépasse le seuil | 

## Étape 7 : nettoyer
<a name="policy-guardrails-getting-started-cleanup"></a>

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