En Dogwood, la decisión de una política depende del historial de las acciones de un agente dentro de una sesión, no solo de la solicitud actual . El motor de políticas mantiene un registro de las llamadas a herramientas anteriores y sus respuestas, y luego evalúa la solicitud actual en función de ese historial antes de permitir o denegar la llamada
.
Dogwood extiende el lenguaje de políticas Cedar (el lenguaje de autorización existente de AWS de 2023) añadiendo un bloque temporal con condiciones que tienen en cuenta la sesión . Los operadores temporales clave incluyen:
| Operador | Propósito |
|---|---|
formerly | Comprueba si una condición fue verdadera en algún punto anterior de la sesión |
count_within | Cuenta cuántas veces ocurrió una condición dentro de una ventana de tiempo especificada |
count_distinct_within | Cuenta los valores distintos de un campo que aparecieron dentro de una ventana de tiempo |
sum_within | Suma un campo numérico sobre eventos dentro de una ventana de tiempo |
since | Comprueba una condición en relación con la última ocurrencia de un evento |
once | Comprueba si una condición ocurrió alguna vez |
Estos operadores permiten que una política defina reglas como 'prohibir una acción de pago a menos que una acción de factura haya ocurrido formerly', o 'prohibir si sum_within(amount, 1h). Una política temporal se escribe como una regla Cedar estándar
permit o forbid, pero con condiciones colocadas dentro de un bloque temporal { ... }.
Las políticas temporales se aplican en la capa de puerta de enlace de AgentCore Gateway, fuera del código del propio agente . La puerta de enlace intercepta cada llamada a una herramienta en tiempo real antes de que llegue a la herramienta de destino, evalúa la política contra el historial completo de eventos de la sesión y luego permite o deniega la llamada
.
Debido a que la decisión de autorización ocurre en el perímetro, en una infraestructura que el agente no puede modificar, no se puede eludir mediante manipulación de indicaciones, jailbreaking o cualquier código que el agente controle . AWS declara explícitamente que las políticas se ejecutan en el 'perímetro de AgentCore Gateway, fuera del código del propio agente', lo que las hace resistentes a que el agente reescriba sus propias instrucciones
. El motor de políticas admite dos modos: LOG_ONLY (auditoría sin bloqueo) y ENFORCE (denegación activa)
.
Dogwood se ha integrado en Amazon Bedrock AgentCore como políticas temporales, anunciado junto con la limitación de tasa en la puerta de enlace el 6 de agosto de 2026 .
Funcionalidades actualmente disponibles en Bedrock AgentCore:
sum_within El lenguaje Dogwood y su implementación de referencia están disponibles en GitHub bajo Apache 2.0, de forma independiente al servicio gestionado Bedrock AgentCore .