Настройка интеграции шлюза Kong AI с системой безопасности Cato AI

Prev Next

Эта статья предоставляет информацию о интеграции шлюза Kong AI с системой безопасности Cato AI для мониторинга и применения политики для собственных агентов.

Обзор.

Система безопасности Cato AI позволяет инспектировать и применять политику для AI-трафика, проходящего через ваш существующий шлюз Kong AI. Вместо настройки каждого приложения отдельно, вы подключаете шлюз к Cato Guard и применяете централизованный мониторинг и применение политики к шлюзовому трафику.

В этой статье объясняется, как настроить интеграцию шлюза Kong AI, карту собственных агентов и проверить применение политики в Interaction Explorer.

Предпосылки

Прежде чем начать, убедитесь, что выполнены следующие требования:

  • Лицензия AI безопасности для приложений
  • Администраторские разрешения для AI Security > Guards и AI Security > Guards Interaction Policy
  • Пользователи Kong аутентифицируются с помощью плагина аутентификации ключей Kong
  • Доступ для создания и применения конфигурации decK kong.yaml
  • Токен личного доступа и название самолета управления для Kong Konnect. Создайте токен на странице личных токенов доступа в Kong Konnect
  • Разрешение на развертывание плагина Kong AI Custom Guardrail
  • Тестируемое приложение или клиент, отправляющий трафик через Kong AI Gateway
  • Сетевой доступ от Kong к конечной точке API безопасности Cato AI для вашего региона CMA

Рабочий процесс конфигурации

Интеграция включает следующие этапы:

Этап Задача Результат
1 Создание охранника AI Gateway Cato создает охранника и предоставляет API ключи для Kong
2 Настройка Kong Kong отправляет AI трафик в Cato для проверки
3 Проверка трафика шлюза Cato показывает трафик от охранника в Исследователе взаимодействий
4 Карта внутренних агентов Cato приписывает трафик потребителя Kong внутреннему агенту

Создайте охранника AI Gateway

Создайте охранника AI Gateway, чтобы определить точку принуждения Cato для трафика Kong.

Чтобы создать охранника:

  1. Выберите из меню навигации AI безопасность > Защитники.
  2. Нажмите Новый.
  3. В поле Имя охранника введите имя для охранника. Например, Kong AI Gateway.
  4. В разделе Тип выберите AI Gateway.
  5. В разделе Тип интеграции AI Gateway выберите Kong.
  6. В разделе Хост охранника выберите Cato Cloud или передовой пост, подходящий для вашего развертывания.
  7. Нажмите Сохранить.

После сохранения охранника он будет готов принимать трафик от Kong. Охранник не начинает применять правила, пока вы не настроите правило политики.

Настройка Kong AI Gateway

Настройка плагина Kong AI Custom Guardrail с ключом API охранника. Плагин отправляет AI трафик в Cato для проверки и блокирует запросы, когда Cato возвращает действие блокировки.

Получение данных соединения охранника

Чтобы получить данные соединения охранника:

  1. Выберите из меню навигации AI безопасность > Защитники.
  2. Выберите охранника Kong AI Gateway.
  3. Перейдите на вкладку Развертывание.
  4. Скопировать один из Ключей API охранника.

У каждого охранника два ключа API. Используйте неиспользуемый ключ, когда вы поворачиваете учетные данные, чтобы избежать прерывания проверки трафика.

Настройка плагина Kong AI Custom Guardrail

Плагин использует следующие настройки:

Поле Описание
guarding_mode Определяет трафик, который Cato проверяет: INPUT, OUTPUT или BOTH
stop_on_error Когда true, Kong блокирует трафик, если не может достичь Cato. Установите в false, чтобы разрешить трафик, когда Cato недоступен.
api_key Аутентифицирует Kong в Cato Guard
api_base Базовый URL API безопасности AI Cato для вашего региона CMA

Cato проверяет только текст. Содержимое изображений не проверяется.

Чтобы настроить плагин:

  1. Сохраните следующую конфигурацию как 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. Замените <CATO_AI_SECURITY_API_BASE_URL> на базовый URL API безопасности AI Cato для вашего региона CMA.

  3. Установите учетные данные Kong Konnect и Cato в виде переменных среды:

    export KONNECT_TOKEN=<your-kong-konnect-personal-access-token>
    export DECK_KONNECT_TOKEN=$KONNECT_TOKEN
    export DECK_KONNECT_CONTROL_PLANE_NAME=<your-control-plane-name>
    export DECK_KONNECT_CONTROL_PLANE_REGION=<region>.api.konghq.com
    export DECK_CATO_API_KEY=<guard-api-key>
    
  4. Примените конфигурацию к контрольной плоскости Kong:

    deck gateway sync kong.yaml
    

Безопасно храните ключи API охранника. Используйте переменные среды или менеджер секретов и не фиксируйте ключ в управлении источником.

Поведение интеграции Kong

  • Со стороны ответа Kong раскрывает только текст ответа ассистента для пользовательского плагина Guardrail. Вызовы инструментов не раскрываются в реальном времени, поэтому Cato не может их проверить или заблокировать до выполнения. Cato получает их в последующих запросах для мониторинга.
  • Интеграция по умолчанию завершает с ошибкой. Когда Cato недоступен, Kong блокирует трафик. Установите stop_on_error в false, чтобы использовать поведение "открытого отказа", когда доступность важнее строгого выполнения.
  • Kong не поддерживает проверку серверных событий (SSE) с пользовательским плагином Guardrail. Когда потоки ответа LLM, Cato может проверять только сообщения пользователей и ответы инструментов.
  • Интеграция поддерживает формат API завершений чата OpenAI.

Проверка трафика шлюза в Cato

Используйте Исследователь взаимодействий, чтобы подтвердить, что трафик Kong достигает Cato.

Чтобы проверить трафик шлюза:

  1. Отправьте тестовый запрос от приложения через Kong AI Gateway.
  2. Выберите из меню навигации AI безопасность > Исследователь взаимодействий.
  3. В списке Охранник отфильтруйте по вашему охраннику Kong AI Gateway.
  4. Подтвердите, что тестовая сессия отображается в таблице.

Прежде чем привязать внутреннего агента, в колонке Внутренний агент отображается тире (-) для трафика. Это ожидается.

Привязывайте внутренних агентов к Охраннику

Свяжите каждого внутреннего агента с именем потребителя Kong, под которым он аутентифицируется. Cato использует эти сопоставления для атрибуции трафика Kong правильному внутреннему агенту.

Чтобы сопоставить внутреннего агента:

  1. В Kong идентифицируйте имя пользователя потребителя для внутреннего агента.
  2. Выберите из меню навигации AI безопасность > Защитники.
  3. Выберите охранника Kong AI Gateway.
  4. Перейдите на вкладку Конфигурация.
  5. В разделе Связанные внутренние агенты выберите внутреннего агента из списка Выберите внутреннего агента для привязки.
  6. В разделе Имя потребителя Kong введите имя пользователя потребителя из шага 1.
  7. Нажмите Сохранить.

Сопоставление появляется в таблице Связанные внутренние агенты. Чтобы удалить его, нажмите на значок удаления в его строке.

Проверка Атрибуции Агентов

Проверьте, что Cato приписывает трафик сопоставленного внутреннего агента.

Чтобы проверить атрибуцию агента:

  1. Отправьте тестовый запрос через Kong, используя сопоставленного потребителя.
  2. Выберите из меню навигации AI безопасность > Исследователь взаимодействий.
  3. Отфильтруйте вид по сопоставленному Внутреннему агенту.
  4. Подтвердите, что в колонке Внутренний агент отображается сопоставленный агент.

Когда сопоставление корректно, Исследователь взаимодействий показывает имя внутреннего агента вместо тире.