👋 Привет, админы!
👋 Привет, админы! Как быстро проверить, какие пользователи имеют права администратора на сотне удалённых серверов? Ручной подход, это бессмысленная трата времени и риска забыть какой-то хост, поэтому я собрал небольшой PowerShell-скрипт для автоматического аудита. # Список серверов в текстовом файле (по одному в строке) $servers = Get-Content -Path "C:\scripts\servers.txt" # Формируем результаты $report = foreach ($server in $servers) { Try { Invoke-Command -ComputerName $server -ScriptBlock { Get-LocalGroupMember -Group "Administrators" | Select-Object @{Name='Server';Expression={$env:COMPUTERNAME}}, Name, ObjectClass } -ErrorAction Stop } Catch { [PSCustomObject]@{ Server = $server Name = '<не удалось получить данные>' ObjectClass = 'Error' } } } # Сохраняем в CSV и открываем $csvPath = "C:\reports\AdminsAudit_$(Get-Date -Format yyyy-MM-dd).csv" $report | Export-Csv -Path $csvPath -NoTypeInformation -Encoding UTF8 Invoke-Item $csvPath 🛠 Что делает скрипт: ◾️Берёт список серверов из файла servers.txt ◾️Через Invoke-Command собирает членов локальной группы Administrators на каждом хосте ◾️Обрабатывает ошибки (например, недоступный сервер) ◾️Экспортирует итоговый отчёт в CSV с датой в имени Этот подход легко расширить — добавить уведомление по почте через Send-MailMessage или интеграцию с Teams/Slack, а также запускать по расписанию в Task Scheduler или Azure Automation. 👉 @channel_win_sysadmin