إنشاء تقارير سياسات الحساب النشط مع باورشيル. بمساعدة الأمر Get-GpoReport
، يمكننا إنتاج تقارير حول سياسات المجموعة (GPO) ، تتراوح من تقارير بسيطة تستند إلى النص إلى تقارير HTML المتكاملة الترميز التوضيحي للنص الفائق (HTML). علاوة على ذلك ، يمكننا تشغيل عملية إنشاء هذه التقارير تلقائيًا باستخدام PowerShell. هذا لتوفير الوقت والحصول على معلومات مهمة حول نظام الحساب النشط (AD) الخاص بك. في هذه المقالة ، سنناقش كيفية إدراج PowerShell وحدة GPO ، وتصدير GPOs ، وربط GPOs بـ وحدة تنظيمية (OU). سيكون هذا مثالاً ، بحيث يعملون جميعًا معًا لإنتاج بعض التقارير الممتازة.
هل نبدأ بكيفية إنشاء تقارير سياسات الحساب النشط باستخدام PowerShell.
إنشاء تقارير سياسة مجموعة AD (GPO) باستخدام PowerShell
الشروط الأساسية
في هذه المقالة، سنتناول بعض الحالات المختلفة التي تشمل إنشاء وتعديل GPOs الحالية. تأكد من وجود ما يلي إذا كنت ترغب في متابعة الأمثلة:
- وحدة PowerShell لسياسة المجموعة. إذا كنت تستخدم ويندوز 10، يمكننا العثور على ذلك عن طريق تنزيل وتثبيت RSAT، أو إذا كنت تستخدم ويندوز سيرفر، يمكننا استخدام الأمر PowerShell أدناه:
Install-WindowsFeature -Name GPMC
- A computer member of the same AD domain from which we will query GPOs.
- جهاز كمبيوتر AD-انضم مع حساب مستخدم النطاق الذي لديه حقوق لقراءة GPOs.
إنشاء تقارير HTML باستخدام Get-GpoReport
أولاً ، دعنا نتصور أن لدينا GPO واحدة فقط. لذلك ، ترغب في عرض الإعدادات منها (بالإضافة إلى إنشاء تقرير HTML) للبدء في العمل. لحسن الحظ ، يمكن لأمر Get-GpoReport
اكتشاف GPO على أي جهاز واستخدام PowerShell لتصديرها. للقيام بذلك ، سنحتاج إما إلى اسم GPO أو معرف فريد عالمي (GUID) للـ GPO.
لذلك ، ستحتاج إلى استخدام ثلاثة معاملات على الأقل لإنشاء تقرير HTML مفصل:
- اسم أو GUID للعثور على GPO.
- معامل ReportType لتحديد نوع التقرير المراد إنشاؤه. يمكننا اختيار بين HTML أو XML (لغة وصف العلامات الموسعة).
- مسار لتحديد مكان حفظ التقرير إليه.
ربما لدينا GPO في بيئتك. على سبيل المثال ، يمكننا تحديد ReportType
بقيمة HTML
للحصول على تقرير HTML والمسار الذي ترغب في حفظ ملف HTML به إذا كنا نعرف اسم GPO ، كما هو الحال في هذا المثال.
Get-GPOReport -Name 'Sample GPO' -ReportType 'HTML' -Path 'C:\Temp\SampleReport.html'
بدلاً من ذلك ، يمكننا استخدام معامل Guid
للعثور على GPO ، ولكن هذه خطوة إضافية باستخدام المثال أدناه.
$gponame = (Get-GPO -Name 'Sample GPO').Id
Get-GPOReport -Guid $gponame -ReportType 'HTML' -Path 'C:\Temp\SampleReport.html'
يمكننا عرض التقرير في متصفحك المفضل بمجرد إعداده.
إنشاء تقارير HTML لجميع سياسات المجموعات
بدلاً من ذلك، لإنشاء تقرير على مستوى النطاق لسياسات المجموعات. في تلك الحالة، يجب علينا استخدام الوسيطة الكل
للاستعلام عن كل سياسة مجموعة في النطاق. ومع ذلك، في هذا الوقت، بدلاً من استخدام الخيار الاسم
أو المعرف
لتعيين سياسة مجموعة معينة، نحن نستخدم معلمة التبديل الكل
للعثور على جميعها.
Get-GPOReport -All -ReportType Html -Path "C:\Temp\All-SampleReport.html"
عند استخدامه في بيئة AD، يتصل الأمر Get-GPOReport
بخادم تحكم النطاق (DC) المحدد بواسطة معلمة الخادم
لقراءة سياسات المجموعات. بعد ذلك، سيتم استخدام خادم تحكم النطاق الذي يحمل دور PDC Emulator بشكل افتراضي إذا لم يكن هناك خادم متاح.
الخطوة التالية في كيفية إنشاء تقارير سياسات الدليل النشط باستخدام PowerShell هي إنشاء تقارير XML.
اقرأ أيضًاتقارير مستخدمي Office 365
إنشاء تقارير XML باستخدام Get-GpoReport
عمومًا، بمجرد استيرادنا وحدة GPO في PowerShell، هناك أشياء أخرى يمكن أن يقوم بها Get-GPOReport
. وهذا يعني، بخلاف تصدير GPOs وإنتاج تقارير HTML. بالإضافة إلى ذلك، يمكننا أيضًا إنتاج تقارير XML. على سبيل المثال، سنحتاج إلى تعديل قيمة معلمة ReportType
من HTML
إلى XML
إذا أردنا إنشاء تقرير XML لـ GPO معين.
على سبيل المثال، أدناه نستعلم عن GPO موجود، تقرير عينة
، لإنتاج تقرير XML. ثم، نفتح ذلك التقرير باستخدام الأمر Invoke-Item
في تطبيق XML المعتاد للملف:
Get-GPOReport -Name 'Sample GPO' -ReportType Xml -Path "C:\temp\SampleReport.xml"
Invoke-Item -Path "C:\Temp\SampleReport.xml"
عند الانتهاء، سنرى ملف XML مثل اللقطة أدناه.
أولاً، نلاحظ أن عقدة XML للموجوز GPO تحتوي على كل شيء. داخلها، قد نجد أشياء مثل معرّف
(معرّف GPO الموجّه)، اسم
(اسم الموجوز GPO)، تضمين التعليقات، مفتاح أمان، SDDL
والكثير من المعلومات الأخرى.
تقرير GPO XML
ما الذي يميز تقرير XML هذا عن تقرير HTML بخلاف التنسيق؟ في الأساس، السمات الموجودة في تقرير HTML موجودة أيضًا في تقرير XML. لكنها منظمة بشكل أكبر وأسهل في التحليل.
- إصدار Directory – إصدار الموجوز GPO المخزن في قاعدة البيانات AD.
- إصدارSysvol – إصدار سياسة المجموعة المخزنة في SYSVOL.
- ممكّن – إذا تم تعطيله، فإن محرك معالجة سياسة المجموعة على جهاز الكمبيوتر العميل لن يطبق الإعدادات في الجزء المقابل من السياسة.
من الأهمية بمكان أن إصدار السياسة (للكمبيوتر أو المستخدم) يزيد عند تعديل سياسة المجموعة. وبالتالي، يمكن لمحرك معالجة سياسة المجموعة تحديد متى يجب تطبيق الإعدادات الجديدة ومتى تم تغيير السياسة. بالإضافة إلى ذلك، ستسمح لنا هذه السلوكية بتشغيل gpupdate.exe بعد تغيير سياسة المجموعة دون استخدام مفتاح الأمر المشترك /force.
اقرأ أيضًا إدارة الدليل النشط
تحقق من تقارير سياسة مجموعة Active Directory باستخدام InfraSOS
جرب معنا مجانًا، الوصول إلى جميع الميزات. – 200+ نموذج تقرير AD متاح. قم بتخصيص تقارير AD الخاصة بك بسهولة.
GMPC
يمكننا عرض إصدار سياسة المجموعة (للـ AD والـ SYSVOL) وحالتها في GMPC.
بالإضافة إلى ذلك، سيستمر جهاز العميل في معالجة سياسة حتى عندما يكون لـ VersionDirectory
و VersionSysvol
قيمة 0
، ولكن Enabled
هو true
. سيقوم النظام بإبلاغ محرك المعالجة أننا لا نحتاج إلى تنفيذ الجزء ذي الصلة من GPO. تغيير التكوين لن يؤثر على أداء جهاز كمبيوتر سريع على شبكة قصيرة نسبيًا كثيرًا. على الرغم من ذلك ، يمكن أن يوفر الكثير من الثواني القيمة لمثل هذه السياسات ، خاصةً بالنسبة للأجهزة القديمة على الشبكات البطيئة.
بالتالي ، لن يقوم محرك المعالجة على جهاز العميل بتطبيق سياسة مع VersionDirectory
و VersionSysvol
أعلى من 0
ولكن Enabled
محددة على false
. قد نسأل لماذا لا تُطبق بعض الإعدادات. لذلك فمن الضروري التحقيق فيما إذا كان هذا حادثًا أم متعمدًا.
فلنفترض أننا على دراية بالعمل الداخلي لـ GPO. في هذه الحالة ، يمكننا استخدام الأمر Get-GPOReport
. وبالتالي يتعين علينا التحقق من هذه الإعدادات مباشرةً من خلال الرجوع إلى خاصية بدلاً من التنقل إلى GPMC.
بدلاً من ذلك ، قد نرغب في التركيز على بعض الإعدادات في GPO. أو في النهاية قد نرغب في إرفاق GPO بوحدة تنظيم باستخدام PowerShell ، بحيث لن يكون هناك حاجة لإنشاء تقرير.
- قم بإزالة المعلمة
Path
في تلك الحالة. خذ علماً بالتحويل[xml]
وغياب معلمةPath
في المثال أدناه.
[xml]$GpoXml = Get-GPOReport -Name 'Sample GPO' -ReportType Xml
2. الآن بعد تحويل إخراج Get-GPOReport's
إلى كائن XML، يمكننا الرجوع بسرعة إلى خصائصه العديدة باستخدام تعبير نقطي موجز.
$GpoXml.GPO.Computer
$GpoXml.GPO.User
3. أضف حلقة foreach
واستخدم الوسيطة All
للانتقال من خلال كل إخراج GPO.
$AllGpos = Get-GPO -All
$GpoVersionInfo = foreach ($gpo in $gpos) {
[xml]$g = Get-GPOReport -ReportType Xml -Guid $gpo.Id
[PSCustomObject]@{
"Name" = $g.GPO.Name
"Comp-Ad" = $g.GPO.Computer.VersionDirectory
}
}
$GpoVersionInfo | Sort-Object Name | Format-Table
اقرأ أيضاًأداة تقارير دليل النشاط
تحليل تقارير GPO XML
قد نتعلم عن العديد من جوانب سياسات GPO الخاصة بك باستخدام الإخراج XML الذي ينتجه Get-GPOReport
. في المثال السابق، إذا نظرنا إلى خصائص $GPOXML.GPO.Computer
و $GPOXML.GPO.User
للنموذج السابق، سنرى خاصية ExtensionData
كما هو موضح أدناه.
كما هو موضح أدناه، يمكننا البدء في إنشاء تقارير الخاصة بك بناءً على البيانات XML عن طريق الوصول إلى هذه العقد XML في PowerShell.
$PolicyDetails = foreach ($policy in $GpoXml.GPO.User.ExtensionData.Extension.Policy) {
[PSCustomObject]@{
"Name" = $policy.Name
"State" = $policy.State
}
}
$PolicyDetails
شكراً لقراءة مقالتنا حول كيفية إنشاء تقارير سياسة دليل النشاط النشط باستخدام PowerShell. دعونا نختتم.
إنشاء تقارير سياسات مجموعة Active Directory باستخدام PowerShell الاستنتاج
بخلاف لوحة تحكم سياسة المجموعات الأساسية (GPMC)، تناول هذا المقال الطرق الممكنة لإنشاء تقارير شاملة عن سياسات المجموعات عن طريق تصديرها بتنسيقي HTML و XML. كما ناقشنا استخدام Get-GpoReport
cmdlet. يمكن لهذا الأمر البرمجي الآن استرداد نفس المعلومات كما يفعل GPMC عبر PowerShell. وهذا يتيح لنا استعلام العديد من سياسات المجموعات في وقت واحد، مما سيساعد بالتأكيد في بناء تقارير ممتازة.
Source:
https://infrasos.com/create-active-directory-policy-reports-with-powershell/