Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Introducción a las barandillas en la CLI AgentCore
Las barreras le permiten agregar políticas de filtrado de contenido a la puerta de enlace de su agente. Cuando una solicitud cumple con una regla de política (por ejemplo, contenido violento), la pasarela la bloquea antes de que llegue a tu agente.
En esta guía se explica cómo configurar una barrera de protección que bloquee el contenido violento en una puerta de enlace HTTP mediante la AgentCore CLI. Para obtener detalles de referencia sobre las protecciones, las categorías, los efectos y los umbrales de protección, consulte las barreras de protección en las políticas. Barreras en las políticas
Requisitos previos
Antes de empezar, asegúrate de tener lo siguiente:
-
AWS credenciales configuradas.
-
AgentCore CLI versión 0.20.0 o posterior. Las versiones anteriores no incluyen las opciones de formulario de política y modo de aplicación utilizadas en esta guía.
La AgentCore CLI comprueba la pila de arranque del CDK durante la implementación. Si se requiere el arranque, la implementación interactiva solicita una confirmación. agentcore deploy --yesUtilícelo para autorizarlo automáticamente.
Instale la AgentCore CLI:
npm install -g @aws/agentcore
Verificar la instalación:
agentcore --version
Paso 1: Crear un proyecto
agentcore create --name MyAgent --language Python --framework Strands \ --model-provider Bedrock --memory none cd MyAgent
Paso 2: Conectar el motor, la puerta de enlace y el objetivo
# 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
Paso 3: Implemente primero la infraestructura
agentcore deploy
Esto implementa el motor de ejecución, la puerta de enlace, el destino de la puerta de enlace y el motor de políticas. La política en sí se agrega a continuación, porque necesita el ARN de la puerta de enlace implementado.
Paso 4: Agregue la política de barandilla
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
Esto genera una política de Cedar que bloquea las solicitudes con contenido violento. También puedes usar el asistente interactivo:
agentcore add policy
Paso 4b: Añadir una política permisiva
Dado que un motor de políticas en modo ENFORCE deniega todas las acciones a menos que estén explícitamente permitidas, añada una política permisiva para que las solicitudes benignas puedan tramitarse y llegar a su agente:
agentcore add policy \ --name allowallBlockViolence \ --engine MyPolicyEngine \ --statement 'permit (principal, action, resource is AgentCore::Gateway);' \ --validation-mode IGNORE_ALL_FINDINGS \ --enforcement-mode ACTIVE
Paso 5: Implemente las políticas
agentcore deploy
Paso 6: Invoca a través de la puerta de enlace
# 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"
Resultado bloqueado esperado (forbid+ACTIVE):
403: "Request Denied: Agent runtime request not allowed due to policy enforcement [Policy evaluation denied due to blockviolence-xxxxx]"
Categorías de barandillas disponibles
| Categoría | Filtros | Description (Descripción) |
|---|---|---|
|
|
|
Filtros de seguridad de contenido |
|
|
|
Filtros de seguridad rápidos |
|
|
|
Detección de PII |
Efectos en las políticas
| Efecto | Comportamiento |
|---|---|
|
|
Bloquee las solicitudes que superen el umbral de confianza |
|
|
Permita solo las solicitudes que estén por debajo del umbral |
|
|
Bloquee la respuesta del modelo (fase de salida) cuando supere el umbral |
Paso 7: limpiar
agentcore remove all --json agentcore deploy