Beispielhafter Leitfaden zur E2E-Automatisierung für sicheren Start

Gilt für
Windows 10, version 1607, all editions Win 10 Ent LTSB 2016 Win 10 IoT Ent LTSB 2016 Windows 10, version 1809, all editions Win 10 Ent LTSC 2019 Win 10 IoT Ent LTSC 2019 Windows 10 ESU Windows 10 Enterprise LTSC 2021 Windows 10 IoT Enterprise LTSC 2021 Windows 11 version 23H2, all editions Windows 11 version 24H2, all editions Windows 11 version 25H2, all editions Windows 11 version 26H1, all editions Windows Server 2016 Windows Server 2019 Windows Server 2022 Windows Server, version 23H2 Windows Server 2025

Hinweis

Ursprüngliches Veröffentlichungsdatum: Dienstag, 16. März 2026
Letzte Aktualisierungsdatum: Dienstag, 12. Mai 2026
KB-ID: 5084567

Inhalt dieses Artikels

Übersicht

In diesem Leitfaden wird das automatisierte Bereitstellungssystem für Windows Secure Boot DB-Zertifikatupdates mithilfe von Gruppenrichtlinien und progressiven Rolloutwellen beschrieben.

Die Rolloutautomatisierung für den sicheren Start von Zertifikaten ist ein PowerShell-basiertes System, das Updates von Windows Secure Boot DB-Zertifikaten kontrolliert und abgestuft auf Computern bereitstellt, die einer Domäne angehören.

Zurück zum Anfang

Wichtige Funktionen

Feature Beschreibung
Abgestufter Rollout > 1 2 > 4 > 8... Geräte pro Bucket
Automatisches Blockieren Buckets mit nicht erreichbaren Geräten werden ausgeschlossen.
Automatisierte GPO-Bereitstellung Ein einzelnes Orchestrator-Skript verarbeitet alles
Geplante Aufgabenausführung Keine interaktiven Eingabeaufforderungen erforderlich
Überwachung in Echtzeit Statusanzeige mit Statusanzeige

Zurück zum Anfang

Referenz zu den Einstellungen für Zertifikat-Updates

In diesem Abschnitt

Gruppenrichtlinie für AvailableUpdatesPolicy

Registrierungspfad HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecureBoot
Name AvailableUpdatesPolicy
Value 0x5944 (DWORD)

Dies ist der GPO/ADMX-gesteuerte Schlüssel, der:

  • Bleibt über Neustarts hinweg erhalten
  • Wird durch Gruppenrichtlinie/MDM festgelegt
  • Verursacht keine Wiederholungsschleifen (gelöscht über ClearRolloutFlags)
  • Ist der richtige Schlüssel für die richtliniengesteuerte Bereitstellung

Referenz: Methode der Gruppenrichtlinie (GPO) für sicheren Start auf Windows-Geräten mit IT-verwalteten Updates

zurück zu "Referenz der Einstellungen für Updates"

WinCSFlags – Systemflags für die Windows-Konfiguration

Domänenadministratoren können alternativ das mit Windows-Betriebssystemupdates veröffentlichte Windows-Konfigurationssystem (Windows Configuration System, WinCS) verwenden, um die Updates für den sicheren Start auf in die Domäne eingebundene Windows-Clients und -Server bereitzustellen. Es besteht aus einem Befehlszeilenschnittstellenprogramm (CLI), mit dem Konfigurationen für den sicheren Start lokal auf einem Computer abgefragt und angewendet werden können.

Funktionsname WinCS-Schlüssel Beschreibung
Feature_AllKeysAndBootMgrByWinCS F33E0C8E002 Wenn Sie diesen Schlüssel aktivieren, können die folgenden von Microsoft bereitgestellten neuen Zertifikate für den sicheren Start auf Ihrem Gerät installiert werden.
  • Microsoft Corporation KEK 2K CA 2023
  • Windows UEFI CA 2023
  • Microsoft UEFI CA 2023
  • Microsoft Option UEFI ROM CA 2023

Referenz: Windows-Konfigurationssystem (WinCS)-APIs für den sicheren Start

zurück zu "Referenz der Einstellungen für Updates"

Zurück zum Anfang

Architektur

Workflow für die Architektur

Zurück zum Anfang

Phase 1: Erkennung und Statusüberwachung auf Unternehmensebene

In diesem Abschnitt

Erforderliche Skripts für Phase 1

Beispiel für Skripts für die Sammlung von Inventurdaten für den sicheren Start

Hinweis

WICHTIG Die folgenden Artikel mit den Beispielskripts wurden eingestellt. Wenn Sie ein Windows-Update installiert haben, das am oder nach dem 12. Mai 2026 veröffentlicht wurde, finden Sie die Beispielskripts im Ordner %systemroot%\SecureBoot\ExampleRolloutScripts auf Ihrem Gerät.

Name des Beispielskripts Zweck Läuft auf
Beispielskript für Detect-SecureBootCertUpdateStatus.ps1 Erfasst Daten zum Gerätestatus. Jeder Endpunkt (über GPO)
Beispielskript für Aggregate-SecureBootData.ps1 Generiert Berichte und Dashboards Admin workstation
Beispielskript für Deploy-GPO-SecureBootCollection.ps1 Automatisiert die GPO-Erstellung für die Datenerfassung Domänencontroller
Beispielausgabe der obigen Phase-1-Skripts

Status-Dashboard für das Zertifikat für den sicheren Start

zurück zu "Phase 1: Erkennung und Statusüberwachung auf Unternehmensebene"

Lokale Tests

Testen Sie das Sammlungsskript vor der Bereitstellung über GPO auf einem einzelnen Computer, um die Funktionalität zu überprüfen.

  • Sammlungsskript lokal ausführen

    Öffnen Sie eine PowerShell-Eingabeaufforderung mit erhöhten Rechten, und führen Sie sie aus:

    Hinweis

    & .\Detect-SecureBootCertUpdateStatus.ps1 -OutputPath "C:\Temp\SecureBootTest"

  • Überprüfen der JSON-Ausgabe

    Hinweis

    # View the collected data 
    Get-Content "C:\Temp\SecureBootTest\*_latest.json" | ConvertFrom-Json | Format-List

    Zu überprüfende Schlüsselfelder  
    SecureBootEnabled – sollte "true" oder "false" sein.
    OverallStatus – Complete, ReadyForUpdate, NeedsData oder Error
    BucketHash – Gerätebucket für den Abgleich von Konfidenzdaten
    • SecureBootTaskEnabled – Zeigt den Status der Secure Boot Update-Aufgabe an.

  • Test Aggregation Script

    Hinweis

    # Generate reports from collected data 
    & ".\Aggregate-SecureBootData.ps1" '
        -InputPath "C:\Temp\SecureBootTest" '
        -OutputPath "C:\Temp\SecureBootReports"
     

    Öffnen Sie das HTML-Dashboard

    Start-Process "C:\Temp\SecureBootReports\SecureBoot_Dashboard_*.html"

zurück zu "Phase 1: Erkennung und Statusüberwachung auf Unternehmensebene"

Einrichten der Netzwerkfreigabe

  • Erstellen der Netzwerkfreigabe

    Erstellen Sie auf Ihrem Dateiserver eine dedizierte Freigabe für Sammlungsdaten:

    Hinweis

    # Run on file server as Administrator 
    $SharePath = "D:\SecureBootCollection"
    $ShareName = "SecureBootData$"
     

    Ordner erstellen

    New-Item -ItemType Directory -Path $SharePath -Force
     

    Ausgeblendete Freigabe erstellen ($-Suffix wird aus Suchliste ausgeblendet)

    New-SmbShare -Name $ShareName -Path $SharePath '
        -Description "Secure Boot Certificate Status Collection" '
        -FullAccess "Domain Admins" '
        -ChangeAccess "Domain Computers"

  • Konfigurieren von NTFS-Berechtigungen

    Hinweis

    # Get current ACL 
    $Acl = Get-Acl $SharePath
     

    Authentifizierten Benutzern das Schreiben von Dateien erlauben

    $WriteRule = New-Object System.Security.AccessControl.FileSystemAccessRule(
    "Domänencomputer" und
    "Modify",
        "ContainerInherit,ObjectInherit",
        "None",
        "Zulassen"
    )
    $Acl.AddAccessRule($WriteRule)
     

    Domänenadministratoren Vollzugriff gewähren (für die Aggregation)

    $AdminRule = New-Object System.Security.AccessControl.FileSystemAccessRule(
        "Domain Admins",
        "FullControl",
        "ContainerInherit,ObjectInherit",
        "None",
        "Zulassen"
    )
    $Acl.AddAccessRule($AdminRule)
     

    Berechtigungen anwenden

    Set-Acl -Path $SharePath -AclObject $Acl

  • Überprüfen des Freigabezugriffs

    Hinweis

    # Test from a domain-joined workstation 
    Test-Path "\\fileserver\SecureBootData$"

    Sollte Folgendes zurückgeben: True

zurück zu "Phase 1: Erkennung und Statusüberwachung auf Unternehmensebene"

GPO-Bereitstellung

Verwenden Sie das von einem Domänencontroller bereitgestellte Automatisierungsskript:

Hinweis

Auf Domänencontroller als Domänen-Admin für interaktive Organisationseinheit ausführen Abschnitt – Empfohlen

Ersetzen Sie "Contoso.com", "Contoso" durch den Namen der Domäne

Ersetzen Sie FILESERVER durch den Namen des Dateiservers.  Das Skript zeigt eine Liste der Organisationseinheiten an, in denen GPO bereitgestellt werden soll

.\Deploy-GPO-SecureBootCollection.ps1 '
    -DomainName "contoso.com" '
    -AutoDetectOU '
    -CollectionSharePath "\\FILESERVER\SecureBootData$"
    -ScriptSourcePath ".\Detect-SecureBootCertUpdateStatus.ps1" '
    -Planen "Täglich" '
    -ScheduleTime "14:00" '
    -RandomDelayHours 4

Dieses Skript führt folgende Schritte aus:

  • Erstellt ein neues Gruppenrichtlinienobjekt mit einem bestimmten Namen
  • Kopiert das Sammlungsskript für Hochverfügbarkeit in SYSVOL.
  • Konfiguriert das Startskript des Computers
  • Verknüpft Gruppenrichtlinienobjekt mit Ziel-Organisationseinheit
  • Erstellt optional eine geplante Aufgabe für die regelmäßige Sammlung

Die folgende Tabelle enthält eine Anleitung, wie lange die Verzögerung basierend auf Ihrer Flottengröße sein wird.

Flottengröße Verzögerungsbereich
1–10K devices 4 Stunden
10K-50K Geräte 8 Stunden
50K+ Geräte 12 bis 24 Stunden

zurück zu "Phase 1: Erkennung und Statusüberwachung auf Unternehmensebene"

Zusammenfassung der GPO-Einstellungen

Einstellung Ort Value
Startskript Skripts zur Computerkonfiguration → Detect-SecureBootCertUpdateStatus.ps1
Skriptparameter (gleich) -OutputPath "\\server\share$"
Ausführungsrichtlinie Vorlagen für Computerkonfiguration → Admin → PowerShell Lokal und remote signierte
Geplante Aufgabe Computerkonfiguration → Einstellungen → geplanten Aufgaben Tägliche/wöchentliche Sammlung

zurück zu "Phase 1: Erkennung und Statusüberwachung auf Unternehmensebene"

Überprüfungs-

  • GPO-Update für Testcomputer erzwingene

    Hinweis

    ## On a test workstation 
    gpupdate /force
     

    Starten Sie die Clientcomputer neu, um das Startskript zu starten, oder es wird beim nächsten Zeitplan ausgelöst.

    Restart-Computer -Force

  • Überprüfen der Datensammlung

    Hinweis

    Überprüfen, ob Daten gesammelt wurden (auf dem Dateiserver oder von einem beliebigen Computer)

    Get-ChildItem "\\fileserver\SecureBootData$" |
        Sort-Object LastWriteTime -Descending |
        Select-Object -Erste 10
     

    Überprüfen des JSON-Inhalts

    Get-Content "\\fileserver\SecureBootData$\TESTPC_latest.json" | ConvertFrom-Json

  • GPO-Anwendung prüfen

    Hinweis

    Überprüfen, ob das Gruppenrichtlinienobjekt auf den Computer angewendet wurde

    Select-String "SecureBoot"
    Das Skript speichert auch eine lokale Kopie zur Redundanz:
    Get-ChildItem "C:\ProgramData\SecureBootCollection\"

zurück zu "Phase 1: Erkennung und Statusüberwachung auf Unternehmensebene"

Zurück zum Anfang

Phase 2: Orchestrierungsskripts für das Update von Zertifikaten für den sicheren Start

Wichtig

Stellen Sie sicher, dass Phase1 abgeschlossen ist, einschließlich der Datensammlung auf jedem Endpunkt in Remoteserverfreigaben.

In diesem Abschnitt

Erforderliche Skripts für Phase 2

Beispiel für Skripts für die Sammlung von Inventurdaten für den sicheren Start

Hinweis

WICHTIG Die folgenden Artikel mit den Beispielskripts wurden eingestellt. Wenn Sie ein Windows-Update installiert haben, das am oder nach dem 12. Mai 2026 veröffentlicht wurde, finden Sie die Beispielskripts im Ordner %systemroot%\SecureBoot\ExampleRolloutScripts auf Ihrem Gerät.

Name des Beispielskripts Zweck Läuft auf
Beispielskript für Detect-SecureBootCertUpdateStatus.ps1 Erfasst Daten zum Gerätestatus. Jeder Endpunkt (über GPO)
Beispielskript für Aggregate-SecureBootData.ps1 Generiert Berichte und Dashboards Admin workstation
Beispielskript für Deploy-GPO-SecureBootCollection.ps1 Automatisiert die GPO-Erstellung für die Datenerfassung Domänencontroller
Beispielskript für Start-SecureBootRolloutOrchestrator.ps1 Vollautomatische, kontinuierliche Orchestrierung mit automatisierter GPO-Bereitstellung für die Zertifikatsinstallation Admin workstation
Beispielskript für Deploy-OrchestratorTask.ps1 Stellt Orchestrator-Skript als geplanten Task für den automatisierten Rollout bereit Domänencontroller
Beispielskript für Get-SecureBootRolloutStatus.ps1 Secure Boot-Zertifikat anzeigen Rollout-Status von jeder Workstation Admin Workstation
Beispielskript für Enable-SecureBootUpdateTask.ps1 Aktiviert den Secure Boot Update-Task An Endpunkten, an denen die Aufgabe deaktiviert ist (Führen Sie sie nur einmal aus, um die Aufgabe zu aktivieren, wenn sie deaktiviert ist)

zurück zu "Phase 2: Orchestrierungsskripte für das Update von Zertifikaten für den sicheren Start"

Start-SecureBootRolloutOrchestrator.ps1

  • Zweck: Vollautomatische, kontinuierliche Orchestrierung mit automatisierter GPO-Bereitstellung.

  • Funktion

    • Anrufe Aggregate-SecureBootData.ps1 für Geräte status

    • Generiert Rolloutwellen mit progressiver Verdopplung

    • Erstellt ein Gruppenrichtlinienobjekt für die Zertifikatbereitstellung mit einer der folgenden Methoden

      • Gruppenrichtlinie für sicheren Start AvailableUpdatesPolicy = 0x5944 (Standard)
      • WinCS-Methode (Parameter –UseWinCS)
    • Erstellt AD-Sicherheitsgruppen für die Zielgruppenadressierung

    • Fügt Computerkonten zu Sicherheitsgruppen hinzu

    • Konfiguriert die GPO-Sicherheitsfilterung

    • Verknüpft Gruppenrichtlinienobjekt mit Ziel-Organisationseinheit

    • Überwacht auf blockierte Buckets (nicht erreichbare Geräte)

    • Automatische Aufhebung der Blockierung, wenn Geräte wiederhergestellt werden

  • Verwendung

    Hinweis

    # Interactive (testing)
    .\Start-SecureBootRolloutOrchestrator.ps1 '
        -AggregationInputPath "\\fileserver\SecureBootData$" '
        -ReportBasePath "C:\SecureBootReports" '
        -PollIntervalMinutes 30

    Hinweis

    # Interactive (testing), leveraging WinCS method
    .\Start-SecureBootRolloutOrchestrator.ps1 '
        -AggregationInputPath "\\fileserver\SecureBootData$" '
        -ReportBasePath "C:\SecureBootReports" '
        -PollIntervalMinutes 30 '
        -UseWinCS

  • Admin-Befehle

    Hinweis

    # List blocked buckets
    .\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -ListBlockedBuckets

    Hinweis

    # Unblock specific bucket
    .\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -UnblockBucket "Dell|Latitude5520|BIOS1.2"

    Hinweis

    # Unblock all
    .\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -UnblockAll

  • Parameter

    Parameter Standardwert Beschreibung
    AggregationInputPath Erforderlich UNC-Pfad zu den JSON-Dateien für Endpunkte
    ReportBasePath Erforderlich Lokaler Pfad für Berichte und Status
    TargetOU Domänenstamm Organisationseinheit zum Verknüpfen von Gruppenrichtlinienobjekten
    WavePrefix SecureBoot-Rollout GPO/Gruppenbenennungspräfix
    MaxWaitHours 72 Stunden vor der Überprüfung der Erreichbarkeit des Geräts
    PollIntervalMinutes 1440 Minuten zwischen Status-Überprüfungen
    DryRun Falsch Zeigen, was ohne Änderungen passieren würde

    Hinweis

    Hinweis zu PollIntervalMinutes: Bei direkter Ausführung des Orchestrators beträgt der Standardwert 1440 Minuten (24 Stunden). Bei Bereitstellung über Deploy-OrchestratorTask.ps1 beträgt die Standardeinstellung 30 Minuten. Das Bereitstellungsskript übergibt seinen eigenen Standardwert an den Orchestrator. Verwenden Sie 30 Minuten für den aktiven Rollout, 1440 für die Wartungsüberwachung.

    Optionale Parameter

    Parameter Standardwert Beschreibung
    UseWinCS Falsch Verwenden Sie die WinCS-Methode anstelle des AvailableUpdatesPolicy-GPO
    WinCSKey F33E0C8E002 WinCS-Schlüssel für die Konfiguration des sicheren Starts
    AllowListPath (kein) Pfad zur Datei mit den Hostnamen, um den gezielten/Pilotrollout zuzulassen. Unterstützt .txt oder .csv.
    AllowADGroup (kein) AD-Sicherheitsgruppe von Computerkonten, die ZULASSEN sollen. Beispiel: "SecureBoot-pilot-computers"
    ExclusionListPath (kein) Pfad zur Datei mit Hostnamen, die vom Rollout ausgeschlossen werden sollen (VIP-/Executive-Geräte)
    ExcludeADGroup (kein) AD-Sicherheitsgruppe der auszuschließenden Computerkonten. Beispiel: "VIP-Computer"
    ListBlockedBuckets Falsch Aktuell blockierte Gerätebuckets anzeigen
    UnblockBucket (kein) Aufheben der Blockierung eines bestimmten Buckets Format: "Hersteller|Modell|BIOS"
    Blockierung aufheben Falsch Aufheben der Blockierung aller blockierten Gerätebuckets

zurück zu "Phase 2: Orchestrierungsskripte für das Update von Zertifikaten für den sicheren Start"

Deploy-OrchestratorTask.ps1

  • Zweck: Stellt den Orchestrator als geplanten Windows-Task bereit.

  • Vorteile

    • Keine PowerShell-Sicherheitsaufforderungen (ExecutionPolicy Bypass)
    • Läuft kontinuierlich im Hintergrund
    • Keine Benutzerinteraktion erforderlich
    • Übersteht Neustarts
  • Verwendung

    • Mit Domänendienstkonto bereitstellen (empfohlen)

      • Verwenden der "AvailableUpdates"-Gruppenrichtlinie (Standardmethode)

        Hinweis

        .\Deploy-OrchestratorTask.ps1 '
            -AggregationInputPath "\\server\SecureBootData$" '
            -ReportBasePath "C:\SecureBootReports" '
            -ServiceAccount "DOMAIN\svc_secureboot"

      • WinCS-Methode verwenden

        Hinweis

        .\Deploy-OrchestratorTask.ps1 '
            -AggregationInputPath "\\server\SecureBootData$" '
            -ReportBasePath "C:\SecureBootReports" '
            -ServiceAccount "DOMAIN\svc_secureboot" -UseWinCS

    • Mit SYSTEM-Konto bereitstellen

      • Verwenden der "AvailableUpdates"-Gruppenrichtlinie (Standardmethode)

        Hinweis

        .\Deploy-OrchestratorTask.ps1 '
            -AggregationInputPath "\\server\SecureBootData$" '
            -ReportBasePath "C:\SecureBootReports"

      • Verwenden von WinCS method.\Deploy-OrchestratorTask.ps1

        Hinweis

        -AggregationInputPath "\\server\SecureBootData$" '
            -ReportBasePath "C:\SecureBootReports" -UseWinCS

      • Anforderungen an das Dienstkonto

        • Domänen-Admin (für New-GPO, New-ADGroup, Add-ADGroupMember)
        • Lesezugriff auf JSON-Dateifreigabe
        • Schreibzugriff auf ReportBasePath

zurück zu "Phase 2: Orchestrierungsskripte für das Update von Zertifikaten für den sicheren Start"

Get-SecureBootRolloutStatus.ps1

  • Zweck: Zeigen Sie den Rolloutfortschritt von jeder Workstation aus an.

  • Was angezeigt wird

    • Status der geplanten Aufgabe (Ausgeführt/Bereit/Angehalten)
    • Aktuelle Wellennummer
    • Geräte mit gezielten und aktualisierten Geräten
    • Visuelle Statusanzeige
    • Zusammenfassung blockierter Buckets
    • Link zum neuesten HTML-Dashboard
  • Verwendung

    Hinweis

    # Quick status check
    .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports"

    Hinweis

    # Continuous monitoring (refreshes every 30 seconds)
    .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" -Watch 30

    Hinweis

    # View blocked buckets
    .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" -ShowBlocked

    Hinweis

    # View wave history
    .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" -ShowWaves

    Hinweis

    # View recent log
    .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" -ShowLog

    Hinweis

    # Open dashboard in browser
    .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" -OpenDashboard

  • Parameter

    Parameter Erforderlich? Standardwert Beschreibung
    ReportBasePath Erforderlich Lokaler Pfad zu Berichten und Statusdateien
    ShowLog Optional Falsch Aktuelle Orchestrator-Protokolleinträge anzeigen
    ShowBlocked Optional Falsch Anzeigen blockierter Bucketdetails
    ShowWaves anzeigen Optional Falsch Wellenverlauf anzeigen
    Ansehen Optional 0 (deaktiviert) Intervall für die automatische Aktualisierung in Sekunden. Beispiel: -Watch 30 refreshes every 30 seconds.
    OpenDashboard Optional Falsch Aktuelles HTML-Dashboard im Standardbrowser öffnen
  • Beispielausgabe

    Hinweis

    • ==============================================================
         STATUS DES ROLLOUTS DES SICHEREN STARTS
         2026-02-17 19:30:00
      ======================================================
    • Scheduled Task: Running
    • ROLLOUT PROGRESS

    Status: In Bearbeitung
    Aktuelle Welle: 5
    Insgesamt zielgerichtet: 1250
    Insgesamt aktualisiert: 847

    • Progress: [█████████████████████░░░░░░░░░░░░░░░░░░░] 67.8%
    • BLOCKED BUCKETS: 2 buckets need attention
        Run with -ShowBlocked for details
    • LATEST DASHBOARD
      C:\SecureBootReports\Aggregation_20260217_193000\SecureBoot_Dashboard.html
      __________________________________________________________________________________________

zurück zu "Phase 2: Orchestrierungsskripte für das Update von Zertifikaten für den sicheren Start"

Zurück zum Anfang

E2E-Bereitstellungsschritte (Kurzübersichtshandbuch)

In diesem Abschnitt

Phase 1: Erkennungsinfrastruktur

  • Schritt 1: Sammlungsfreigabe erstellen

    Hinweis

    # 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"

    Hinweis

    # 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

  • Schritt 2: Bereitstellen des GPOs für die Ermittlung

    Hinweis

    .\Deploy-GPO-SecureBootCollection.ps1 `
        -DomainName "contoso.com" '
        -OUPath "OU=Workstations,DC=contoso,DC=com" '
        -CollectionSharePath "\\server\SecureBootData$"

  • Schritt 3: Warten Sie, bis die Endpunkte Ihre Berichte erfassen (24–48 Stunden)

    Hinweis

    Überprüfen des Sammlungsfortschritts

    (Get-ChildItem "\\server\SecureBootData$" -Filter "*.json"). Anzahl

zurück zu "E2E-Bereitstellungsschritte (Kurzanleitung)"

Phase 2: Orchestrierter Rollout

  • Schritt 4: Voraussetzungen prüfen

    • Bereitgestelltes GPO für die Erkennung (Schritt 2)
    • Mindestens 50+ Endpunkte, die JSON melden
    • Dienstkonto mit Domänen-Admin-Rechten
    • Verwaltungsserver mit PowerShell 5.1+
  • Schritt 5: Bereitstellen von Orchestrator als geplante Aufgabe

    Hinweis

    .\Deploy-OrchestratorTask.ps1 `
        -AggregationInputPath "\\server\SecureBootData$" '
        -ReportBasePath "C:\SecureBootReports" '
        -ServiceAccount "DOMAIN\svc_secureboot"

  • Schritt 6: Fortschritt überwachen

    Hinweis

    .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports"

  • Schritt 7: Dashboard anzeigen

    Hinweis

    .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports" -OpenDashboard

  • Schritt 8: Verwalten blockierter Buckets

    Hinweis

    # List blocked
    .\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -ListBlockedBuckets

    Hinweis

    # Investigate and unblock
    .\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -UnblockBucket "Manufacturer|Modell|BIOS"

  • Schritt 9: Überprüfen des Abschlusses

    Hinweis

    .\Get-SecureBootRolloutStatus.ps1 -ReportBasePath "C:\SecureBootReports"

    Der Status sollte "Abgeschlossen" anzeigen

zurück zu "E2E-Bereitstellungsschritte (Kurzanleitung)"

State Files

Der Orchestrator behält den Status in ReportBasePath\RolloutState\ bei:

Datei Beschreibung
RolloutState.json Wellenverlauf, Zielgeräte, Status
BlockedBuckets.json Buckets, die untersucht werden müssen
DeviceHistory.json Geräteverfolgung nach Hostname
Orchestrator_YYYYMMDD.log Tägliche Aktivitätsprotokolle

zurück zu "E2E-Bereitstellungsschritte (Kurzanleitung)"

Zurück zum Anfang

Problembehandlung

In diesem Abschnitt

Kein Fortschritt bei Orchestrator

  1. Geplante Aufgabe prüfen

    Hinweis

    Get-ScheduledTask -TaskName "SecureBoot-Rollout-Orchestrator"

  2. Protokolle überprüfen

    Hinweis

    Get-Content "C:\SecureBootReports\RolloutState\Orchestrator_*.log" -Tail 50

  3. Aktualität von JSON-Daten überprüfen

    Hinweis

    (Get-ChildItem "\\server\SecureBootData$" -Filter "*.json" | Where-Object { $_.LastWriteTime -gt (Get-Date).AddDays(-1) }).Count

zurück zu "Fehlerbehebung"

Blockierte Buckets

  1. Liste blockiert.

    Hinweis

    .\Start-SecureBootRolloutOrchestrator.ps1 -ReportBasePath "C:\SecureBootReports" -ListBlockedBuckets

  2. Untersuchen Sie die Erreichbarkeit des Geräts.

  3. Überprüfen Sie auf Firmwareprobleme.

  4. Heben Sie die Blockierung nach der Untersuchung auf.

zurück zu "Fehlerbehebung"

GPO wird nicht angewendet

  1. Überprüfen Sie, ob das Gruppenrichtlinienobjekt vorhanden ist.

    Hinweis

    Get-GPO -Name "SecureBoot-Rollout-Wave*"

  2. Überprüfen Sie die Sicherheitsfilterung.

    Hinweis

    Get-GPPermission -Name "GPO-Name" -All

  3. Vergewissern Sie sich, dass sich der Computer in einer Sicherheitsgruppe befindet.

  4. Wenden Sie das Gruppenrichtlinienobjekt auf das Ziel an.

    Hinweis

    gpupdate /force

zurück zu "Fehlerbehebung"

Zurück zum Anfang

Änderungsprotokoll

Datum ändern Beschreibung ändern
Dienstag, 12. Mai 2026 Bisher wurde jede Beispielskriptdatei als einzelner Artikel veröffentlicht, aus denen Sie das Skript kopieren und einfügen konnten. Ab den Windows-Updates, die am und nach dem 12. Mai 2026 veröffentlicht wurden, befinden sich die Beispielskripts im Ordner %systemroot%\SecureBoot\ExampleRolloutScripts auf Ihrem Gerät.