Получение списка пользователей с лицензиями
Информация
Скрипт для получения списка пользователей вы можете скачать по этой ссылке.
Предварительные требования
- Установленный модуль Active Directory для PowerShell в Windows Server.
- Работоспособный сервер Indeed AM.
- Пользователь, от имени которого будет запускаться скрипт, должен обладать минимальными глобальными правами Инспектор в системе Indeed AM.
Как работает скрипт
Скрипт формирует таблицу формата CSV со следующими столбцами:
- <UserName>,
- <true>,
- <false>,
где true\false — это столбцы с соответствующим названием лицензии.
Массив лицензий, наличие которых проверяется у пользователя, — это список всех зарегистрированных лицензий.
Работа скрипта состоит из нескольких этапов:
- Формируется массив загруженных в систему лицензий с помощью метода
/license/getAllLicenses
. - С помощью метода
/api/v5/policy/get
запрашивается информация о политике. - Из свойства области действия запрашивается информация по настроенным
объектам с помощью метода
/api/v5/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.