Управление интеграцией с Active Directory

Получение статуса работы службы
GET /ad_backend/status

Ответ на успешный запрос:

{
    "msg": ["string"] (Список ошибок)
}

Возможные ошибки:

  • no_license - Лицензия отсутствует | License is not available

Ввод NGFW в домен
POST /ad_backend/domains

Json-тело запроса:

{
    "name": "string", 
    "computer_name": "string",
    "dns_ips": ["string"],
    "user": "string",
    "password": "string",
    "ldap_paths": ["string"]
}
  • "name" - имя домена;

  • "computer_name" -имя компьютера (NGFW) в домене;

  • "dns_ips" - список IP-адресов контроллеров домена;

  • "user" - имя пользователя, имеющего права на ввод компьютера в домен;

  • "password" - пароль пользователя user;

  • "ldap_paths" - список LDAP-путей, по которым будет происходит поиск групп безопасности. Максимум 10 путей, максимальная длина строки - 1024 символа. Если при интеграции передать пустой список, то поиск групп безопасности будет производиться по всему лесу доменов. Если указаны конкретные LDAP-пути, импорт прочих пользователей и групп безопасности будет невозможен.

Ответ: 200 OK

Получение списка присоединенных контроллеров домена
GET /ad_backend/domains

Ответ на успешный запрос:

[
    {
        "name": "string",  
        "computer_name": "string",
        "dns_ips": ["string"], 
        "ldap_paths": ["string"],
    },
    ...
]
Выполнение "переинтеграции" с AD
PUT /ad_backend/domains/<domain_name>

Json-тело запроса:

{
    "computer_name": "string",
    "user": "string",
    "password": "string",
    "ldap_paths": ["string"]
}

Ответ: 200 OK

Удаление интеграции с доменом
DELETE /ad_backend/domains/<domain_name>

Ответ: 200 OK

При выводе NGFW из домена удаляются все настройки интеграции с контроллером доменом, а так же все настройки синхронизируемых групп. При этом сами группы и пользователи в них становятся локальными.

Удаление созданного для NGFW компьютера в AD не производится.

Управление настройками службы

Получение настроек авторизации
GET /ad_backend/settings

Ответ на успешный запрос:

{
    "authorization_by_logs": boolean (Включена/выключена авторизация по логам AD)
}
Изменение настроек авторизации
PUT /ad_backend/settings

Json-тело запроса:

{
    "authorization_by_logs": boolean
}

Ответ: 200 OK

Получение информации об объектах контроллера домена

Получение списка групп безопасности в заданном домене
GET /ad_backend/domains/<domain_name>/security_groups

Ответ на успешный запрос:

[
    {
        "name": "string",
        "guid": "string"
    }
]
  • "name" - отображаемое имя группы безопасности;

  • "guid" - objectGUID группы безопасности.

Получение дерева OU в заданном домене
GET /ad_backend/domains/<domain_name>/tree

Ответ на успешный запрос:

[
    {
        "name": "string",
        "guid": "string",
        "parent_guid": "string" | null
    }
]
  • "name" - отображаемое имя группы;

  • "guid" - objectGUID группы;

  • "parent_guid" - objectGUID родительской группы.

Дерево представлено в виде линейного списка со всеми узлами. У каждого узла есть его guid и guid родителя.

Получение списка forward-зон контроллера домена
GET /ad_backend/forward_zones

Ответ на успешный запрос:

[
    {
        "id":  "string",
        "name": "string",
        "servers": ["string"],
        "enabled": true,
        "comment": "string"
    },
    ...
]
  • "id" - уникальное название зоны;

  • "name" - название зоны;

  • "servers" - список IP-адресов DNS-серверов;

  • "enabled" - включена/выключена зона;

  • "comment" - комментарий (может быть пустым).

Управление настройками синхронизации групп

Получение настройки синхронизации групп

OK

GET /ad_backend/group_settings

Ответ на успешный запрос:

[
  {
    "id": "int",
    "group_id": "int",
    "search_filter": "string",
    "object_guid": "string",
    "domain_name": "string",
    "sync_type": "ldap" | "security"
  },
  ...
]
  • "id" - ID записи синхронизации;

  • "group_id" - id группы NGFW;

  • "search_filter" - фильтр поиска в домене;

  • "object_guid" - objectGUID группы из AD, с которой выполняется синхронизация;

  • "domain_name" - имя домена, с которым выполняется синхронизация;

  • "sync_type" - "security", если группа синхронизируется с группой безопасности, "ldap" - если группа синхронизируется с OU.

Добавление настроек синхронизации группы с контроллером домена

Группа безопасности импортируется как плоский список пользователей без сохранения древовидной структуры AD. Синхронизация с OU сохраняет древовидную структуру пользователей.

Если группа была локальной, а после этого запроса - синхронизируемой, то все ее текущие потомки считаются импортированными из AD. Если в домене таких пользователей нет, то они при первой же синхронизации будут перемещены в корзину.

POST /ad_backend/group_settings

Json-тело запроса:

{
    "search_filter": "string",
    "object_guid": "string",
    "group_id": int,
    "domain_name": "string",
    "sync_type": "ldap" | "security"
  }

Ответ на успешный запрос:

{
    "id": "sync_record_id"
}
Изменение настроек синхронизации группы с контроллером домена

Группа безопасности импортируется как плоский список пользователей без сохранения древовидной структуры AD. Синхронизация с OU сохраняет древовидную структуру пользователей.

PUT /ad_backend/group_settings/<id записи синхронизации>

Json-тело запроса:

{
    "search_filter": "string",
    "object_guid": "string",
    "domain_name": "string",
    "group_id": int,
    "sync_type": "ldap" | "security"
  }

Ответ: 200 ОК

Отмена синхронизации группы с контроллером домена

После отмены синхронизации группы с доменом все ее потомки считаются локальными. Для авторизации таких пользователей нужно либо ставить тип авторизации "по IP", либо менять всем пароли.

DELETE /ad_backend/group_settings/<id группы NGFW>

Ответ: 200 ОК

Last updated