|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Разное - Парсинг GPO из HTML в БД |
|
Разное - Парсинг GPO из HTML в БД
|
Старожил Сообщения: 415 |
Профиль | Отправить PM | Цитировать Всем привет!
Есть такая задача - автоматизировать поиск измений в групповых политиках GPO. Т.к. стандарнтные средства Active Directory не показывают, что именно изменилось в GPO, а только сам факт изменения можно увидеть в логе, я решил написать что-то свое. И так, у меня есть такая идея:
Вот я сейчас застрял на втором пункте и не понимаю, как это лучше сделать? Есть небольшой опыт в BASH и Powershell. Как написать такую регулярку, чтобы все разложила пополочкам, не понимаю. С моими навыками в BASH смогу точно выдернуть информацию из разделов GPO "Подробности", "Ссылки". Но разделы "Конфигурция конмпьюрета" и "Конфигурация пользователя" не смогу. Все усложняется тем, что в этих разделах внутри GPO может быть много политик - более тысячи запросто. А у каждой политики несколько значений параметра и вложенные в них подпараметры. Пример 1. В политике «Конфигурация компьютера\Политики\Конфигурация Windows\Параметры безопасности\Локальные политики/Параметры безопасности\Аудит\Аудит: аудит доступа глобальных системных объектов» может несколько значений Параметра: «Включено», «Отключено» или «Не определено». Пример2. В политике «Конфигурация компьютера\Политики\Административные шаблоны\Компоненты Windows/Политики автозапуска\Выключение автозапуска» может несколько значений Параметра: «Включено», «Выключено» или «Не определено». А так же у параметра может быть еще и вложенный параметр. В данном случае он называется «Отключить автозапуск:» и он тоже имеет несколько значений. Например "Все устройства". И таких нюансов много, и не могу найти закономерность. Примечания:
Если кто-то сталкивался с такой задачей, просьба подсказать. Если получиться правильно все распарсить, то смогу далее прикрутить к этому некий веб-интерфейс и вообще получится "конфетка". Пример HTML файла можно взять тут Заранее спасибо! P.S. Не предлагайте Policy Analyzer - не подходит. |
|
Отправлено: 14:37, 01-11-2023 |
fascinating rhythm Сообщения: 6585
|
Профиль | Отправить PM | Цитировать Цитата dahiko:
gc 'D:\Downloads\Default Security for Domain Vasya.html' -Encoding utf8 | C:\scripts\pandoc\pandoc.exe -f html -t json -o 'D:\Downloads\Default Security for Domain Vasya.json' |
|
------- Отправлено: 15:38, 01-11-2023 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 415
|
Профиль | Отправить PM | Цитировать Цитата DJ Mogarych:
Прикольная штука. Попробовал, т.к. делал на Винде, то у меня было так: C:\Users\vasya\Desktop\pandoc.exe C:\Users\vasya\Desktop\123.html -f html -t json -o C:\Users\vasya\Desktop\123.json И вот, что получилоь: 1. Pandoc перевел все в одну строку и там куча массивов внутри массива. Это усложняет дальше обрабатывать этот файл. По крайней мере для меня. В принципе я делал тоже самое на сайте https://alldocs.app/convert-html-to-pandoc-json когда искал решение. 2. Pandoc добавляет лишнее. Например, из этого "Время ожидания в секундах перед включением заставки" получилось это [{"t":"Str","c":"Время"},{"t":"Space"},{"t":"Str","c":"ожидания"},{"t":"Space"},{"t":"Str","c":"в"},{"t":"Space"},{"t":"Str","c":"секундах"},{"t":"Space"},{"t":"Str","c":"перед"},{"t":"Space"},{"t":"Str","c":"включением"},{"t":"Space"},{"t":"Str","c":"заставки"}]}]]]] Вобщем, не совсем то, что хочется, но буду попробовать дальше раскручивать Pandoc и искать другие решения. Спасибо. |
|
Отправлено: 07:40, 02-11-2023 | #3 |
fascinating rhythm Сообщения: 6585
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 09:41, 02-11-2023 | #4 |
Старожил Сообщения: 415
|
Профиль | Отправить PM | Цитировать Цитата DJ Mogarych:
1. Например, эту же строку "Время ожидания в секундах перед включением заставки" вернул вот так: +-----------------------+-----------------------+-----------------------+ | Тайм-аут экранной | Включено | | | заставки | | | +-----------------------+-----------------------+-----------------------+ | ----------------- | | | | --------------------- | | | | --------------- ----- | | | | Время ожидан | | | | ия в секундах перед в | | | | ключением заставки | | | | | | | | | | | | | | | | Секунды: | | | | | | | | 700 | | | | ----------------- | | | | --------------------- | | | | --------------- ----- | | | +-----------------------+-----------------------+-----------------------+ Системные объекты Политика Параметр ----------------------------------------------------------------------------------------------------------------------- ---------- Системные объекты: усилить разрешения по умолчанию для внутренних системных объектов (например, символических ссылок) Включено Устройства Политика Параметр ----------------------------------------------------------------------------------------- ---------------- Устройства: запретить пользователям установку драйверов принтера Включено Устройства: разрешить доступ к дисководам гибких дисков только локальным пользователям Отключено Устройства: разрешить доступ к дисководам компакт-дисков только локальным пользователям Отключено Устройства: разрешить форматирование и извлечение съемных носителей Администраторы Кажется с этим лучше работать, чем с тем JSON. Спасибо. Тему пока не буду отмечать решенной. Вдруг еще кто-то напишет что-то полезного. |
||
Отправлено: 13:13, 02-11-2023 | #5 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Парсинг HTML из URL | Darkar25 | Скриптовые языки администрирования Windows | 13 | 16-07-2018 17:11 | |
VBS/WSH/JS - [решено] Парсинг html-страницы | The_Immortal | Скриптовые языки администрирования Windows | 20 | 12-05-2018 23:34 | |
PowerShell - Парсинг HTML, Parser HTML | dosperados | Скриптовые языки администрирования Windows | 6 | 15-04-2016 08:46 | |
CMD/BAT - Парсинг HTML | Smasher | Скриптовые языки администрирования Windows | 14 | 25-09-2012 20:45 | |
Delphi - [решено] HTML код из БД > WebBrowser с картинками | ibmpc | Программирование и базы данных | 2 | 04-06-2011 22:42 |
|