Configuración de una Integración de Kong AI Gateway con Cato AI Security

Prev Next

Este artículo proporciona información sobre cómo integrar el Kong AI Gateway con Cato AI Security para monitorear y hacer cumplir la Política de Implementación para sus Agentes Propios.

"Visión general"

Cato AI Security le permite inspeccionar y hacer cumplir la Política de Implementación para el Tráfico de AI que circula por su Kong AI Gateway existente. En lugar de configurar cada aplicación por separado, conecte la puerta de enlace a un Cato Guard y aplique la Politica de Implementación de manera centralizada al tráfico de la puerta de enlace.

Este artículo explica cómo configurar una integración de Kong AI Gateway, mapear Agentes Propios y validar la aplicación de políticas en Interaction Explorer.

"Requisitos previos"

Antes de comenzar, asegúrese de que se cumplan estos requisitos:

  • Licencia de Seguridad de AI para Aplicaciones
  • Permisos de administrador para Seguridad AI > Guardias y Seguridad AI> Política de Interacción de Guardias
  • Los consumidores de Kong se autentican con el plugin de Autenticación de Clave de Kong
  • Acceso para crear y aplicar una configuración de decK kong.yaml
  • Token de acceso personal Kong Konnect y nombre del plano de control. Cree el token desde la página de Tokens de Acceso Personal en Kong Konnect
  • Permiso para implementar el plugin Kong AI Custom Guardrail
  • Aplicación de prueba o cliente que envía tráfico a través de Kong AI Gateway
  • Acceso a la red de Kong al endpoint de la API de Seguridad de AI de Cato para su región CMA

Flujo de Trabajo de Configuración

La integración incluye estas etapas:

Etapa Tarea Resultado
1 Crear un Guardián de Puerta de Enlace de AI Cato crea el Guardián y proporciona claves API para Kong
2 Configurar Kong Kong envía tráfico de AI a Cato para inspección
3 Verificar tráfico de la puerta de enlace Cato muestra el tráfico desde el Guardián en el Interaction Explorer
4 Mapear Agentes Propios Cato atribuye el tráfico del consumidor de Kong a un Agente Propio

Crear el Guardián de Puerta de Enlace de AI

Cree un Guardián de Puerta de Enlace de AI para definir el punto de aplicación de Cato para el tráfico de Kong.

Para crear el Guardián:

  1. Desde el menú de navegación, selecciona Seguridad AI > Guardias.
  2. Haz clic en Nuevo.
  3. En Nombre del Guardián, ingrese un nombre para el Guardián. Por ejemplo, Kong AI Gateway.
  4. En Tipo, seleccione AI Gateway.
  5. En Tipo de Integración de AI Gateway, seleccione Kong.
  6. En Host del Guardián, seleccione Cato Cloud o el Outpost apropiado para su implementación.
  7. Haga clic en Guardar.

Después de guardar el Guardián, estará listo para recibir tráfico de Kong. El Guardián no aplica reglas hasta que configure una regla de Política de Implementación.

Configurar Kong AI Gateway

Configure el plugin Kong AI Custom Guardrail con la clave API del Guardián. El plugin envía tráfico de AI a Cato para inspección y bloquea las solicitudes cuando Cato devuelve una acción de bloqueo.

Recuperar los Detalles de Conexión del Guardián

Para recuperar los detalles de conexión del Guardián:

  1. Desde el menú de navegación, selecciona Seguridad AI > Guardias.
  2. Seleccione el Guardián de Puerta de Enlace de AI de Kong.
  3. Seleccione la pestaña Despliegue.
  4. Copie uno de los Guard API Keys.

Cada Guardián tiene dos claves API. Use la clave no utilizada cuando rote las credenciales para evitar interrumpir la inspección del tráfico.

Configurar el Plugin de Guardián Personalizado de Kong AI

El plugin utiliza las siguientes configuraciones:

Campo Descripción
guarding_mode Especifica el tráfico que Cato inspecciona: INPUT, OUTPUT o BOTH
stop_on_error Cuando es true, Kong bloquea el tráfico si no puede conectarse a Cato. Establecer en false para permitir el tráfico cuando Cato no esté disponible
api_key Autentica a Kong con el Guardián de Cato
api_base URL base de la API de Seguridad de AI de Cato para su región CMA

Cato inspecciona solo texto. El contenido de las imágenes no se inspecciona.

Para configurar el plugin:

  1. Guarde la siguiente configuración como kong.yaml.

    _format_version: "3.0"
    plugins:
    - name: ai-custom-guardrail
      config:
        guarding_mode: BOTH
        text_source: concatenate_all_content
        stop_on_error: true
        params:
          api_key: "${{ env \"DECK_CATO_API_KEY\" }}"
          api_base: "<CATO_AI_SECURITY_API_BASE_URL>"
        request:
          url: $(conf.params.api_base)/fw/v1/analyze
          headers:
            Authorization: Bearer $(conf.params.api_key)
            Content-Type: application/json
            x-cato-gateway-key-alias: "$(get_key_alias)"
          body:
            messages: "$(build_messages)"
        response:
          block: "$(check_response.block)"
          block_message: "$(check_response.block_message)"
        ssl_verify: true
        functions:
          get_key_alias: |
            return function()
              local c = kong.client.get_consumer()
              return (c and (c.username or c.id)) or ""
            end
          check_response: |
            return function(resp)
              local ra = resp and resp.required_action
              local block = type(ra) == "table" and ra.action_type == "block_action"
              local reason
              if block then
                reason = ra.detection_message or "Blocked by Cato Networks guardrail"
              else
                reason = "Allowed by Cato Networks guardrail"
              end
              return {
                block = block,
                block_message = reason,
              }
            end
          build_messages: |
            return function(content, source)
              if source == "OUTPUT" then
                return { { role = "assistant", content = content } }
              end
              local body = kong.request.get_body()
              if body and body.messages then
                return body.messages
              end
              return { { role = "user", content = content } }
            end
    
  2. Reemplace <CATO_AI_SECURITY_API_BASE_URL> con la URL base de la API de Seguridad de AI de Cato para su región CMA.

  3. Configure los credenciales de Kong Konnect y Cato como variables de entorno:

    export KONNECT_TOKEN=<su-token-de-acceso-personal-de-kong-konnect>
    export DECK_KONNECT_TOKEN=$KONNECT_TOKEN
    export DECK_KONNECT_CONTROL_PLANE_NAME=<su-nombre-de-plano-de-control>
    export DECK_KONNECT_CONTROL_PLANE_REGION=<region>.api.konghq.com
    export DECK_CATO_API_KEY=<clave-api-del-guardián>
    
  4. Aplique la configuración al plano de control de Kong:

    deck gateway sync kong.yaml
    

Almacene la clave API del Guardián de manera segura. Use variables de entorno o un gestor de secretos, y no cometa la clave en el control de fuentes.

Comportamiento de Integración de Kong

  • En el lado de la respuesta, Kong expone solo el texto de respuesta del asistente al plugin de Guardián Personalizado. Las llamadas a herramientas no se exponen en tiempo real, por lo que Cato no puede inspeccionarlas o bloquearlas antes de la ejecución. Cato las recibe en solicitudes posteriores para monitorización.
  • La integración falla cerrada por defecto. Cuando Cato es inaccesible, Kong bloquea el tráfico. Establezca stop_on_error en false para usar el comportamiento de fallo-abierto cuando la disponibilidad sea más importante que el cumplimiento estricto.
  • Kong no admite la inspección de Eventos Enviados por el Servidor (SSE) con el plugin de Guardián Personalizado. Cuando el flujo de respuesta de LLM ocurre, Cato puede inspeccionar solo mensajes de usuario y respuestas de herramientas.
  • La integración admite el formato OpenAI Chat Completions API.

Verificar Tráfico de la Puerta de Enlace en Cato

Use Interaction Explorer para confirmar que el tráfico de Kong llega a Cato.

Para verificar el tráfico de la puerta de enlace:

  1. Envíe un aviso de prueba desde una aplicación a través de Kong AI Gateway.
  2. Desde el menú de navegación, seleccione Seguridad AI > Interaction Explorer.
  3. Desde la lista Guardia, filtre por su Guardia de Kong AI Gateway.
  4. Confirme que la sesión de prueba aparece en la tabla.

Antes de mapear un Agente Propio, la columna Agente Propio muestra un guion (-) para el tráfico. Esto es esperado.

Mapear Agentes Propios al Guardián

Mapee cada Agente Propio al nombre del consumidor de Kong con el que se autentica. Cato utiliza estos mapeos para atribuir el tráfico de Kong al Agente Propio correcto.

Para mapear un Agente Propio:

  1. En Kong, identifique el nombre de usuario del consumidor para el Agente Propio.
  2. Desde el menú de navegación, selecciona Seguridad AI > Guardias.
  3. Seleccione el Guardián de Puerta de Enlace de AI de Kong.
  4. Seleccione la pestaña Configuración.
  5. Bajo Agentes Propios Mapeados, seleccione un Agente Propio de la lista Seleccione un Agente Propio para mapear.
  6. En nombre del consumidor de Kong, ingrese el nombre de usuario del consumidor del paso 1.
  7. Haga clic en Guardar.

El mapeo aparece en la tabla Agentes Propios Mapeados. Para eliminarlo, haga clic en el icono de eliminar en su fila.

Verificar Atribución de Agentes

Verifique que Cato atribuye el tráfico al Agente Propio mapeado.

Para verificar la atribución de agentes:

  1. Envíe una solicitud de prueba a través de Kong usando el consumidor mapeado.
  2. Desde el menú de navegación, seleccione Seguridad AI > Interaction Explorer.
  3. Filtre la vista por el Agente Propio mapeado.
  4. Confirme que la columna Agente Propio muestra el agente mapeado.

Cuando el mapeo es correcto, Interaction Explorer muestra el nombre del Agente Propio en lugar de un guion.