Управление приложением через REST API
Kaspersky Endpoint Security позволяет настраивать параметры приложения, запускать проверку и обновление антивирусных баз, а также выполнять другие задачи с помощью сторонних решений. Для этого Kaspersky Endpoint Security предоставляет API. Kaspersky Endpoint Security REST API работает по протоколу HTTP и представляет собой набор методов "запрос / ответ". То есть вы можете управлять Kaspersky Endpoint Security через стороннее решение, а не локальный интерфейс приложения или Консоль администрирования Kaspersky Security Center.
Для начала работы с REST API нужно установить Kaspersky Endpoint Security c поддержкой REST API. REST-клиент и Kaspersky Endpoint Security должны быть установлены на одном компьютере.
Для безопасной работы Kaspersky Endpoint Security c REST-клиентом выполните следующие требования:
- Настройте защиту REST-клиента от несанкционированного доступа в соответствии с рекомендациями производителя REST-клиента. Также настройте защиту папки с REST-клиентом от записи с помощью списка управления избирательным доступом (англ. Discretionary Access Control List – DACL).
- Для запуска REST-клиента используйте отдельную учетную запись с правами администратора. Запретите интерактивный вход в систему для этой учетной записи.
Управление приложением через REST API осуществляется по адресу http://127.0.0.1 или http://localhost. Удаленно управлять Kaspersky Endpoint Security через REST API невозможно.
Установка приложения с REST API
Для управления приложением через REST API нужно установить Kaspersky Endpoint Security c поддержкой REST API. Если вы управляете Kaspersky Endpoint Security через REST API, управлять приложением с помощью Kaspersky Security Center невозможно.
Подготовка к установке приложения с поддержкой REST API
Для безопасной работы Kaspersky Endpoint Security с REST-клиентом вам нужно настроить идентификацию запросов. Для этого вам нужно установить сертификат и в дальнейшем подписывать полезные данные каждого запроса.
Для создания сертификата вы можете использовать, например, OpenSSL.
Пример:
|
Используйте алгоритм шифрования RSA и размер ключа 2048 бит и более.
В результате вы получите сертификат cert.pem
и закрытый ключ key.pem
.
Установка приложения с поддержкой REST API
Чтобы установить Kaspersky Endpoint Security c поддержкой REST API, выполните следующие действия:
- Запустите интерпретатор командной строки cmd от имени администратора.
- Перейдите в папку, в которой расположен дистрибутив Kaspersky Endpoint Security версии 11.2.0 или выше.
- Установите Kaspersky Endpoint Security со следующими параметрами:
RESTAPI=1
RESTAPI_User=<Имя пользователя>
Имя пользователя для управления приложением через REST API. Введите имя пользователя в формате
<DOMAIN>\<UserName>
(например,RESTAPI_User=COMPANY\Administrator
). Вы можете управлять приложением через REST API только под этой учетной записью. Для работы с REST API вы можете выбрать только одного пользователя.RESTAPI_Port=<Порт>
Порт для обмена данными. Необязательный параметр. По умолчанию выбран порт 6782.
RESTAPI_Certificate=<Путь к сертификату>
Сертификат для идентификации запросов (например,
RESTAPI_Certificate=C:\cert.pem
).Вы можете установить сертификат после установки приложения или обновить сертификат после истечения срока действия.
Как установить сертификат для идентификации запросов REST API
AdminKitConnector=1
Управление приложением с помощью систем администрирования. По умолчанию управление разрешено.
Также вы можете задать параметры работы с REST API с помощью файла setup.ini.
Пример:
setup_kes.exe /pEULA=1 /pPRIVACYPOLICY=1 /pKSN=1 /pALLOWREBOOT=1 /pAdminKitConnector=1 /pRESTAPI=1 /pRESTAPI_User=COMPANY\Administrator /pRESTAPI_Certificate=C:\cert.pem /s
В результате вы сможете управлять приложением через REST API. Для проверки работы откройте документацию REST API с помощью GET-запроса.
Пример:
|
Если вы установили приложение с поддержкой REST API, Kaspersky Endpoint Security автоматически создает в параметрах Веб-Контроля разрешающее правило доступа к веб-ресурсам Служебное правило для REST API. Это правило нужно для обеспечения постоянного доступа REST-клиента к Kaspersky Endpoint Security. Например, если вы ограничили доступ пользователя к веб-ресурсам, это не повлияет на управление приложением через REST API. Мы рекомендуем не удалять правило и не изменять параметры правила Служебное правило для REST API. Если вы удалили правило, Kaspersky Endpoint Security восстановит правило после перезапуска приложения.
В началоРабота с API
Ограничить доступ к приложению через REST API с помощью Защиты паролем невозможно. Например, запретить выключать защиту через REST API невозможно. Вы можете настроить Защиту паролем через REST API и ограничить доступ пользователей к приложению через локальный интерфейс.
Для управления приложением через REST API нужно запустить REST-клиент под учетной записью, которую вы задали при установке приложения с поддержкой REST API. Для работы с REST API вы можете выбрать только одного пользователя.
Управление приложением через REST API состоит из следующих этапов:
- Получите текущие значения параметров приложения. Для этого отправьте GET-запрос.
Пример:
GET http://localhost:6782/kes/v1/settings/ExploitPrevention
- Приложение отправит ответ со структурой и значениями параметров. Kaspersky Endpoint Security поддерживает XML- и JSON-форматы.
Пример:
{
"action": 0,
"enableSystemProcessesMemoryProtection":
true,
"enabled": true
}
- Измените параметры приложения. Используйте структуру параметров, полученную в ответ от GET-запроса.
Пример:
{
"action": 0,
"enableSystemProcessesMemoryProtection":
false,
"enabled": true
}
- Сохраните параметры приложения (полезные данные) в JSON (payload.json).
- Подпишите JSON в формате PKCS7.
Пример:
$ openssl smime -sign -in
payload.json -signer cert.pem
-inkey key.pem -nodetach -binary -outform pem -out
signed_payload.pem
В результате вы получите подписанный файл с полезными данными запроса (
signed_payload.pem
). - Измените параметры приложения. Для этого отправьте POST-запрос c прикрепленным подписанным файлом с полезными данными запроса (
signed_payload.pem
).
Приложение применит изменения в параметрах и отправит ответ с результатами настройки приложения (ответ может быть пустым). Вы можете убедиться в том, что параметры изменены, с помощью GET-запроса.
В начало