Drošas sāknēšanas E2E automatizācijas rokasgrāmatas paraugs
Attiecas uz
Sākotnējās publicēšanas datums: 2026. gada 16. marts
KB ID: 5084567
Šajā rakstā
Kopsavilkums
Šajā ceļvedī ir aprakstīta automatizētā izvietošanas sistēma Windows Secure Boot DB sertifikātu atjauninājumiem, grupas politika pakāpeniski ieviešanu.
Drošas sāknēšanas sertifikāta rollout automatizācija ir PowerShell sistēma, kas izvieto Windows secure Boot DB sertifikātu atjauninājumus domēniem pievienotiem datoriem absolvācijā.
Galvenie līdzekļi
|
Līdzeklis |
Apraksts |
|
Absolvēta izvēršanās |
1 > 2 > 4 > 8... Ierīces vienam intervālam |
|
Automātiskā bloķēšana |
Intervāli ar sasniedzamām ierīcēm tiek izslēgti |
|
Automatizēta GPO izvietošana |
Vienotāju skripts apstrādā visu |
|
Ieplānota uzdevuma izpilde |
Nav nepieciešamas interaktīvas uzvednes |
|
Reāllaika pārraudzība |
Statusa skatītājs ar norises joslu |
Sertifikātu Atjauninājumi iestatījumu atsauce
Šajā sadaļā
AvailableUpdatesPolicy Grupas politika
|
Reģistra atrašanās vieta |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecureBoot |
|
Nosaukums |
AvailableUpdatesPolicy |
|
Vērtība |
0x5944 (DWORD) |
Šī ir GPO/ADMX kontrolētā atslēga, kas:
-
Pastāv pār restartējot
-
Iestata grupas politika /MDM
-
Nerada atkārtotu mēģinājumu cilpas (notīrītas, izmantojot clearRolloutFlags)
-
Vai šī ir pareizā atslēga politikas izvietojumam
WinCSFlags — Windows konfigurācijas sistēmas karodziņi
Domēnu administratori var arī izmantot Windows konfigurācijas sistēmu (WinCS ), kas izlaista ar Windows OS atjauninājumiem, lai izvietotu drošās sāknēšanas atjauninājumus domēnam pievienotos Windows klientos un serveros. To veido komandrindas interfeisa (COMMAND-line interface — CLI) utilīta, kas nodrošina vaicājumus un lokālas drošās sāknēšanas konfigurācijas lietojiet datorā.
|
Līdzekļa nosaukums |
WinCS atslēga |
Apraksts |
|
Feature_AllKeysAndBootMgrByWinCS |
F33E0C8E002 |
Šīs atslēgas iespējošana ļauj ierīcē instalēt tālāk norādītos Microsoft nodrošinātos drošās sāknēšanas jaunos sertifikātus.
|
Atsauce: Windows konfigurācijas sistēmas (WinCS) API drošai palaišanai
Arhitektūra
1. posms Noteikšana un statusa pārraudzība uzņēmuma līmenī
Šajā sadaļā
Skripti, kas nepieciešami 1. posmam
Drošas sāknēšanas krājumu datu kolekcijas skriptu paraugi
|
Skripta nosaukuma paraugs |
Nolūks |
Darbojas: |
|
Apkopo ierīces statusa datus |
Katrs galapunkts (izmantojot GPO) |
|
|
Ģenerē atskaites un informācijas paneļus |
Administrēšana darbs |
|
|
Automatizē GPO izveidi datu apkopošanai |
Domēna kontrolleris |
"1. posms: noteikšana un statusa pārraudzība uzņēmuma līmenī"
Lokālā testēšana
Pirms izvietojat, izmantojot GPO, pārbaudiet kolekcijas skriptu vienā datorā, lai pārbaudītu funkcionalitāti.
-
Palaidiet kolekcijas skriptu lokāli Atveriet paaugstinātu PowerShell uzvedni un izpildiet:
& .\Detect-SecureBootCertUpdateStatus.ps1 -OutputPath "C:\Temp\SecureBootTest"
-
JSON izvades pārbaude
# View the collected data Get-Content "C:\Temp\SecureBootTest\*_latest.json" | ConvertFrom-Json | Format-List
Galvenie lauki, kas jāpārbauda • SecureBootEnabled — vērtībai ir jābūt True vai False • OverallStatus — complete, ReadyForUpdate, NeedsData, or Error • IntervālsJash — ierīces intervāls ticamības datu atbilstībai • SecureBootTaskEnabled — parāda drošas sāknēšanas atjaunināšanas uzdevuma statusu;
-
Testa apkopojuma skripts
# Generate reports from collected data & .\Aggregate-SecureBootCertStatus.ps1" ' -InputPath "C:\Temp\SecureBootTest" ' -OutputPath "C:\Temp\SecureBootReports" # Atveriet HTML informācijas paneli
Start-Process "C:\Temp\SecureBootReports\SecureBoot_Dashboard_*.html"
"1. posms: noteikšana un statusa pārraudzība uzņēmuma līmenī"
GPO izvietošana
Izmantojiet domēna kontrollera nodrošināto automatizācijas skriptu:
# Run on Domain Controller as Domain Administrēšana for interactive OU Section - Recommended # Aizstājiet "Contoso.com", "Contoso" ar domēna nosaukumu # Aizstājiet FILESERVER ar failu servera nosaukumu. Skripts rāda to OU sarakstu, kurā jāizvieto GPO ,\Deploy-GPO-SecureBootCollection.ps1 ' -DomainName "contoso.com" ' -AutoDetectOU ' -CollectionSharePath "\\FILESERVER\SecureBootLogs$" ' -ScriptSourcePath ".\Detect-SecureBootCertUpdateStatus.ps1" ' -Ieplānot "Katru dienu" ' -ScheduleTime "14:00" ' -RandomDelayHours 4
Šis skripts veiks šādas darbības:
-
Izveido jaunu GPO ar norādīto nosaukumu
-
SysVOL kopē kolekcijas skriptu, lai nodrošinātu pieejamību ar augstu pieejamību
-
Konfigurē datora startēšanas skriptu
-
Saites GPO uz mērķa OU
-
Neobligāti tiek izveidots ieplānots uzdevums periodiskai kolekcijai
Tālāk esošajā tabulā ir sniegti norādījumi par aizkaves laiku, pamatojoties uz jūsu norādīto lielumu.
|
Sāuma lielums |
Aizkaves diapazons |
|
1-10K ierīces |
4 stundas |
|
10K-50K ierīces |
8 stundas |
|
50K+ ierīces |
12–24 stundas |
"1. posms: noteikšana un statusa pārraudzība uzņēmuma līmenī"
GPO iestatījumu kopsavilkums
|
Iestatījums |
Atrašanās vieta |
Vērtība |
|
Startēšanas skripts |
Computer Config → Scripts |
Detect-SecureBootCertUpdateStatus.ps1 |
|
Skripta parametri |
(tas pats) |
-OutputPath "\\server\share$" |
|
Izpildes politika |
Computer Config → Administrēšana Templates → PowerShell |
Atļaut lokālus un attālus parakstītus |
|
Ieplānotais uzdevums |
Computer Config → Preferences → Scheduled Tasks |
Dienas/nedēļas kolekcija |
"1. posms: noteikšana un statusa pārraudzība uzņēmuma līmenī"
Pārbaude
-
Force GPO Update on test Machine
## On a test workstation gpupdate /force # Restartējiet klienta datoru startēšanas skriptu, vai arī tas aktivizēs nākamo grafiku. Restart-Computer -Force
-
Datu apkopošanas pārbaude
# Pārbaudiet, vai dati ir apkopoti (failu serverī vai no jebkura datora) Get-ChildItem "\\fileserver\SecureBootData$" | Sort-Object LastWriteTime -dilstošā secībā | Select-Object -First 10 # JSON satura pārbaude Get-Content "\\fileserver\SecureBootData$\TESTPC_latest.json" | ConvertFrom-Json
-
Pārbaudīt GPO lietojumprogrammu
# Verify GPO is applied to the computer gpresult /r /scope:computer | Select-String "SecureBoot" s Skripts saglabā arī lokālu kopiju redundances piešķiršanai: Get-ChildItem "C:\ProgramData\SecureBootCollection\"
"1. posms: noteikšana un statusa pārraudzība uzņēmuma līmenī"
2. posms Drošas sāknēšanas sertifikāta atjaunināšanas noslīpēšanas skripti
Svarīgi!: Nodrošiniet, ka 1. posms ir pabeigts, tostarp datu apkopošana katrā beigu punktā uz attālā servera koplietojumiem.
Šajā sadaļā
Skripti, kas nepieciešami 2. posmam
Drošas sāknēšanas krājumu datu kolekcijas skriptu paraugi
|
Skripta nosaukuma paraugs |
Nolūks |
Darbojas sistēmā |
|
Apkopo ierīces statusa datus |
Katrs galapunkts (izmantojot GPO) |
|
|
Ģenerē atskaites un informācijas paneļus |
Administrēšana darbs |
|
|
Automatizē GPO izveidi datu apkopošanai |
Domēna kontrolleris |
|
|
Pilnībā automatizēts, nepārtraukts sekcijas process ar automatizētu GPO izvietošanu sertifikāta instalēšanai |
Administrēšana darbs |
|
|
Plānotāja skripta izvietošana kā ieplānots uzdevums automātiskai ieviešanai |
Domēna kontrolleris |
|
|
Drošas sāknēšanas sertifikāta izmešanas statusa skatīšana jebkurā darbstacijā |
Administrēšana darbs |
|
|
Iespējo drošas sāknēšanas atjaunināšanas uzdevumu |
Beigu punktos, kur uzdevums ir atspējots (palaist tikai vienreiz, lai iespējotu uzdevumu, ja tas ir atspējots) |
atpakaļ uz "2. posms: drošas sāknēšanas sertifikāta atjaunināšanas noslīpēšanas skripti"
Start-SecureBootRolloutOrchestrator.ps1
-
Nolūks: Pilnībā automatizēts, nepārtraukts kauss ar automatizētu GPO izvietošanu.
-
Funkcija
-
Zvani Aggregate-SecureBootData.ps1 ierīces statusam
-
Ģenerē riteņa viļņus, izmantojot pakāpeniskas doublings
-
Izveido GPO sertifikātu izvietošanai, izmantojot kādu no šīm metodēm
-
Droša sāknēšanas grupas politika AvailableUpdatesPolicy = 0x5944 (noklusējums)
-
WinCS metode (parametrs –UseWinCS)
-
-
Izveido AD drošības grupas mērķa rādīšanai
-
Pievieno datora kontus drošības grupām
-
Konfigurē GPO drošības filtrēšanu
-
Saites GPO uz mērķa OU
-
Bloķētu intervālu monitori (nepieejamas ierīces)
-
Automātiskā atbloķēšana, kad ierīces tiek atkoptas
-
-
Lietošana
# Interactive (testing) .\Start-SecureBootRolloutOrchestrator.ps1 ' -AggregationInputPath "\\fileserver\SecureBootData$" ' -ReportBasePath "C:\SecureBootReports" ' -PollIntervalMinutes 30
# Interactive (testing), leveraging WinCS method .\Start-SecureBootRolloutOrchestrator.ps1 ' -AggregationInputPath "\\fileserver\SecureBootData$" ' -ReportBasePath "C:\SecureBootReports" ' -PollIntervalMinutes 1440 -UseWinCS
-
Administrēšana komandas
# List blocked buckets .\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -ListBlockedBuckets
# Unblock specific bucket .\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -UnblockBucket "Dell|Platums5520|BIOS1.2"
# Unblock all .\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -UnblockAll
-
Parametri
Parametrs
Noklusējums
Apraksts
AggregationInputPath
Obligāts
UNC ceļš uz galapunkta JSON failiem
ReportBasePath
Obligāts
Lokālais ceļš atskaitēm un štatam
TargetOU
Domēna sakne
OU, lai saistītu GPOS
WavePrefix
SecureBoot-Rollout
GPO/grupu nosaukumdošanas prefikss
MaxWaitHours
72
Stundas pirms ierīces sasniedzamības pārbaudes
PollIntervalMinutes
1440
Minūtes starp statusa pārbaudēm
DryRun
False
Rādīt, kas notiks bez izmaiņām
atpakaļ uz "2. posms: drošas sāknēšanas sertifikāta atjaunināšanas noslīpēšanas skripti"
Deploy-OrchestratorTask.ps1
-
Nolūks: Izvieto plānotāju kā Windows ieplānotu uzdevumu.
-
Priekšrocības
-
Nav PowerShell drošības uzvedņu (ExecutionPolicy Bypass)
-
Darbojas nepārtraukti fonā
-
Lietotāja mijiedarbība nav nepieciešama
-
Atkārtota palaišana
-
-
Lietošana
-
Izvietošana, izmantojot domēna pakalpojuma kontu (ieteicams)
-
Izmantot pieejamos grupas politika (noklusējuma metode)
.\Deploy-OrchestratorTask.ps1 ' -AggregationInputPath "\\server\SecureBootData$" ' -ReportBasePath "C:\SecureBootReports" ' -ServiceAccount "DOMAIN\svc_secureboot"
-
WinCS metodes izmantošana
.\Deploy-OrchestratorTask.ps1 ' -AggregationInputPath "\\server\SecureBootData$" ' -ReportBasePath "C:\SecureBootReports" ' -ServiceAccount "DOMAIN\svc_secureboot" -UseWinCS
-
-
Izvietošana, izmantojot SYSTEM kontu
-
Izmantot pieejamos grupas politika (noklusējuma metode)
.\Deploy-OrchestratorTask.ps1 ' -AggregationInputPath "\\server\SecureBootData$" ' -ReportBasePath "C:\SecureBootReports"
-
WinCS method.\Deploy-OrchestratorTask.ps1
-AggregationInputPath "\\server\SecureBootData$" ' -ReportBasePath "C:\SecureBootReports" -UseWinCS
-
Pakalpojumu konta prasības
-
Domēna Administrēšana (New-GPO, New-ADGroup, Add-ADGroupMember)
-
Lasīt piekļuvi JSON failu koplietošanai
-
Write access to ReportBasePath
-
-
-
atpakaļ uz "2. posms: drošas sāknēšanas sertifikāta atjaunināšanas noslīpēšanas skripti"
Get-SecureBootRolloutStatus.ps1
-
Nolūks: Skatiet izvēršamās norises no jebkuras darbstacijas.
-
Kas tiek rādīts
-
Ieplānotā uzdevuma stāvoklis (palaists/gatavs/apturēts)
-
Pašreizējais viļņu skaitlis
-
Atlasītas ierīces salīdzinājumā ar atjauninātajām ierīcēm
-
Vizuālā norises josla
-
Bloķēto intervālu kopsavilkums
-
Saite uz jaunāko HTML informācijas paneli
-
-
Lietošana
# Quick status check .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports"
# Continuous monitoring (refreshes every 30 seconds) .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" — skatīties 30
# View blocked buckets .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" -ShowBlocked
# View wave history .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" -ShowWaves
# View recent log .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" -ShowLog
# Open dashboard in browser .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" - OpenDashboard
-
Paraugu izvade
============================================================== DROŠAS SĀKNĒŠANAS IZVĒRŠES STATUSS 17.02.2026. 19:30:00 ======================================================
Scheduled Task: Running
ROLLOUT PROGRESS ---------------------------------------- Statuss: InProgress Pašreizējais viļņs: 5 Mērķa kopsumma: 1250 Kopā atjaunināts: 847
Progress: [█████████████████████░░░░░░░░░░░░░░░░░░░] 67.8%
BLOCKED BUCKETS: 2 buckets need attention Palaist ar -ShowBlocked, lai iegūtu papildinformāciju
LATEST DASHBOARD C:\SecureBootReports\Aggregation_20260217_193000\SecureBoot_Dashboard.html __________________________________________________________________________________________
atpakaļ uz "2. posms: drošas sāknēšanas sertifikāta atjaunināšanas noslīpēšanas skripti"
E2E izvietošanas darbības (ātrās atsauču rokasgrāmata)
Šajā sadaļā
1. posms Atklāšanas infrastruktūra
-
1. darbība. Kolekcijas koplietošanas izveide
# On file server $sharePath = "D:\SecureBootData" New-Item -ItemType Directory -Path $sharePath -Force New-SmbShare -Name "SecureBootData$" -Path $sharePath -FullAccess "Domain Admins" -ChangeAccess "Domain Computers"
# Set NTFS permissions $acl = Get-Acl $sharePath $rule = New-Object System.Security.AccessControl.FileSystemAccessRule("Domain Computers","Modify","Allow") $acl. AddAccessRule($rule) Set-Acl $sharePath $acl
-
2. darbība. GPO izvietošana
.\Deploy-GPO-SecureBootCollection.ps1 ` -DomainName "contoso.com" ' -OUPath "OU=Workstations,DC=contoso,DC=com" ' -CollectionSharePath "\\server\SecureBootData$"
-
3. darbība. Uzgaidiet, līdz galapunktiem tiek pievienota atskaite (24–48 stundas)
# Pārbaudīt kolekcijas norisi (Get-ChildItem "\\server\SecureBootData$" -Filter "*.json"). Skaits
atpakaļ uz "E2E izvietošanas darbības (ātrās atsauču rokasgrāmata)".
2. posms Ābola rullī
-
4. darbība. Priekšnosacījumu pārbaude
-
Izvietota GPO noteikšana (2. darbība)
-
Vismaz 50+ galapunktu atskaišu JSON
-
Pakalpojuma konts ar domēna Administrēšana tiesībām
-
Pārvaldības serveris ar PowerShell 5.1+
-
-
5. darbība. Esiet asi cistors kā ieplānots uzdevums
.\Deploy-OrchestratorTask.ps1 ` -AggregationInputPath "\\server\SecureBootData$" ' -ReportBasePath "C:\SecureBootReports" ' -ServiceAccount "DOMAIN\svc_secureboot"
-
6. darbība. Norises pārraudzība
.\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports"
-
7. darbība. Informācijas paneļa skatīšana
.\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" -OpenDashboard
-
8. darbība. Bloķēto intervālu pārvaldība
# List blocked .\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -ListBlockedBuckets
# Investigate and unblock .\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -UnblockBucket "Manufacturer|Modelis|BIOS"
-
9. darbība. Pabeigšanas pārbaude
.\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" # Statusā jābūt redzamam "Pabeigts"
atpakaļ uz "E2E izvietošanas darbības (ātrās atsauču rokasgrāmata)".
Štata Files
Austrators uztur stāvokli ReportBasePath\RolloutState\:
|
Fails |
Apraksts |
|
RolloutState.json |
Viļņu vēsture, atlasītās ierīces, statuss |
|
BlockedBuckets.json |
Intervāliem nepieciešama izpēte |
|
DeviceHistory.json |
Ierīces izsekošana pēc resursdatora nosaukuma |
|
Orchestrator_YYYYMMDD.log |
Ikdienas darbību žurnāli |
atpakaļ uz "E2E izvietošanas darbības (ātrās atsauču rokasgrāmata)".
Problēmu novēršana
Šajā sadaļā
Mantots not progress
-
Pārbaudīt ieplānoto uzdevumu
Get-ScheduledTask -TaskName "SecureBoot-Rollout-Orchestrator"
-
Žurnālu pārbaude
Get-Content "C:\SecureBootReports\RolloutState\Orchestrator_*.log" -Tail 50
-
JSON datu svaiguma pārbaude
(Get-ChildItem "\\server\SecureBootData$" -Filter "*.json" | Where-Object { $_.LastWriteTime -gt (Get-Date).AddDays(-1) }).Count
Bloķētie intervāli
-
Saraksts ir bloķēts.
.\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -ListBlockedBuckets
-
Izpētiet ierīces sasniedzamību.
-
Pārbaudiet, vai nav aparātprogrammatūras problēmu.
-
Atbloķēt pēc izpētes.
GPO netiek lietots
-
Pārbaudiet, vai GPO pastāv.
Get-GPO -Name "SecureBoot-Rollout-Wave*"
-
Pārbaudiet drošības filtrēšanu.
Get-GPPermission -Name "GPO-Name" -All
-
Pārbaudiet, vai dators ir drošības grupā.
-
Lietojiet GPO mērķī.
gpupdate /force