Общие сведения по работе с 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), которые будут идентифицировать элементы массива.

Базовые соответствия типов:

  • containerJSON-объект { };

  • listJSON-массив [ ];

  • leafJSON-скаляр (string, number, boolean, null);

  • leaf-listJSON-массив скаляров.

Запрос должен содержать:

  • заголовок Authorization с строкой base64, содержащей имя пользователя и пароль;

  • заголовок Content-Type со значением application/yang-data+json или application/json.

Типы HTTP-запросов представлены в таблице (см. Типы HTTP-запросов).

Таблица 1. Типы HTTP-запросов
Тип запроса Назначение

DELETE

Удаление конфигурации

GET

Получение данных (только чтение данных)

POST

Добавление конфигурации

PUT

Обновление конфигурации

Рассмотрим примеры запросов:

  • команда 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).

image
Рисунок 1. Postman