Van toepassing op
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

Oorspronkelijke publicatiedatum: dinsdag 17 november 2025

KB-id: 5072718

Voorbeeld van een script voor het verzamelen van inventarisgegevens voor veilig opstarten

Kopieer en plak dit voorbeeldscript en wijzig deze indien nodig voor uw omgeving: het voorbeeldscript Voor het verzamelen van inventarisgegevens voor beveiligd opstarten.

Sample_Secure_Boot_Inventory_Data_Collection_script

# 1. HostName # PS-versie: Alle | Beheer: Nee | Systeemvereisten: Geen probeer {     $hostname = $env:COMPUTERNAAM     if ([string]::IsNullOrEmpty($hostname)) {         Write-Warning 'Hostnaam kan niet worden bepaald'         $hostname = "Onbekend"     }     Write-Host Hostnaam: $hostname } catch {     Write-Warning 'Fout bij het ophalen van hostnaam: $_'     $hostname = "Fout"     Write-Host Hostnaam: $hostname }

# 2. CollectionTime # PS-versie: Alle | Beheer: Nee | Systeemvereisten: Geen probeer {     $collectionTime = Get-Date     if ($null -eq $collectionTime) {         Write-Warning 'Kan huidige datum/tijd niet ophalen'         $collectionTime = "Onbekend"     }     Write-Host 'Verzameltijd: $collectionTime' } catch {     Write-Warning 'Fout bij het ophalen van datum/tijd: $_'     $collectionTime = "Fout"     Write-Host 'Verzameltijd: $collectionTime' }

# Registry: Secure Boot Main Key (3 values)

# 3. SecureBootEnabled # PS-versie: 3.0+ | Beheer: mogelijk vereist | Systeemvereisten: systeem dat geschikt is voor UEFI/Beveiligd opstarten probeer {     $secureBootEnabled = Confirm-SecureBootUEFI -ErrorAction Stop     Write-Host Beveiligd opstarten ingeschakeld: $secureBootEnabled } catch {     Write-Warning 'Kan de status van beveiligd opstarten niet bepalen via cmdlet: $_'     # Probeer terugval in het register     probeer {         $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\State" -Name UEFISecureBootEnabled -ErrorAction Stop         $secureBootEnabled = [bool]$regValue.UEFISecureBootEnabled         Write-Host Beveiligd opstarten ingeschakeld: $secureBootEnabled     } catch {         Write-Warning 'Kan de status van beveiligd opstarten niet bepalen via het register. Het systeem biedt mogelijk geen ondersteuning voor UEFI/Beveiligd opstarten.         $secureBootEnabled = $null         Write-Host 'Beveiligd opstarten ingeschakeld: niet beschikbaar'     } }

# 4. HighConfidenceOptOut # PS-versie: Alle | Beheer: mogelijk vereist | Systeemvereisten: Geen probeer {     $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot" -Name HighConfidenceOptOut -ErrorAction Stop     $highConfidenceOptOut = $regValue.HighConfidenceOptOut     Write-Host 'Afmelden met hoge betrouwbaarheid: $highConfidenceOptOut' } catch {     Write-Warning 'HighConfidenceOptOut-registersleutel niet gevonden of niet toegankelijk'     $highConfidenceOptOut = $null     Write-Host 'Afmelden met hoge betrouwbaarheid: niet beschikbaar' }

# 5. AvailableUpdates # PS-versie: Alle | Beheer: mogelijk vereist | Systeemvereisten: Geen probeer {     $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot" -Name AvailableUpdates -ErrorAction Stop     $availableUpdates = $regValue.AvailableUpdates     if ($null -ne $availableUpdates) {         # Converteren naar hexadecimale indeling         $availableUpdatesHex = "0x{0:X}" -f $availableUpdates         Write-Host 'Beschikbaar Updates: $availableUpdatesHex'     } else {         Write-Host 'Beschikbaar Updates: niet beschikbaar'     } } catch {     Write-Warning 'Registersleutel AvailableUpdates is niet gevonden of niet toegankelijk'     $availableUpdates = $null     Write-Host 'Beschikbaar Updates: niet beschikbaar' }

# Registry: Servicing Key (3 values)

# 6. UEFICA2023Status # PS-versie: Alle | Beheer: mogelijk vereist | Systeemvereisten: Geen probeer {     $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\Servicing" -Name UEFICA2023Status -ErrorAction Stop     $uefica 2023Status = $regValue.UEFICA2023Status     Write-Host "UEFI CA 2023-status: $uefica 2023Status" } catch {     Write-Warning 'Registersleutel UEFICA2023Status is niet gevonden of niet toegankelijk'     $uefica 2023Status = $null     Write-Host 'UEFI CA 2023-status: niet beschikbaar' }

# 7. UEFICA2023Capable # PS-versie: Alle | Beheer: mogelijk vereist | Systeemvereisten: Geen probeer {     $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\Servicing" -Name UEFICA2023Capable -ErrorAction Stop     $uefica 2023Capable = $regValue.UEFICA2023Capable     Write-Host 'Geschikt voor UEFI CA 2023: $uefica 2023Capable' } catch {     Write-Warning UEFICA2023Geschikte registersleutel niet gevonden of niet toegankelijk     $uefica 2023Capable = $null     Write-Host 'UEFI CA 2023 capable: Not available' }

# 8. UEFICA2023Error # PS-versie: Alle | Beheer: mogelijk vereist | Systeemvereisten: Geen probeer {     $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\Servicing" -Name UEFICA2023Error -ErrorAction Stop     $uefica 2023Error = $regValue.UEFICA2023Error     Write-Host 'UEFI CA 2023-fout: $uefica 2023Error' } catch {     Write-Warning 'UEFICA2023Error-registersleutel niet gevonden of niet toegankelijk'     $uefica 2023Fout = $null     Write-Host 'UEFI CA 2023-fout: niet beschikbaar' }

# Registry: Device Attributes (7 values)

# 9. OEMManufacturerName # PS-versie: Alle | Beheer: mogelijk vereist | Systeemvereisten: Geen probeer {     $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name OEMManufacturerName -ErrorAction Stop     $oemManufacturerName = $regValue.OEMManufacturerName     if ([string]::IsNullOrEmpty($oemManufacturerName)) {         Write-Warning "OEMManufacturerName is leeg"         $oemManufacturerName = "Onbekend"     }     Write-Host "OEM-fabrikantnaam: $oemManufacturerName" } catch {     Write-Warning "OEMManufacturerName registersleutel niet gevonden of niet toegankelijk"     $oemManufacturerName = $null     Write-Host "OEM-fabrikantnaam: niet beschikbaar" }

# 10. OEMModelSystemFamily # PS-versie: Alle | Beheer: mogelijk vereist | Systeemvereisten: Geen probeer {     $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name OEMModelSystemFamily -ErrorAction Stop     $oemModelSystemFamily = $regValue.OEMModelSystemFamily     if ([string]::IsNullOrEmpty($oemModelSystemFamily)) {         Write-Warning "OEMModelSystemFamily is leeg"         $oemModelSystemFamily = "Onbekend"     }     Write-Host "OEM-modelsysteemfamilie: $oemModelSystemFamily" } catch {     Write-Warning registersleutel OEMModelSystemFamily niet gevonden of niet toegankelijk     $oemModelSystemFamily = $null     Write-Host "OEM-modelsysteemfamilie: niet beschikbaar" }

# 11. OEMModelNumber # PS-versie: Alle | Beheer: mogelijk vereist | Systeemvereisten: Geen probeer {     $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name OEMModelNumber -ErrorAction Stop     $oemModelNumber = $regValue.OEMModelNumber     if ([string]::IsNullOrEmpty($oemModelNumber)) {         Write-Warning "OEMModelNumber is leeg"         $oemModelNumber = "Onbekend"     }     Write-Host "OEM-modelnummer: $oemModelNumber" } catch {     Write-Warning "OEMModelNumber registersleutel niet gevonden of niet toegankelijk"     $oemModelNumber = $null     Write-Host "OEM-modelnummer: niet beschikbaar" }

# 12. FirmwareVersion # PS-versie: Alle | Beheer: mogelijk vereist | Systeemvereisten: Geen probeer {     $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name FirmwareVersion -ErrorAction Stop     $firmwareVersion = $regValue.FirmwareVersion     if ([string]::IsNullOrEmpty($firmwareVersion)) {         Write-Warning FirmwareVersion is leeg         $firmwareVersion = "Onbekend"     }     Write-Host firmwareversie: $firmwareVersion } catch {     Write-Warning 'FirmwareVersion-registersleutel niet gevonden of niet toegankelijk'     $firmwareVersion = $null     Write-Host "Firmwareversie: niet beschikbaar" }

# 13. FirmwareReleaseDate # PS-versie: Alle | Beheer: mogelijk vereist | Systeemvereisten: Geen probeer {     $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name FirmwareReleaseDate -ErrorAction Stop     $firmwareReleaseDate = $regValue.FirmwareReleaseDate     if ([string]::IsNullOrEmpty($firmwareReleaseDate)) {         Write-Warning "FirmwareReleaseDate is leeg"         $firmwareReleaseDate = "Onbekend"     }     Write-Host "Firmware releasedatum: $firmwareReleaseDate" } catch {     Write-Warning 'FirmwareReleaseDate-registersleutel niet gevonden of niet toegankelijk'     $firmwareReleaseDate = $null     Write-Host "Firmware releasedatum: niet beschikbaar" }

# 14. OSArchitecture # PS-versie: Alle | Beheer: Nee | Systeemvereisten: Geen probeer {     $osArchitecture = $env:PROCESSOR_ARCHITECTURE     if ([string]::IsNullOrEmpty($osArchitecture)) {         # Probeer terugval in het register         $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name OSArchitecture -ErrorAction Stop         $osArchitecture = $regValue.OSArchitecture     }     if ([string]::IsNullOrEmpty($osArchitecture)) {         Write-Warning 'OSArchitecture kan niet worden bepaald'         $osArchitecture = 'Onbekend'     }     Write-Host 'Architectuur van het besturingssysteem: $osArchitecture' } catch {     Write-Warning 'Fout bij het ophalen van OSArchitecture: $_'     $osArchitecture = "Onbekend"     Write-Host 'Architectuur van het besturingssysteem: $osArchitecture' }

# 15. CanAttemptUpdateAfter (FILETIME) # PS-versie: Alle | Beheer: mogelijk vereist | Systeemvereisten: Geen probeer {     $regValue = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\DeviceAttributes" -Name CanAttemptUpdateAfter -ErrorAction Stop     $canAttemptUpdateAfter = $regValue.CanAttemptUpdateAfter     # Converteer FILETIME naar DateTime als het een geldig getal is     if ($null -ne $canAttemptUpdateAfter -and $canAttemptUpdateAfter -is [long]) {         probeer {             $canAttemptUpdateAfter = [DateTime]::FromFileTime($canAttemptUpdateAfter)         } catch {             Write-Warning Kan CanAttemptUpdateAfter FILETIME niet converteren naar DateTime         }     }     Write-Host 'Kan bijwerken na: $canAttemptUpdateAfter' } catch {     Write-Warning "CanAttemptUpdateAfter registersleutel niet gevonden of niet toegankelijk"     $canAttemptUpdateAfter = $null     Write-Host 'Kan proberen bij te werken na: niet beschikbaar' }

# Event Logs: System Log (5 values)

# 16-20. Event Log queries # PS-versie: 3.0+ | Beheer: mogelijk vereist voor systeemlogboek | Systeemvereisten: Geen probeer {     $allEventIds = @(1801, 1808)     $events = @(Get-WinEvent -FilterHashtable @{LogName='System'; ID=$allEventIds} -MaxEvents 20 -ErrorAction Stop)

    if ($events.Count -eq 0) {         Write-Warning 'Geen gebeurtenissen voor beveiligd opstarten (1801/1808) gevonden in systeemlogboek'         $latestEventId = $null         $bucketId = $null         $confidence = $null         $event 1801Count = 0         $event 1808Count = 0         Write-Host 'Meest recente gebeurtenis-id: niet beschikbaar'         Write-Host 'Bucket-id: niet beschikbaar'         Write-Host "Betrouwbaarheid: niet beschikbaar"         Write-Host "Event 1801 Count: 0"         Write-Host "Aantal gebeurtenis 1808: 0"     } else {         # 16. LatestEventId         $latestEvent = $events | Sort-Object TimeCreated -Aflopend | Select-Object -Eerste 1         if ($null -eq $latestEvent) {             Write-Warning 'Kan laatste gebeurtenis niet bepalen'             $latestEventId = $null             Write-Host 'Meest recente gebeurtenis-id: niet beschikbaar'         } else {             $latestEventId = $latestEvent.Id             Write-Host 'Meest recente gebeurtenis-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]. Trim()                 Write-Host Bucket-id: $bucketId             } else {                 Write-Warning 'BucketId niet gevonden in gebeurtenisbericht'                 $bucketId = $null                 Write-Host Bucket-id: Niet gevonden in gebeurtenis             }         } else {             Write-Warning 'Meest recente gebeurtenis of bericht is null, kan BucketId niet extraheren'             $bucketId = $null             Write-Host Bucket-id: Niet beschikbaar         }

        # 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]. Trim()                 Write-Host "Betrouwbaarheid: $confidence"             } else {                 Write-Warning 'Betrouwbaarheidsniveau niet gevonden in gebeurtenisbericht'                 $confidence = $null                 Write-Host 'Betrouwbaarheid: niet gevonden in gebeurtenis'             }         } else {             Write-Warning 'Meest recente gebeurtenis of bericht is null, kan betrouwbaarheid niet extraheren'             $confidence = $null             Write-Host "Betrouwbaarheid: niet beschikbaar"         }

        # 19. Event1801Count $event 1801Array = @($events | Where-Object {$_. Id -eq 1801})         $event 1801Count = $event 1801Array.Count         Write-Host "Aantal gebeurtenis 1801: $event 1801Count"

        # 20. Event1808Count $event 1808Array = @($events | Where-Object {$_. Id -eq 1808})         $event 1808Count = $event 1808Array.Count         Write-Host "Aantal gebeurtenissen 1808: $event 1808Count"     } } catch {     Write-Warning 'Fout bij het ophalen van gebeurtenislogboeken. Mogelijk zijn beheerdersbevoegdheden vereist: $_"     $latestEventId = $null     $bucketId = $null     $confidence = $null     $event 1801Count = 0     $event 1808Count = 0     Write-Host 'Meest recente gebeurtenis-id: fout'     Write-Host bucket-id: fout     Write-Host 'Betrouwbaarheid: fout'     Write-Host "Gebeurtenis 1801 Count: 0"     Write-Host "Aantal gebeurtenissen 1808: 0" }

# WMI/CIM Queries (4 values)

# 21. OSVersion # PS-versie: 3.0+ (gebruik Get-WmiObject voor 2.0) | Beheer: Nee | Systeemvereisten: Geen probeer {     $osInfo = Get-CimInstance Win32_OperatingSystem -ErrorAction Stop     if ($null -eq $osInfo -or [string]::IsNullOrEmpty($osInfo.Version)) {         Write-Warning 'Kan de versie van het besturingssysteem niet ophalen'         $osVersion = "Onbekend"     } else {         $osVersion = $osInfo.Version     }     Write-Host versie van het besturingssysteem: $osVersion } catch {     Write-Warning 'Fout bij het ophalen van de versie van het besturingssysteem: $_'     $osVersion = "Onbekend"     Write-Host 'Versie van besturingssysteem: $osVersion' }

# 22. LastBootTime # PS-versie: 3.0+ (gebruik Get-WmiObject voor 2.0) | Beheer: Nee | Systeemvereisten: Geen probeer {     $osInfo = Get-CimInstance Win32_OperatingSystem -ErrorAction Stop     if ($null -eq $osInfo -or $null -eq $osInfo.LastBootUpTime) {         Write-Warning 'Kan de laatste opstarttijd niet ophalen'         $lastBootTime = $null         Write-Host 'Laatste opstarttijd: niet beschikbaar'     } else {         $lastBootTime = $osInfo.LastBootUpTime         Write-Host 'Laatste opstarttijd: $lastBootTime'     } } catch {     Write-Warning 'Fout bij het ophalen van de laatste opstarttijd: $_'     $lastBootTime = $null     Write-Host 'Laatste opstarttijd: niet beschikbaar' }

# 23. BaseBoardManufacturer # PS-versie: 3.0+ (gebruik Get-WmiObject voor 2.0) | Beheer: Nee | Systeemvereisten: Geen probeer {     $baseBoard = Get-CimInstance Win32_BaseBoard -ErrorAction Stop     if ($null -eq $baseBoard -or [string]::IsNullOrEmpty($baseBoard.Manufacturer)) {         Write-Warning 'Kan de fabrikant van het basisbord niet ophalen'         $baseBoardManufacturer = "Onbekend"     } else {         $baseBoardManufacturer = $baseBoard.Manufacturer     }     Write-Host "Baseboard Manufacturer: $baseBoardManufacturer" } catch {     Write-Warning 'Fout bij het ophalen van de fabrikant van het basisbord: $_'     $baseBoardManufacturer = 'Onbekend'     Write-Host "Baseboard Manufacturer: $baseBoardManufacturer" }

# 24. BaseBoardProduct # PS-versie: 3.0+ (gebruik Get-WmiObject voor 2.0) | Beheer: Nee | Systeemvereisten: Geen probeer {     $baseBoard = Get-CimInstance Win32_BaseBoard -ErrorAction Stop     if ($null -eq $baseBoard -or [string]::IsNullOrEmpty($baseBoard.Product)) {         Write-Warning 'Kan basisbordproduct niet ophalen'         $baseBoardProduct = "Onbekend"     } else {         $baseBoardProduct = $baseBoard.Product     }     Write-Host "Baseboard Product: $baseBoardProduct" } catch {     Write-Warning 'Fout bij het ophalen van basisbordproduct: $_'     $baseBoardProduct = "Onbekend"     Write-Host "Baseboard Product: $baseBoardProduct"}

Meer hulp nodig?

Meer opties?

Verken abonnementsvoordelen, blader door trainingscursussen, leer hoe u uw apparaat kunt beveiligen en meer.