Получение списка пользователей с лицензиями
Информация
Скрипт для получения списка пользователей вы можете скачать по этой ссылке.
Предварительные требования
- Установленный модуль Active Directory для PowerShell в Windows Server.
- Работоспособный сервер Indeed AM.
- Пользователь, от имени которого будет запускаться скрипт, должен обладать минимальными глобальными правами Инспектор в системе Indeed AM.
Как работает скрипт
Скрипт формирует таблицу формата CSV со следующими столбцами:
- <UserName>,
- <true>,
- <false>,
где true\false — это столбцы с соответствующим названием лицензии.
Массив лицензий, наличие которых проверяется у пользователя, — это список всех зарегистрированных лицензий.
Работа скрипта состоит из нескольких этапов:
- Формируется массив загруженных в систему лицензий с помощью метода
/license/getAllLicenses. - С помощью метода
/api/v6/policy/getзапрашивается информация о политике. - Из свойства области действия запрашивается информация по настроенным
объектам с помощью метода
/api/v6/userCatalog/getObjects. - Из полученных объектов запрашиваются пользователи:
- С помощью командлета PowersShell
Get-ADGroupв функцииgetUsersCNфайла Base/AdditionalFunctions/GetUsers.ps1 для группы Active Directory. - С помощью командлета PowersShell
Get-ADUserв функцииgetUsersOUфайла Base/AdditionalFunctions/GetUsers.ps1 для подразделения Active Directory.
- С помощью командлета PowersShell
- С помощью метода
license/getCatalogObjectLicensesзапрашивается наличие лицензий пользователя и сопоставляется с общим массивом лицензий. - С помощью функции
addDataToCSVфайла Base/AdditionalFunctions/CsvReport.ps1 собирается таблица в формате CSV.
Настройка
Для работы скрипта необходимо сконфигурировать файл Config.ps1, который находится в корне папки со скриптом.
В файле:
$serverUrl— URL сервера Indeed AM. Обязательный параметр.$logsOnFile— включение\отключение логирования в файл. Обязательный параметр. По умолчанию включено.$logsOnConsole— включение\отключение логирования в консоль. Обязательный параметр. По умолчанию отключено.$apiVersion— версия API, используемая в скрипте. Обязательный параметр. Значение по умолчанию: v5.$policyIds— идентификаторы политик, из области действия которых запрашиваются пользователи.$csvPathToReport— путь до CSV-файла отчета. По умолчанию файл создается в папке скрипта по пути Reports\Statistics.
Пример работы
Для запуска скрипта запустите файл main.ps1.
В процессе работы скрипта по пути из переменной
$csvPathToReportбудет создан файл формата CSV.