Импорт данных о связи пользователей и устройств из CSV-файла

Модуль инвентаризации позволяет импортировать в БД LCM информацию о связи пользователей и устройств посредством загрузки данных из CSV-файла через пользовательский интерфейс администратора (см. документ «Руководство администратора»). CSV-файл должен быть определенного формата: содержать 3 столбца и в качестве разделителя использовать точку с запятой (;):

<operation>;<user_name>@<user_domain>;<fqdn>

Где:

  1. Параметр первого столбца operation должен содержать одну из следующих команд (перечислены в порядке приоритета выполнения):

    1. R — (от англ.: remove) удалить связь между пользователем и устройством.

    2. RA — (от англ.: remove all) удалить все связи, существующие по указанному пользователю/устройству. Требуется заполнить или логин@домен пользователя, или полное доменное имя машины.

    3. A — (от англ.: add) создать или обновить связь между пользователем и устройством.

  2. Параметр второго столбца user_name должен содержать логин пользователя в указанном домене. Например, aspushkin или fmdostoevskiy.

  3. Параметр второго столбца user_domain должен содержать домен пользователя и соответствовать полному имени домена пользователя, выгруженному с сервера LDAP. Например, inno.tech или saratov.vtb.ru.

  4. Парамер третьего столбца fqdn должен содержать полное доменное имя АРМ, выгруженного из SaltStack, например: kassa256.vtb.ru.

При создании CSV-файла важно учитывать регистр имен устройств. Например, Laptop1.sochi.vtb.ru и LAPTOP1.sochi.vtb.ru будут интерпретированы по-разному. Полное имя устройства должно абсолютно совпадать с реальным именем.

Пример заполнения файла CSV:

A;username1@domain.name;notebook1.domain.name
A;username1@domain.name;notebook2.domain.name
A;username2@domain.name;notebook1.domain.name
RA;username1@domain.name;
RA;username2@domain.name;
RA;;notebook1.domain.name
R;username2@domain.name;notebook2.domain.name

Строки, не соответствующие описанному формату записи, будут проигнорированы.

Записи в файле обрабатываются пакетами (батчами) по очереди и последовательно с группировкой по типу операции. Записи группируются по типам в следующем порядке:

  1. Удаление конкретного пользователя с конкретного АРМ.

  2. Удаление связок по идентификатору пользователя.

  3. Удаление связок по идентификатору АРМ.

  4. Добавление связок.

После завершения импорта список проигнорированных строк и количество успешно загруженных будут возвращены на пользовательский интерфейс администратора.