Cara menguji driver pra-produksi dengan Boot Aman diaktifkan
Pada sistem ritel dan produksi, kernel Windows hanya mempercayai dan memuat driver dengan tanda tangan WHQL/WHCP produksi. Untuk menguji driver pra-produksi, pengembang driver harus mengaktifkan TESTSIGNING
driver non-produksi untuk memuat. TESTSIGNING
memerlukan pennonaktifkan Boot Aman, untuk menyajikan perbedaan dalam lingkungan pengujian dan produksi.
Kernel Windows mendukung pemuatan driver pra-produksi yang ditandatangani dengan tanda tangan pra-produksi WHQL/WHCP. Tanda tangan WHQL/WHCP dapat diakses melalui Microsoft Hardware Developer Center (HDC).
Prasyarat
Menandatangani driver pra-produksi Anda dengan dasbor Perangkat Keras Pusat Mitra
Unduh EnableUefiSbTest.exe dari versi terbaru Windows Driver Kit (WDK) atau dari Pusat Unduhan. Lokasi penyiapan default alat EnableUefiSbTest adalah C:\Program Files (x86)\Windows Kits\10\tools\{arch}\SecureBoot\EnableSB.
{arch}
bisa menjadi salah satu dari{amd64, x86, arm, arm64}
. Kebijakan terletak di bawah direktori SecureBoot yang sama:C:\Program Files (x86)\Windows Kits\10\tools\{arch}\SecureBoot\Policies.
Mengaktifkan dukungan untuk TANDA Tangan WHQL/WHCP pra-produksi
Setelah driver Anda ditandatangani pra-produksi, Anda siap untuk memprovisikan komputer uji di mana Anda akan menginstal driver.
Alat provisi dan payload disediakan mulai dari Windows 11, versi 22H2.
Penggunaan alat EnableUefiSbTest sangat disarankan. Atau, Anda dapat memprovisikan kunci Microsoft Test Root secara manual dari bagian HLK Secure Boot Manual Tests (UefiSecureBootManualTests.zip\ManualTests\certs\test\db_MSFTtestSigningRoot.cer
). Kunci pengujian Microsoft harus disertakan dalam database Boot Aman (DB) dan Kebijakan Konfigurasi Boot Aman (SBCP) untuk mengaktifkan kepercayaan untuk tanda tangan driver WHQL/WHCP pra-produksi.
Catatan
Saat menyediakan salah satu database Boot Aman, jangan pernah produksi menandatangani payload dengan kunci pengujian Microsoft di dalamnya.
Langkah-langkah Provisi
Di menu UEFI sistem, nonaktifkan Boot Aman dan hapus kunci Boot Aman, jika berlaku. Ini akan memungkinkan alat provisi untuk mengatur kunci pengujian untuk mempercayai file kebijakan Boot Aman dan mengaktifkan kembali Boot Aman.
Unduh file .p7b kebijakan Boot Aman yang benar, tergantung pada arsitektur sistem, serta alat provisi yang menyertainya, EnableUefiSbTest.exe, dari WDK. Untuk lokasi alat provisi, lihat Prasyarat.
Jalankan perintah berikut dalam instans PowerShell atau Terminal yang ditinggikan dan validasi bahwa nilai PK, KEK, db, dbx, dan OemId kosong ("Tidak Ditemukan"):
EnableUefiSbTest.exe /dump
Jika Boot Aman dinonaktifkan dan kunci telah berhasil dibersihkan, output berikut diharapkan:
EnableUefiSbTest.exe /dump Name: PK Not Found Name: KEK Not Found Name: db Not Found Name:dbx Not Found Name: OemId Not Found
Provisikan kunci uji Boot Aman ke db Boot Aman dan aktifkan kembali Boot Aman dengan menjalankan perintah berikut dalam instans PowerShell atau Terminal yang ditingkatkan:
EnableUefiSbTest.exe
Catatan
EnableUefiSbTest.exe tidak akan menghasilkan/mengembalikan apa pun setelah berhasil berjalan.
Secara opsional, tentukan perintah untuk menyediakan
thirdparty
sertifikat CA Microsoft UEFI bersama kunci default di Secure Boot DB. Hal ini akan memungkinkan kepercayaan untuk executable EFI yang ditandatangani CA Microsoft UEFI seperti opsi ROM dan bootloader non-Windows.EnableUefiSbTest.exe /thirdparty
Untuk perangkat yang menjalankan Windows berbasis Desktop, pasang partisi EFI sistem dan salin melalui file Kebijakan Boot Aman (.p7b) ke S:/EFI/Microsoft/Boot dengan menjalankan perintah berikut dalam instans PowerShell atau Terminal yang ditingkatkan:
mountvol s: /s copy-item <path_to_p7b> S:/EFI/Microsoft/Boot/SecureBootPolicy.p7b
Catatan
Karena kernel Windows memerlukan file kebijakan Boot Aman dalam bentuk
SecureBootPolicy.p7b
, nama dan format file tidak boleh dimodifikasi.Untuk perangkat yang tidak menjalankan Windows berbasis Desktop, salin yang sesuai dengan
PreProductionPolicy.pol
\EFI\Microsoft\Boot\Policies
. Kemudian hapusFullDebugPolicy.pol
dari\EFI\Microsoft\Boot\Policies
.Reboot sistem untuk memungkinkan kernel Windows menyegarkan kebijakan. Boot Aman sekarang diaktifkan kembali dan disediakan secara otomatis oleh alat provisi. Ini dapat divalidasi dengan menjalankan
EnableUefiSbTest.exe /dump
kembali sebagai admin dan memvalidasi bahwa hanyadbx
nilai danOemId
yang kosong ("Tidak Ditemukan").Sistem siap untuk memvalidasi konten driver yang ditandatangani WHQL/WHCP praproduksi. Me-reboot sistem tidak akan berdampak pada status perangkat, selama kunci Boot Aman dan file kebijakan Boot Aman tidak dimodifikasi.
Mencabut Akses Langkah-Langkah
Untuk mendeprovisi sistem dan menolak kepercayaan penandatanganan praproduksi pada sistem:
Hapus file kebijakan Boot Aman dari partisi EFI yang dipasang dengan menjalankan perintah berikut dalam instans PowerShell atau Terminal yang ditingkatkan:
mountvol s: /s rm S:/EFI/Microsoft/Boot/SecureBootPolicy.p7b
Catatan
Jika validasi sedang dilakukan pada HoloLens 2, file kebijakan .pol juga harus dihapus dari S:/EFI/Microsoft/Boot/Policies.
Boot ke menu UEFI sistem dan konfigurasi ulang kunci Boot Aman ke pengaturan pabrik.
Reboot sistem dan jalankan
EnableUefiSbTest.exe /dump
, yang harus mengembalikan nilai yang tidak kosong untukPK
,KEK
,db
dandbx
nilai yang menunjukkan kunci dikembalikan ke status pabrik.Catatan
Sebaiknya instal Windows secara bersih pada sistem untuk mendeprovisi sistem yang ditujukan untuk lingkungan ritel.
Tanya Jawab Umum
T: EnableUefiSbTest.exe /dump
Perintah hanya menampilkan hasil untuk PK
. Apakah ada yang salah?
A: Ini akan terjadi jika alat dijalankan sebagai pengguna standar alih-alih sebagai admin.
T: Perintah EnableUefiSbTest.exe /dump
mengembalikan kesalahan yang tidak saya kenali. Apa yang harus saya lakukan?
A: Kesalahan dapat dilemparkan oleh alat ketika Boot Aman belum berhasil dinonaktifkan dan/atau kunci Boot Aman belum dibersihkan. Verifikasi bahwa Boot Aman dinonaktifkan.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk