Rakenduskoht
Windows 10 Windows 10, version 1607, all editions Win 10 Ent LTSC 2019 Win 10 IoT Ent LTSC 2019 Windows 10 IoT Core LTSC Windows 10 Enterprise LTSC 2021 Windows 10 IoT Enterprise LTSC 2021 Windows 10, version 22H2, all editions Windows 11 Home and Pro, version 21H2 Windows 11 Enterprise Multi-Session, version 21H2 Windows 11 Enterprise and Education, version 21H2 Windows 11 IoT Enterprise, version 21H2 Windows 11 Home and Pro, version 22H2 Windows 11 Enterprise Multi-Session, version 22H2 Windows 11 Enterprise and Education, version 22H2 Windows 11 IoT Enterprise, version 22H2 Windows 11 SE, version 23H2 Windows 11 Home and Pro, version 23H2 Windows 11 Enterprise and Education, version 23H2 Windows 11 Enterprise Multi-Session, version 23H2 Windows 11 SE, version 24H2 Windows 11 Enterprise and Education, version 24H2 Windows 11 Enterprise Multi-Session, version 24H2 Windows 11 Home and Pro, version 24H2 Windows 11 IoT Enterprise, version 24H2 Windows Server 2012 ESU Windows Server 2012 R2 ESU Windows Server 2016 Windows Server 2019 Windows Server 2022 Windows Server 2025

Avaldamise algne kuupäev: 17. november 2025

KB ID: 5072718

Secure Boot Inventory Data Collectioni skripti näidis

Kopeerige ja kleepige see näidisskript ning muutke seda vastavalt oma keskkonnale: turvalise algkäivituse inventuuri andmete kogumise näidisskript.

Sample_Secure_Boot_Inventory_Data_Collection_script

# 1. HostName PS-i versioon: kõik | Haldus: ei | Süsteeminõuded: pole proovige {     $hostname = $env:COMPUTERNAME     if ([string]::IsNullOrEmpty($hostname)) {         Write-Warning "Hostinime ei saanud määratleda"         $hostname = "Tundmatu"     }     Write-Host "Hostname: $hostname" (Hostinimi: $hostname) } püüdmine {     Write-Warning "Hostinime toomisel ilmnes tõrge: $_"     $hostname = "Tõrge"     Write-Host "Hostname: $hostname" }

# 2. CollectionTime PS-i versioon: kõik | Haldus: ei | Süsteeminõuded: pole proovige {     $collectionTime = toomiskuupäev     if ($null -eq $collectionTime) {         Write-Warning "Praegust kuupäeva/kellaaega ei saanud tuua"         $collectionTime = "Tundmatu"     }     Write-Host "Kogumisaeg: $collectionTime" } püüdmine {     Write-Warning "Kuupäeva/kellaaja toomisel ilmnes tõrge: $_"     $collectionTime = "Tõrge"     Write-Host "Kogumisaeg: $collectionTime" }

# Registry: Secure Boot Main Key (3 values)

# 3. SecureBootEnabled # PS versioon: 3.0+ | Haldus: võib olla vajalik | Süsteeminõuded: UEFI/Secure Booti toega süsteem proovige {     $secureBootEnabled = Confirm-SecureBootUEFI –ErrorAction Stop     Write-Host "Secure Boot Enabled: $secureBootEnabled" } püüdmine {     Write-Warning "Secure Booti olekut ei saa cmdlet-käsu kaudu määratleda: $_"     # Proovige registri taandeid     proovige {         $regValue = Get-ItemProperty -Tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\State" -Name UEFISecureBootEnabled -ErrorAction Stop         $secureBootEnabled = [bool]$regValue.UEFISecureBootEnabled         Write-Host "Secure Boot Enabled: $secureBootEnabled"     } püüdmine {         Write-Warning "Secure Booti olekut ei saa registri kaudu määratleda. Süsteem ei pruugi UEFI-liidese/secure Booti toetada."         $secureBootEnabled = $null         Write-Host "Turvaline käivitamine lubatud: pole saadaval"     } }

# 4. HighConfidenceOptOut PS-i versioon: kõik | Haldus: võib olla vajalik | Süsteeminõuded: pole proovige {     $regValue = Get-ItemProperty -tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot" -Name HighConfidenceOptOut –ErrorAction Stop     $highConfidenceOptOut = $regValue.HighConfidenceOptOut     Write-Host "Väga kindlustundega loobumine: $highConfidenceOptOut" } püüdmine {     Write-Warning "HighConfidenceOptOut registrivõtit ei leitud või puudub juurdepääs"     $highConfidenceOptOut = $null     Write-Host "Väga kindlustundega loobumine: pole saadaval" }

# 5. AvailableUpdates PS-i versioon: kõik | Haldus: võib olla vajalik | Süsteeminõuded: pole proovige {     $regValue = Get-ItemProperty -tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot" -Name AvailableUpdates -ErrorAction Stop     $availableUpdates = $regValue.AvailableUpdates     if ($null -ne $availableUpdates) {         # Teisenda kuueteistkümnendvormingusse         $availableUpdatesHex = "0x{0:X}" -f $availableUpdates         Write-Host "Saadaolevad Teabevärskendused: $availableUpdatesHex"     } else {         Write-Host "Saadaval Teabevärskendused: pole saadaval"     } } püüdmine {     Write-Warning "AvailableUpdates registrivõtit ei leitud või puudub juurdepääs"     $availableUpdates = $null     Write-Host "Saadaval Teabevärskendused: pole saadaval" }

# Registry: Servicing Key (3 values)

# 6. UEFICA2023Status PS-i versioon: kõik | Haldus: võib olla vajalik | Süsteeminõuded: pole proovige {     $regValue = Get-ItemProperty -tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\Servicing" -Name UEFICA2023Status –ErrorAction Stop     $uefica 2023Status = $regValue.UEFICA2023Status     Write-Host "UEFI CA 2023 olek: $uefica 2023Status" } püüdmine {     Write-Warning "UEFICA2023Status registrivõtit ei leitud või puudub juurdepääs"     $uefica 2023Status = $null     Write-Host "UEFI CA 2023 olek: pole saadaval" }

# 7. UEFICA2023Capable PS-i versioon: kõik | Haldus: võib olla vajalik | Süsteeminõuded: pole proovige {     $regValue = Get-ItemProperty -Tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\Servicing" -Name UEFICA2023Capable –ErrorAction Stop     $uefica 2023Capable = $regValue.UEFICA2023Capable     Write-Host "UEFI CA 2023 capable: $uefica 2023Capable" } püüdmine {     Write-Warning "UEFICA2023Capable registry key not found or inaccessible"     $uefica 2023Capable = $null     Write-Host "UEFI CA 2023 toega: pole saadaval" }

# 8. UEFICA2023Error PS-i versioon: kõik | Haldus: võib olla vajalik | Süsteeminõuded: pole proovige {     $regValue = Get-ItemProperty -Tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\Servicing" -Name UEFICA2023Error -ErrorAction Stop     $uefica 2023Error = $regValue.UEFICA2023Error     Write-Host "UEFI CA 2023 tõrge: $uefica 2023Error" } püüdmine {     Write-Warning "UEFICA2023Tõrke registrivõtit ei leitud või puudub juurdepääs"     $uefica 2023Error = $null     Write-Host "UEFI CA 2023 tõrge: pole saadaval" }

# Registry: Device Attributes (7 values)

# 9. OEMManufacturerName PS-i versioon: kõik | Haldus: võib olla vajalik | Süsteeminõuded: pole proovige {     $regValue = Get-ItemProperty -Tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name OEMManufacturerName –ErrorAction Stop     $oemManufacturerName = $regValue.OEMManufacturerName     if ([string]::IsNullOrEmpty($oemManufacturerName)) {         Write-Warning "OEMManufacturerName is empty" ("OEMManufacturerName is empty")         $oemManufacturerName = "Tundmatu"     }     Write-Host "OEM-i tootja nimi: $oemManufacturerName" } püüdmine {     Write-Warning "OEMManufacturerName registrivõtit ei leitud või puudub juurdepääs"     $oemManufacturerName = $null     Write-Host "OEM-i tootja nimi: pole saadaval" }

# 10. OEMModelSystemFamily PS-i versioon: kõik | Haldus: võib olla vajalik | Süsteeminõuded: pole proovige {     $regValue = Get-ItemProperty -tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name OEMModelSystemFamily -ErrorAction Stop     $oemModelSystemFamily = $regValue.OEMModelSystemFamily     if ([string]::IsNullOrEmpty($oemModelSystemFamily)) {         Write-Warning "OEMModelSystemFamily is empty" (OEMModelSystemFamily on tühi)         $oemModelSystemFamily = "Tundmatu"     }     Write-Host "OEM-i mudeli süsteemipere: $oemModelSystemFamily" } püüdmine {     Write-Warning "OEMModelSystemFamily registrivõtit ei leitud või puudub juurdepääs"     $oemModelSystemFamily = $null     Write-Host "OEM-i mudeli süsteemipere: pole saadaval" }

# 11. OEMModelNumber PS-i versioon: kõik | Haldus: võib olla vajalik | Süsteeminõuded: pole proovige {     $regValue = Get-ItemProperty -Tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name OEMModelNumber -ErrorAction Stop     $oemModelNumber = $regValue.OEMModelNumber     if ([string]::IsNullOrEmpty($oemModelNumber)) {         Write-Warning "OEMModelNumber on tühi"         $oemModelNumber = "Tundmatu"     }     Write-Host "OEM-mudeli number: $oemModelNumber" } püüdmine {     Write-Warning "OEMModelNumber registrivõtit ei leitud või puudub juurdepääs"     $oemModelNumber = $null     Write-Host "OEM-i mudeli number: pole saadaval" }

# 12. FirmwareVersion PS-i versioon: kõik | Haldus: võib olla vajalik | Süsteeminõuded: pole proovige {     $regValue = Get-ItemProperty -Tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name FirmwareVersion -ErrorAction Stop     $firmwareVersion = $regValue.FirmwareVersion     if ([string]::IsNullOrEmpty($firmwareVersion)) {         Write-Warning "FirmwareVersion is empty" (Püsivaraversioon on tühi)         $firmwareVersion = "Tundmatu"     }     Write-Host "Püsivara versioon: $firmwareVersion" } püüdmine {     Write-Warning "FirmwareVersion registrivõtit ei leitud või puudub juurdepääs"     $firmwareVersion = $null     Write-Host "Püsivara versioon: pole saadaval" }

# 13. FirmwareReleaseDate PS-i versioon: kõik | Haldus: võib olla vajalik | Süsteeminõuded: pole proovige {     $regValue = Get-ItemProperty -tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name FirmwareReleaseDate –ErrorAction Stop     $firmwareReleaseDate = $regValue.FirmwareReleaseDate     if ([string]::IsNullOrEmpty($firmwareReleaseDate)) {         Write-Warning "FirmwareReleaseDate is empty" (PüsivaraReleaseDate on tühi)         $firmwareReleaseDate = "Tundmatu"     }     Write-Host "Püsivara väljaandmiskuupäev: $firmwareReleaseDate" } püüdmine {     Write-Warning "FirmwareReleaseDate registry key not found or inaccessible"     $firmwareReleaseDate = $null     Write-Host "Püsivara väljaandmiskuupäev: pole saadaval" }

# 14. OSArchitecture PS-i versioon: kõik | Haldus: ei | Süsteeminõuded: pole proovige {     $osArchitecture = $env:PROCESSOR_ARCHITECTURE     if ([string]::IsNullOrEmpty($osArchitecture)) {         # Proovige registri taandeid         $regValue = Get-ItemProperty -tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name OSArchitecture -ErrorAction Stop         $osArchitecture = $regValue.OSArchitecture     }     if ([string]::IsNullOrEmpty($osArchitecture)) {         Write-Warning "OSArchitecture'i ei saanud määratleda"         $osArchitecture = "Tundmatu"     }     Write-Host "OS-i arhitektuur: $osArchitecture" } püüdmine {     Write-Warning "OSArchitecture toomisel ilmnes tõrge: $_"     $osArchitecture = "Tundmatu"     Write-Host "OS-i arhitektuur: $osArchitecture" }

# 15. CanAttemptUpdateAfter (FILETIME) PS-i versioon: kõik | Haldus: võib olla vajalik | Süsteeminõuded: pole proovige {     $regValue = Get-ItemProperty -tee "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name CanAttemptUpdateAfter –ErrorAction Stop     $canAttemptUpdateAfter = $regValue.CanAttemptUpdateAfter     # Teisenda FILETIME kehtivaks arvuks DateTime     kui ($null -ne $canAttemptUpdateAfter -ja $canAttemptUpdateAfter -on [pikk]) {         proovige {             $canAttemptUpdateAfter = [DateTime]::FromFileTime($canAttemptUpdateAfter)         } püüdmine {             Write-Warning "CanAttemptUpdateAfter FILETIME'i ei saanud dateTime'iks teisendada"         }     }     Write-Host "Võib proovida värskendamist pärast: $canAttemptUpdateAfter" } püüdmine {     Write-Warning "CanAttemptUpdateAfter registry key not found or inaccessible"     $canAttemptUpdateAfter = $null     Write-Host "Võib proovida värskendamist pärast: pole saadaval" }

# Event Logs: System Log (5 values)

# 16-20. Event Log queries # PS versioon: 3.0+ | Haldus: võib olla vajalik süsteemilogi | Süsteeminõuded: pole proovige {     $allEventIds = @(1801; 1808)     $events = @(Get-WinEvent -FilterHashtable @{LogName='System'; ID=$allEventIds} -MaxEvents 20 -ErrorAction Stop)

    if ($events.Count -eq 0) {         Write-Warning süsteemilogist "Secure Booti sündmusi (1801/1808) ei leitud"         $latestEventId = $null         $bucketId = $null         $confidence = $null         $event 1801Kogum = 0         $event 1808Count = 0         Write-Host "Uusim sündmuse ID: pole saadaval"         Write-Host "Salve ID: pole saadaval"         Write-Host "Usaldus: pole saadaval"         Write-Host "Sündmuse 1801 arv: 0"         Write-Host "Sündmuse 1808 arv: 0"     } else {         # 16. LatestEventId         $latestEvent = $events | Sort-Object – laskuv järjestus | Select-Object –esimene 1         if ($null -eq $latestEvent) {             Write-Warning "Uusimat sündmust ei saanud määratleda"             $latestEventId = $null             Write-Host "Uusim sündmuse ID: pole saadaval"         } else {             $latestEventId = $latestEvent.Id             Write-Host "Uusim sündmuse ID: $latestEventId"         }

        # 17. BucketID - Extracted from Event 1801/1808 if ($null -ne $latestEvent -and $null -ne $latestEvent.Message) {             if ($latestEvent.Message -match 'BucketId:\s*(.+)') {                 $bucketId = $matches[1]. Trimmi()                 Write-Host "Salve ID: $bucketId"             } else {                 Write-Warning "BucketId-d ei leitud sündmusesõnumist"                 $bucketId = $null                 Write-Host "Salve ID: sündmusest ei leitud"             }         } else {             Write-Warning "Uusim sündmus või sõnum on nullväärtusega, ei saa ekstraktida BucketId-d"             $bucketId = $null             Write-Host "Salve ID: pole saadaval"         }

        # 18. Confidence - Extracted from Event 1801/1808 if ($null -ne $latestEvent -and $null -ne $latestEvent.Message) {             if ($latestEvent.Message -match 'BucketConfidenceLevel:\s*(.+)') {                 $confidence = $matches[1]. Trimmi()                 Write-Host "Usaldus: $confidence"             } else {                 Write-Warning "Sündmusesõnumist ei leitud usaldustaset"                 $confidence = $null                 Write-Host "Usaldus: sündmusest ei leitud"             }         } else {             Write-Warning "Viimane sündmus või sõnum on nullväärtusega, ei saa ekstraktida usaldust"             $confidence = $null             Write-Host "Usaldus: pole saadaval"         }

        # 19. Event1801Count $event 1801Array = @($events | Where-Object {$_. ID -eq 1801})         $event 1801Count = $event 1801Array.Count         Write-Host "Sündmuse 1801 arv: $event 1801Count"

        # 20. Event1808Count $event 1808Array = @($events | Where-Object {$_. ID -eq 1808})         $event 1808Count = $event 1808Array.Count         Write-Host "Sündmuse 1808 arv: $event 1808Count"     } } püüdmine {     Write-Warning "Sündmuselogide toomisel ilmnes tõrge. Võib vajada administraatoriõigusi: $_"     $latestEventId = $null     $bucketId = $null     $confidence = $null     $event 1801Kogum = 0     $event 1808Count = 0     Write-Host "Uusim sündmuse ID: tõrge"     Write-Host "Salve ID: tõrge"     Write-Host "Confidence: Error" (Usaldusväärsus: tõrge)     Write-Host "Sündmuse 1801 arv: 0"     Write-Host "Sündmuse 1808 arv: 0" }

# WMI/CIM Queries (4 values)

# 21. OSVersion # PS Versioon: 3.0+ (Get-WmiObject kasutamine versioonis 2.0) | Haldus: ei | Süsteeminõuded: pole proovige {     $osInfo = Get-CimInstance Win32_OperatingSystem –ErrorAction Stop     if ($null -eq $osInfo -või [string]::IsNullOrEmpty($osInfo.Version)) {         Write-Warning "OS-i versiooni ei saanud tuua"         $osVersion = "Tundmatu"     } else {         $osVersion = $osInfo.Version     }     Write-Host "OS-i versioon: $osVersion" } püüdmine {     Write-Warning "Os-i versiooni toomisel ilmnes tõrge: $_"     $osVersion = "Tundmatu"     Write-Host "OS-i versioon: $osVersion" }

# 22. LastBootTime # PS Versioon: 3.0+ (Get-WmiObject kasutamine versioonis 2.0) | Haldus: ei | Süsteeminõuded: pole proovige {     $osInfo = Get-CimInstance Win32_OperatingSystem –ErrorAction Stop     if ($null -eq $osInfo -or $null -eq $osInfo.LastBootUpTime) {         Write-Warning "Viimast algkäivitusaega ei saanud tuua"         $lastBootTime = $null         Write-Host "Viimane algkäivitusaeg: pole saadaval"     } else {         $lastBootTime = $osInfo.LastBootUpTime         Write-Host "Viimane algkäivitusaeg: $lastBootTime"     } } püüdmine {     Write-Warning "Tõrge viimase käivitusaja toomisel: $_"     $lastBootTime = $null     Write-Host "Viimane algkäivitusaeg: pole saadaval" }

# 23. BaseBoardManufacturer # PS Versioon: 3.0+ (Get-WmiObject kasutamine versioonis 2.0) | Haldus: ei | Süsteeminõuded: pole proovige {     $baseBoard = Get-CimInstance Win32_BaseBoard –ErrorAction Stop     if ($null -eq $baseBoard -või [string]::IsNullOrEmpty($baseBoard.Manufacturer)) {         Write-Warning "Baaslaua tootjat ei saanud tuua"         $baseBoardManufacturer = "Tundmatu"     } else {         $baseBoardManufacturer = $baseBoard.Manufacturer     }     Write-Host "Alusplaadi tootja: $baseBoardManufacturer" } püüdmine {     Write-Warning "Tõrge alusplaadi tootja toomisel: $_"     $baseBoardManufacturer = "Tundmatu"     Write-Host "Alusplaadi tootja: $baseBoardManufacturer" }

# 24. BaseBoardProduct # PS Versioon: 3.0+ (Get-WmiObject kasutamine versioonis 2.0) | Haldus: ei | Süsteeminõuded: pole proovige {     $baseBoard = Get-CimInstance Win32_BaseBoard –ErrorAction Stop     if ($null -eq $baseBoard -või [string]::IsNullOrEmpty($baseBoard.Product)) {         Write-Warning "Baaslaua toodet ei saanud tuua"         $baseBoardProduct = "Tundmatu"     } else {         $baseBoardProduct = $baseBoard.Product     }     Write-Host "Baaslaua toode: $baseBoardProduct" } püüdmine {     Write-Warning "Alusplaadi toote toomisel ilmnes tõrge: $_"     $baseBoardProduct = "Tundmatu"     Write-Host "Baaslaua toode: $baseBoardProduct"}

Kas vajate veel abi?

Kas soovite rohkem valikuvariante?

Siin saate tutvuda tellimusega kaasnevate eelistega, sirvida koolituskursusi, õppida seadet kaitsma ja teha veel palju muud.