Перейти к основному содержимому

Получение списка пользователей с лицензиями

Информация

Скрипт для получения списка пользователей вы можете скачать по этой ссылке

Предварительные требования

  • Установленный модуль Active Directory для PowerShell в Windows Server.
  • Работоспособный сервер Indeed AM. 
  • Пользователь, от имени которого будет запускаться скрипт, должен обладать минимальными глобальными правами  Инспектор в системе Indeed AM.

Как работает скрипт

Скрипт формирует таблицу формата CSV со следующими столбцами:

  • <UserName>,
  • <true>,
  • <false>,

где true\false — это столбцы с соответствующим названием лицензии. 

Массив лицензий, наличие которых проверяется у пользователя, — это список всех зарегистрированных лицензий. 

Работа скрипта состоит из нескольких этапов:

  1. Формируется массив загруженных в систему лицензий с помощью метода /license/getAllLicenses.
  2. С помощью метода /api/v5/policy/get запрашивается информация о политике.
  3. Из свойства области действия запрашивается информация по настроенным объектам с помощью метода /api/v5/userCatalog/getObjects.
  4. Из полученных объектов запрашиваются пользователи: 
    • С помощью командлета PowersShell Get-ADGroup в функции getUsersCN файла Base/AdditionalFunctions/GetUsers.ps1 для группы Active Directory.  
    • С помощью командлета PowersShell Get-ADUser в функции getUsersOU файла Base/AdditionalFunctions/GetUsers.ps1 для подразделения Active Directory. 
  5. С помощью метода license/getCatalogObjectLicenses запрашивается наличие лицензий пользователя и сопоставляется с общим массивом лицензий. 
  6. С помощью функции addDataToCSV файла Base/AdditionalFunctions/CsvReport.ps1 собирается таблица в формате CSV.

Настройка

Для работы скрипта необходимо сконфигурировать файл Config.ps1, который находится в корне папки со скриптом.

В файле:

  • $serverUrl — URL сервера Indeed AM. Обязательный параметр.
  • $logsOnFile — включение\отключение логирования в файл. Обязательный параметр. По умолчанию включено.
  • $logsOnConsole — включение\отключение логирования в консоль. Обязательный параметр. По умолчанию отключено.  
  • $apiVersion — версия API, используемая в скрипте. Обязательный параметр. Значение по умолчанию: v5.
  • $policyIds —  идентификаторы политик, из области действия которых запрашиваются пользователи. 
  • $csvPathToReport — путь до CSV-файла отчета. По умолчанию файл создается в папке скрипта по пути Reports\Statistics.

Пример работы

  1. Для запуска скрипта запустите файл main.ps1.

  2. В процессе работы скрипта по пути из переменной $csvPathToReport будет создан файл формата CSV.