Сбор статистики по обученным аутентификаторам пользователей
Скрипт для сбора статистики вы можете скачать по этой ссылке.
Предварительные требования
- Установленный модуль Active Directory для PowerShell в Windows Server.
- Работоспособный сервер Indeed AM.
- Пользователь, от имени которого будет запускаться скрипт, должен обладать минимальными глобальными правами Инспектор в системе Indeed AM.
Как работает скрипт
Работа скрипта состоит из нескольких этапов:
- Скрипт перебирает идентификаторы политик из массива конфигурационного файла Config.ps1.
- С помощью метода
/api/v5/policy/get
запрашивается информация о политике. - Из свойства области действия запрашивается информация по настроенным
объектам с помощью метода
/api/v5/userCatalog/getObjects
. - Из полученных объектов запрашиваются пользователи:
- С помощью командлета PowerShell
Get-ADGroup
в функцииgetUsersCN
файла Base/AdditionalFunctions/GetUsers.ps1 для группы Active Directory. - С помощью командлета PowerShell
Get-ADUser
в функцииgetUsersOU
файла Base/AdditionalFunctions/GetUsers.ps1 для подразделения Active Directory.
- С помощью командлета PowerShell
- По полученным пользователям составляется отчет по состоянию
аутентификаторов, которые указаны в переменной
AuthForReport
файла Config.ps1.- С помощью метода
/api/v5/authenticator/findByUserIds
запрашивается информация со всеми внутренними GUID аутентификаторов пользователя. - С помощью метода
/api/v5/authenticator/getUserAuth
запрашивается информация по конкретному GUID.
- С помощью метода
- С помощью функции
addDataToCSV
файла Base/AdditionalFunctions/CsvReport.ps1 собирается таблица в формате CSV.
Настройка
Для работы скрипта необходимо сконфигурировать файл Config.ps1, который находится в корне папки со скриптом.
В файле:
$serverUrl
— URL сервера Indeed AM. Обязательный параметр.$logsOnFile
— включение\отключение логирования в файл. Обязательный параметр. По умолчанию включено.$logsOnConsole
— включение\отключение логирования в консоль. Обязательный параметр. По умолчанию отключено.$apiVersion
— версия API, используемая в скрипте. Обязательный параметр. Значение по умолчанию: v5.$policyIds
— идентификаторы политик, из области действия которых запрашиваются пользователи.$AuthForReport
— в переменной указываются GUID аутентификаторов Indeed и их название для отчета. Название может быть произвольным. Значения указываются в следующем формате:'GUID' = "Наименование"
.Пример настройки для Indeed Key и Passcode$AuthForReport = @{
'F696F05D-5466-42b4-BF52-21BEE1CB9529' = 'Passcode'
'DEEF0CB8-AD2F-4B89-964A-B6C7ECA80C68' = 'Push-уведомление в Indeed Key'
}$csvPathToReport
— путь до CSV-файла отчета. По умолчанию файл создается в папке скрипта по пути Reports\Statistics.
Пример работы
Для запуска скрипта запустите файл main.ps1.
В процессе работы скрипта по пути из переменной
$csvPathToReport
будет создан файл формата CSV.ПримечаниеПользователи добавляются в отчёт последовательно.