Общие сведения по работе с API
Обращение к Termidesk Connect осуществляется через IP-адрес и порт управления, которые задаются при первоначальной настройке по HTTPS-протоколу (см. подраздел Первоначальная настройка Termidesk Connect документа СЛЕТ.10101-01 90 01 «Руководство администратора. Установка Termidesk Connect»).
Пример команд:
set system mgmt ip 192.0.2.5
set system mgmt webui-port 443
Аутентификация и авторизация осуществляется одним из способов:
-
через пользователей, настроенных в Termidesk Connect;
-
с помощью внешних серверов аутентификации и авторизации (аналогично CLI или WUI).
Ролевая модель управления доступом распроcтраняется и на API-интерфейс. Для взаимодействия с API используется путь обращения: https://<IP_управления>/xtern/data/….
Обмен данными осуществляется в формате JSON. Для формирования корректного JSON, YANG-файл должен содержать:
-
модуль с определением префикса;
-
структуру (
containerилиlist) для группировки данных; -
leafс конкретными типами; -
ключи списков (если есть
list), которые будут идентифицировать элементы массива.
Базовые соответствия типов:
-
container–JSON-объект{ }; -
list–JSON-массив[ ]; -
leaf–JSON-скаляр (string,number,boolean,null); -
leaf-list–JSON-массив скаляров.
Запрос должен содержать:
-
заголовок
Authorizationс строкойbase64, содержащей имя пользователя и пароль; -
заголовок
Content-Typeсо значениемapplication/yang-data+jsonилиapplication/json.
Типы HTTP-запросов представлены в таблице (см. Типы HTTP-запросов).
| Тип запроса | Назначение |
|---|---|
|
Удаление конфигурации |
|
Получение данных (только чтение данных) |
|
Добавление конфигурации |
|
Обновление конфигурации |
Рассмотрим примеры запросов:
-
команда
curl:
curl -vvk -H "Authorization: Basic dGRhZG1pbjp0ZGFkbWluCg==" -H "Content-Type: application/json" https://192.0.2.5/xtern/data/termidesk-monitors:health-check
-
сервис Postman (см. Postman).