Testen von Vorproduktionstreibern mit aktivierter Aktivierung des sicheren Starts
Auf Einzelhandels- und Produktionssystemen vertraut der Windows-Kernel nur Treibern mit einer WHQL/WHCP-Signatur für die Produktion und lädt sie. Um Preproduction-Treiber zu testen, ist es erforderlich, dass Treiberentwickler das Laden von Nichtproduktionstreibern ermöglichen TESTSIGNING
. TESTSIGNING
erfordert das Deaktivieren des sicheren Starts, um einen Unterschied in den Test- und Produktionsumgebungen darzustellen.
Der Windows-Kernel unterstützt das Laden von Vorproduktionstreibern, die mit der WHQL/WHCP-Vorproduktionssignatur signiert sind. Auf die WHQL/WHCP-Signatur kann über das Microsoft Hardware Developer Center (HDC) zugegriffen werden.
Voraussetzungen
Signieren Ihrer Vorproduktionstreiber mit partner Center Hardware-Dashboard
Laden Sie EnableUefiSbTest.exe aus der neuesten Version des Windows Driver Kit (WDK) oder aus dem Download Center herunter. Der Standardmäßige Setupspeicherort des EnableUefiSbTest-Tools lautet "C:\Programme (x86)\Windows Kits\10\tools\{arch}\SecureBoot\EnableSB".
{arch}
kann eine von{amd64, x86, arm, arm64}
. Die Richtlinien befinden sich unter demselben SecureBoot-Verzeichnis:C:\Programme (x86)\Windows Kits\10\tools\{arch}\SecureBoot\Policies.
Aktivieren der Unterstützung für die Preproduction WHQL/WHCP-Signatur
Sobald der Treiber vorproduktiv signiert ist, können Sie einen Testcomputer bereitstellen, auf dem Sie den Treiber installieren.
Die Bereitstellungstools und Nutzlast werden ab Windows 11, Version 22H2, bereitgestellt.
Die Verwendung des EnableUefiSbTest-Tools wird empfohlen. Alternativ können Sie den Microsoft Test Root-Schlüssel manuell über den Abschnitt "Manuelle Tests für den sicheren Start" (UefiSecureBootManualTests.zip\ManualTests\certs\test\db_MSFTtestSigningRoot.cer
HLK) bereitstellen. Der Microsoft-Testschlüssel muss in der Datenbank für den sicheren Start (SECURE Boot Configuration Policy, SBCP) enthalten sein, um die Vertrauensstellung für die Vorproduktion von WHQL/WHCP-Treibersignatur zu aktivieren.
Hinweis
Wenn Sie eine der Datenbanken für den sicheren Start bereitstellen, signieren Sie niemals eine Nutzlast mit den Microsoft-Testschlüsseln.
Bereitstellungsschritte
Deaktivieren Sie im UEFI-Menü des Systems den sicheren Start, und deaktivieren Sie ggf. die Schlüssel für den sicheren Start. Auf diese Weise kann das Bereitstellungstool die Testschlüssel festlegen, um der Datei für die Richtlinie für den sicheren Start zu vertrauen und den sicheren Start erneut zu aktivieren.
Laden Sie je nach Systemarchitektur und dem zugehörigen Bereitstellungstool, EnableUefiSbTest.exe, die richtige P7b-Datei aus dem WDK herunter. Informationen zum Speicherort des Bereitstellungstools finden Sie unter "Voraussetzungen".
Führen Sie den folgenden Befehl in einer PowerShell- oder Terminal-Instanz mit erhöhten Rechten aus, und überprüfen Sie, ob die PK-, KEK-, db-, dbx- und OemId-Werte leer sind ("Nicht gefunden"):
EnableUefiSbTest.exe /dump
Wenn der sichere Start deaktiviert ist und die Schlüssel erfolgreich gelöscht werden, wird die folgende Ausgabe erwartet:
EnableUefiSbTest.exe /dump Name: PK Not Found Name: KEK Not Found Name: db Not Found Name:dbx Not Found Name: OemId Not Found
Stellen Sie die Testschlüssel für den sicheren Start in der Db für sicheren Start bereit, und aktivieren Sie den sicheren Start erneut, indem Sie den folgenden Befehl in einer Instanz mit erhöhten Rechten von PowerShell oder Terminal ausführen:
EnableUefiSbTest.exe
Hinweis
EnableUefiSbTest.exe gibt nach der erfolgreichen Ausführung keine Ausgabe/Rückgabe zurück.
Geben Sie optional den
thirdparty
Befehl an, um das Microsoft UEFI-Zertifizierungsstellenzertifikat zusammen mit den Standardschlüsseln in der Sicheren Start-DB bereitzustellen. Dies ermöglicht die Vertrauensstellung für von microsoft UEFI signierte EFI-ausführbare Dateien wie Options-ROMs und Nicht-Windows-Startladeprogramme.EnableUefiSbTest.exe /thirdparty
Stellen Sie für Geräte, auf denen Desktop-basierte Windows ausgeführt wird, die EFI-Partition des Systems bereit, und kopieren Sie die Datei für die Richtlinie für den sicheren Start (P7b) in S:/EFI/Microsoft/Boot , indem Sie den folgenden Befehl in einer Instanz mit erhöhten Rechten von PowerShell oder Terminal ausführen:
mountvol s: /s copy-item <path_to_p7b> S:/EFI/Microsoft/Boot/SecureBootPolicy.p7b
Hinweis
Da der Windows-Kernel die Richtliniendatei für den sicheren Start in Form von
SecureBootPolicy.p7b
"Name" und "Dateiformat" erfordert, darf das Format nicht geändert werden.Kopieren Sie für Geräte, auf denen kein Desktop-basiertes Windows ausgeführt wird, die entsprechenden
PreProductionPolicy.pol
.\EFI\Microsoft\Boot\Policies
Löschen Sie dannFullDebugPolicy.pol
aus\EFI\Microsoft\Boot\Policies
.Starten Sie das System neu, damit der Windows-Kernel die Richtlinien aktualisieren kann. Der sichere Start wird jetzt erneut aktiviert und automatisch vom Bereitstellungstool bereitgestellt. Dies kann überprüft werden, indem sie als Administrator erneut ausgeführt
EnableUefiSbTest.exe /dump
und überprüft, dass nur diedbx
WerteOemId
leer sind ("Nicht gefunden").Das System ist bereit, die Vorproduktion von WHQL/WHCP signierten Treiberinhalten zu überprüfen. Das Neustarten des Systems wirkt sich nicht auf den Zustand des Geräts aus, solange die Schlüssel für den sicheren Start und die Richtliniendateien für den sicheren Start nicht geändert werden.
Aufheben der Bereitstellungsschritte
So deprovisionieren Sie das System, und deaktivieren Sie die Vorproduktionssignierungsvertrauensstellung auf dem System:
Löschen Sie die Richtliniendateien für den sicheren Start aus der bereitgestellten EFI-Partition, indem Sie die folgenden Befehle in einer Instanz mit erhöhten Rechten von PowerShell oder Terminal ausführen:
mountvol s: /s rm S:/EFI/Microsoft/Boot/SecureBootPolicy.p7b
Hinweis
Wenn die Überprüfungen auf einer HoloLens 2 ausgeführt werden, müssen die POL-Richtliniendateien auch aus S:/EFI/Microsoft/Boot/Policies entfernt werden.
Starten Sie im UEFI-Menü des Systems, und konfigurieren Sie die Schlüssel für den sicheren Start in die Werkseinstellungen neu.
Starten Sie das System neu, und führen Sie die Ausführung
EnableUefiSbTest.exe /dump
aus, die fürPK
,KEK
unddb
dbx
werte, die angeben, dass die Schlüssel in den Werkszustand zurückgegeben wurden.Hinweis
Es wird empfohlen, Windows auf dem System neu zu installieren, um ein system für Einzelhandelsumgebungen bereitzustellen.
Häufig gestellte Fragen
F: Der EnableUefiSbTest.exe /dump
Befehl zeigt nur ein Ergebnis für PK
. Stimmt etwas nicht?
A: Dies geschieht, wenn das Tool nicht als Administrator, sondern als Standardbenutzer ausgeführt wird.
F: Der EnableUefiSbTest.exe /dump
Befehl gibt einen Fehler zurück, den ich nicht erkennt. Was soll ich tun?
A: Ein Fehler kann vom Tool ausgelöst werden, wenn der sichere Start nicht erfolgreich deaktiviert wurde und/oder die Schlüssel für den sicheren Start nicht gelöscht wurden. Stellen Sie sicher, dass der sichere Start deaktiviert ist.