Скрипт проходит по всем серверам из Active Directory , смотрит состав локальной группы Администраторы и сохраняет список в файл. Будет полезным для поддержания безопасности в среде с большим количеством серверов.
| 1 — 4 | Определяем переменные для дальнейшего использования. |
| 1 | Путь к файлу, в который будет сохранен результат. |
| 2 | Контейнер в Active Directory, в котором находятся учетные записи компьютеров серверов. |
| 3 | Создаем и хэш-массив. В Powershell необходимо делать до начала использования. |
| 4 | Создаем пустую переменную. Ее будем наполнять списком пользователей, которые входят в группу Администраторы. |
| 6 — 21 | Функция для поиска пользователей в группе Администраторы. |
| 7 | Функции будет передаваться имя сервера. Его будем сохранять в переменную $strcomputer |
| 8 — 12 | Создаем исключение для выполняемой операции. Если запрос не будет выполнен корректно, на экран будет выведено название сервера. |
| 9 | Обращаемся в WMI объекту win32_groupuser со списком групп Windows. |
| 11 | Если обращение к WMI выполнено с ошибкой (чаще всего из-за недоступности RPC), на экран будет выведено название сервера, к которому в данный момент идет обращение. |
| 13 | Условие, при котором проверяется существование переменной со списком групп, полученной в строчке 9 |
| 14 | Создаем переменную, в которую войдет список пользователей группы Администраторы или Administrators (на серверах с английской версией). |
| 15 — 18 | Вытаскиваем пользователей из административной группы и удаляем лишнюю служебную информацию. |
| 19 | Функция возвращает список пользователей. |
| 23 | Создаем переменную и помещаем в нее список компьютеров, на которых будем искать администраторов. В данном примере, это компьютеры из Active Directory. |
| 24 — 29 | Извлекаем по одному сервера, которые были получены в строчке 23. |
| 25 | Запускаем функцию и передаем ей имя сервера. Результат работы записываем в переменную $UserList |
| 26 | Условие проверяет наличие значения переменной $UserList |
| 27 | Если список пользователей есть, добавляем его в массив $AdminList |
| 31 — 35 | Перебираем массив $AdminList и пополняем список серверов и администраторов для них. |
| 32 | Создаем переменную, в которую запишем имя сервера. |
| 33 | Создаем переменную, в которую поместим список пользователей для сервера из строчки 32. |
| 34 | В переменной $ToCSV находятся строчки для будущего файла. Каждая строчка — имя сервера и перечень администраторов, разделенные точкой с запятой. |
| 37 — 39 | Проверяем наличие в системе файла, в который хотим поместить результат работы скрипта. Если файл существует, удаляем его. |
| 41 | Создаем файл выгрузки и помещаем в него список администраторов. |
Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…
Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…
Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…
Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…
YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…
Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…