Информация

Для сбора статистики скачайте репозиторий со скриптом. 

Описание работы скрипта

  1. Скрипт перебирает идентификаторы политик из массива конфигурационного файла Config.ps1.
  2. С помощью метода API "/api/v5/policy/get" запрашивается информация о политике.
  3. Из свойства области действия запрашивается информация по настроенным объектам с помощью метода API "/api/v5/userCatalog/getObjects".
  4. Из полученных объектов запрашиваются пользователи 
    1. С помощью командлета PowersShell "Get-ADGroup" в функции "getUsersCN" файла "Base/AdditionalFunctions/GetUsers.ps1" для группы AD.  
    2. С помощью командлета PowersShell "Get-ADUser" в функции "getUsersOU" файла "Base/AdditionalFunctions/GetUsers.ps1" для подразделения AD. 
  5. По полученным пользователям составляется отчет по состоянию аутентификаторов, которые указаны в переменной "AuthForReport" файла Config.ps1.
    1. С помощью метода API "/api/v5/authenticator/findByUserIds" запрашивается информация со всеми внутренними GUID аутентификаторов пользователя.
    2. С помощью метода API "/api/v5/authenticator/getUserAuth" запрашивается информация по-конкретному GUID из 5.а. 
  6. С помощью функции "addDataToCSV" файла "Base/AdditionalFunctions/CsvReport.ps1" собирается таблица в CSV формате.

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

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

Настройка

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

  1. $serverUrl — URL адрес сервера Indeed AM. Обязательный параметр.
  2. $logsOnFile — включение\отключение логирования в файл. Обязательный параметр. По умолчанию включено.
  3. $logsOnConsole — включение\отключение логирования в консоль. Обязательный параметр. По умолчанию отключено.  
  4. $apiVersion — версия API, используемая в скрипте. Обязательный параметр. Значение по умолчанию: v5
  5. $policyIds —  идентификаторы политик, с области действия которых запрашиваются пользователи. 
  6. $AuthForReport - в переменной указываются GUID аутентификаторов Indeed и их название для репорта. Название может быть произвольным. Значения указываются в следующем формате 'GUID' = "Наименование". 

    Пример настройки для Indeed Key и Passcode
    $AuthForReport      = @{
        'F696F05D-5466-42b4-BF52-21BEE1CB9529' = 'Паскод'
        'DEEF0CB8-AD2F-4B89-964A-B6C7ECA80C68' = 'Пуш'
    }
  7. $csvPathToReport — путь до csv файла отчета. По умолчанию файл создается в папке скрипта по пути: Reports\Statistics


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

  1. Для запуска скрипта запустите файл "main.ps1"
  2. В процессе работы скрипта по пути из переменной "$csvPathToReport" будет создан csv файл. 

    Информация

    Пользователи добавляются в отчёт последовательно. 


  • No labels