Kaspersky Scan Engine и режим HTTP

05 марта 2024

ID 184921

Протокол HTTP является стандартным протоколом для передачи данных в архитектуре "клиент-сервер". В режиме HTTP решение Kaspersky Scan Engine выступает как REST-подобная служба, которая получает от клиентов HTTP-запросы в формате JSON. Служба сканирует объекты, переданные в этих запросах, и отправляет обратно HTTP-ответы с результатами сканирования в формате JSON или простого текста.

Кроме того, пакет распространения Kaspersky Scan Engine включает в себя пример HTTP-клиента и его исходный код. Этот пример HTTP-клиента демонстрирует, как делать запросы в Kaspersky Scan Engine в режиме HTTP. Вы также можете использовать скомпилированный пример для сканирования файлов из командной строки.

Способы передачи данных

Поддерживаются два способа передачи данных между клиентами и Kaspersky Scan Engine:

  • TCP-соединение
  • UNIX-сокет

    Только для систем Linux.

Режимы сканирования

Kaspersky Scan Engine поддерживает следующие режимы сканирования:

  • scanfile

    В этом режиме пример HTTP-клиента передает пути к файлам в Kaspersky Scan Engine, который читает файлы и проверяет их.

  • scanmemory

    В этом режиме пример HTTP-клиента передает содержимое файла в Kaspersky Scan Engine, который проверяет содержимое. Максимальный размер объекта, отправляемого на сканирование в режиме сканирования памяти, ограничен системной памятью компьютера.

  • checkurl

    В этом режиме пример HTTP-клиента передает URL-адреса в Kaspersky Scan Engine, который проверяет их на наличие вредоносных и фишинговых адресов.

Вы можете сканировать файлы и URL-адреса, отправляя HTTP-запросы по протоколу KAV версии 3 или протоколу KAV версии 1 и 2.

Авторизация по токену API

Kaspersky Scan Engine поддерживает авторизацию по токену API.

Если авторизация по токену API включена, HTTP-клиенты должны указывать токен API в заголовке запроса при отправке запросов в Kaspersky Scan Engine. Это поле заголовка запроса, используемое для отправки токена API, имеет пользовательское имя. Администратор Kaspersky Scan Engine может указать это имя в разделе Authorization Kaspersky Scan Engine GUI. Имя по умолчанию – Authorization.

Если вы включили авторизацию по токену API и служба kavhttpd не запущена, запуск klScanEngineUI также инициирует запуск службы kavhttpd.

Обычная процедура создания и использования токена API следующая:

  1. Администратор Kaspersky Scan Engine создает токен в разделе Authorization Kaspersky Scan Engine GUI.
  2. Администратор Kaspersky Scan Engine предоставляет токен пользователям, которые могут использовать его для доступа к службе kavhttpd.
  3. При выполнении HTTP-запросов HTTP-клиент отправляет токен в качестве значения поля авторизации в заголовке запроса. Название поля авторизации в заголовке запроса должно совпадать с именем, указанным в параметрах Kaspersky Scan Engine (см. описание элемента Authorization header field в разделе Authorization).
  4. В случае успешной авторизации Kaspersky Scan Engine предоставляет доступ к своим функциям.

Чтобы попробовать авторизацию по токену API и понять, как это работает, вы можете использовать HTTP-клиент, поставляемый с Kaspersky Scan Engine: настройте Kaspersky Scan Engine для авторизации запросов, создайте токен API, а затем используйте HTTP-клиент для отправки запроса, содержащего токен. Вы можете найти примеры таких запросов, отправленных по протоколу KAV версии 1 или 2 и версии 3.

По соображениям безопасности требуется HTTPS-соединение для отправки запросов, требующих авторизации.

Постоянные соединения Keep-Alive

По умолчанию Kaspersky Scan Engine поддерживает постоянные соединения Keep-Alive, поэтому он может обрабатывать несколько объектов один за другим, используя одно и то же соединение.

Чтобы открыть постоянное соединение Keep-Alive, HTTP-клиент должен добавить к запросу следующий заголовок:

Connection: Keep-Alive

Чтобы открыть соединение Keep-Alive, HTTP-клиент должен добавить к запросу следующий заголовок:

Connection: close

Вам помогла эта статья?
Что нам нужно улучшить?
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!