AI Security Maturity Model·AWS v1.0.0

Arrastra para explorar · pellizca para ampliar

Fundacional Seguridad de la aplicación de IACapa de defensa en profundidad: Aplicación de IA Capacidad 1 · Inferencia de modelosCaso de uso: IA que responde 👤 ClienteModelo de Responsabilidad Compartida de AWS: quién implementa y opera este control. Cliente = es tuyo; AWS = lo opera AWS y tú lo heredas; Compartida = ambos tienen obligaciones.

c1.3 Filtra entradas y salidas con Amazon Bedrock Guardrails

Coloca un guardrail de Bedrock versionado frente al modelo para bloquear contenido dañino, temas denegados y patrones de prompt injection, y para redactar PII tanto en entradas como en salidas.

Fundacional
Mejorada
Avanzada
Esfuerzo: Bajo Impacto: Alto Scopes de IA generativaDe la AWS Generative AI Security Scoping Matrix.: 3 · Modelos preentrenados

Guía de implementación

Cómo implementarlo en AWS

Configura un guardrail con filtros de contenido, temas denegados y filtros de ataques de prompt ajustados a tu tolerancia al riesgo; habilita filtros de PII. Despliega un guardrail versionado e invócalo en cada llamada al modelo. Cifra el guardrail con una clave gestionada por el cliente.

Qué te aporta un guardrail

Amazon Bedrock Guardrails es una capa de políticas que colocas frente al modelo para que las reglas de seguridad y privacidad vivan fuera de tu prompt y fuera del código de tu aplicación. Un solo guardrail puede reutilizarse en varios modelos y aplicaciones, dándote una base de seguridad consistente y auditable. Aplica varios tipos de política a la vez:

  • Filtros de contenido — bloquean las categorías Odio, Insultos, Sexual, Violencia, Mala conducta y Ataque de prompt (inyección de prompt / jailbreak), con una intensidad ajustable por categoría.
  • Temas denegados — temas en lenguaje natural que tu aplicación debe rechazar (p. ej. "asesoría de inversión").
  • Filtros de palabras — palabras/frases de coincidencia exacta a bloquear (groserías, nombres de competidores).
  • Filtros de información sensible — detectan PII y bloquean la solicitud o la redactan de la respuesta.

Crea un guardrail versionado

Define las políticas una vez y crea un guardrail. El bloque de filtro de contenido siguiente activa la detección de ataque de prompt en las entradas y el filtrado de contenido dañino en ambos lados:

aws bedrock create-guardrail \
  --name "prod-genai-guardrail" \
  --description "Baseline safety + PII controls for the app" \
  --blocked-input-messaging "Your request was blocked by our safety policy." \
  --blocked-outputs-messaging "The response was blocked by our safety policy." \
  --content-policy-config '{
    "filtersConfig": [
      { "type": "PROMPT_ATTACK", "inputStrength": "HIGH", "outputStrength": "NONE" },
      { "type": "HATE",          "inputStrength": "HIGH", "outputStrength": "HIGH" },
      { "type": "VIOLENCE",      "inputStrength": "HIGH", "outputStrength": "HIGH" }
    ]
  }' \
  --sensitive-information-policy-config '{
    "piiEntitiesConfig": [
      { "type": "EMAIL",              "action": "ANONYMIZE" },
      { "type": "CREDIT_DEBIT_CARD_NUMBER", "action": "BLOCK" }
    ]
  }'
Nota: PROMPT_ATTACK solo admite inputStrength (es una detección del lado de entrada), por lo que su outputStrength debe ser NONE.

Fija una versión y aplícala

create-guardrail devuelve un guardrailId. Publica una versión inmutable con create-guardrail-version y luego referencia guardrailIdentifier + guardrailVersion en cada llamada, ya sea como parámetros de InvokeModel/Converse, o de forma independiente con la API ApplyGuardrail para filtrar texto antes incluso de invocar un modelo:

aws bedrock-runtime apply-guardrail \
  --guardrail-identifier "gr-0abc123456789def0" \
  --guardrail-version "1" \
  --source "INPUT" \
  --content '[{"text":{"text":"<user prompt to screen>"}}]'

Aplicar el guardrail antes de la invocación te permite rechazar un prompt malo sin pagar por una llamada al modelo.

Nota de nomenclatura: fija una guardrailVersion específica en producción en lugar del DRAFT mutable, para que un cambio de política sea un despliegue deliberado y revisable.

Cómo encaja todo

User prompt / response Bedrock Guardrail versioned policy layer INPUT checks prompt-attack · denied topics word filters OUTPUT checks harmful content · PII redaction contextual grounding Model Amazon Bedrock FM prompt → ← response Blocked input never reaches the model; blocked output never reaches the user.
El guardrail se sitúa entre el usuario y el modelo, revisando el prompt a la entrada (ataque de prompt, temas denegados, filtros de palabras) y la respuesta a la salida (contenido dañino, redacción de PII, fundamentación). La entrada bloqueada nunca llega al modelo; la salida bloqueada nunca llega al usuario.

Criterios de aceptación

Toda ruta de inferencia invoca un guardrail versionado; un prompt injection de prueba y una muestra de PII se bloquean/redactan; las métricas de activación del guardrail aparecen en CloudWatch.

Implementación práctica

Cómo se implementa este control en cada arquitectura de referencia:

Un guardrail versionado definido en la cuenta de IA generativa se aplica en cada llamada InvokeModel, para que ninguna ruta de inferencia evada los filtros de contenido, de ataques de prompt y de PII.

  1. En la cuenta de IA generativa, crea un guardrail con filtros de contenido, temas denegados, filtros de ataques de prompt y filtros de PII ajustados a tu tolerancia al riesgo, y publica una versión numerada.
    Cuenta de IA generativa Amazon Bedrock
  2. Pasa el guardrailIdentifier y el guardrailVersion en cada llamada InvokeModel/Converse desde la aplicación, y deniega (con una condición de IAM) las invocaciones que omitan el guardrail.
    Cuenta de IA generativa Amazon Bedrock IAM
  3. Cifra el guardrail con la clave gestionada por el cliente y emite métricas de activación del guardrail a CloudWatch para su monitoreo.
    Cuenta de IA generativa AWS KMS CloudWatch

Cómo validar: Una cadena de prompt injection de prueba y una muestra de PII se bloquean/redactan; CloudWatch muestra métricas de intervención del guardrail; una llamada InvokeModel sin guardrail es denegada.

Evita: Adjuntar el guardrail en la consola pero dejar que las llamadas directas por SDK/API lo salten. Aplica el guardrail en cada ruta, idealmente con una condición de IAM, no por convención.

OU de IA generativa (multi-cuenta) →

Un guardrail versionado en la cuenta se invoca en cada llamada al modelo desde la capa de IA generativa, con los filtros habilitados desde el primer día.

  1. Crea un guardrail con filtros de contenido, temas denegados, ataques de prompt y PII y publica una versión; trata el id de versión como un artefacto desplegable.
    Capa de IA generativa (rol IAM) Amazon Bedrock
  2. Cablea el id/versión del guardrail en las llamadas a Bedrock de la aplicación para que toda petición y respuesta pase por él; rechaza las rutas de código que llamen al modelo sin él.
    Capa de aplicación (rol IAM) Amazon Bedrock
  3. Cifra el guardrail con la clave gestionada por el cliente y envía métricas de intervención a CloudWatch.
    Registro en la cuenta AWS KMS CloudWatch

Cómo validar: Un injection sintético y una muestra de PII se bloquean/redactan; CloudWatch muestra métricas del guardrail; ninguna ruta de código de la app llama al modelo sin el guardrail.

Evita: Publicar la app primero y 'agregar guardrails después'. Habilita el guardrail desde el primer despliegue; incorporarlo tras el lanzamiento deja una ventana expuesta.

Cuenta única (punto de entrada) →

Amenazas que atiende

  • Prompt injection que incrusta instrucciones ocultas en la entrada del usuario.
  • Divulgación de datos sensibles a través de las respuestas del modelo.

Servicios AWS

Amazon Bedrock Guardrails

Precios

Los guardrails se facturan por el volumen de texto evaluado (por cada 1.000 unidades de texto) y por las políticas habilitadas; las comprobaciones de información sensible y de fundamentación contextual se cobran por separado. Consulta la página de precios de Amazon Bedrock para las tarifas actuales. Consulta Detect and filter harmful content by using Amazon Bedrock Guardrails.

Mapeos de frameworks

OWASP GenAI/LLM Top 10 (2026)

  • LLM01 Prompt Injection
  • LLM02 Sensitive Information Disclosure

NIST AI Risk Management Framework (AI 100-1)

  • MEASURE.2 AI systems are evaluated for trustworthy characteristics
  • MANAGE.1 AI risks are prioritized, responded to and managed

AWS Well-Architected Generative AI Lens (Security)

  • GENSEC02-BP01 Implement guardrails to mitigate harmful or incorrect model responses
  • GENSEC04-BP02 Sanitize and validate user inputs to foundation models

Recursos de aprendizaje

Referencias

  • AWS AI Security Framework — Capa de aplicación de IA