Partager via


Guide pratique pour tester les pilotes de préproduction avec le démarrage sécurisé activé

Sur les systèmes de vente au détail et de production, le noyau Windows approuve et charge uniquement les pilotes avec une signature WHQL/WHCP de production. Pour tester les pilotes de préproduction, il est nécessaire que les développeurs de pilotes permettent TESTSIGNING aux développeurs de charger des pilotes non-production. TESTSIGNING nécessite la désactivation du démarrage sécurisé pour présenter une différence dans les environnements de test et de production.

Le noyau Windows prend en charge le chargement des pilotes de préproduction signés avec la signature de préproduction WHQL/WHCP. La signature WHQL/WHCP est accessible via le Centre de développement matériel Microsoft (HDC).

Prérequis

  • Signer vos pilotes de préproduction avec le tableau de bord matériel de l’Espace partenaires

  • Téléchargez EnableUefiSbTest.exe à partir de la dernière version du Kit de pilotes Windows (WDK) ou à partir du Centre de téléchargement. L’emplacement de configuration par défaut de l’outil EnableUefiSbTest est C :\Program Files (x86)\Windows Kits\10\tools\{arch}\SecureBoot\EnableSB. {arch} peut être l’un des {amd64, x86, arm, arm64}. Les stratégies se trouvent sous le même répertoire SecureBoot :C :\Program Files (x86)\Windows Kits\10\tools\{arch}\SecureBoot\Policies.

Activer la prise en charge de la préproduction WHQL/WHCP Signature

Une fois votre pilote préproduction signé, vous êtes prêt à provisionner un ordinateur de test où vous installez le pilote.

Les outils d’approvisionnement et la charge utile sont fournis à partir de Windows 11, version 22H2.

L’utilisation de l’outil EnableUefiSbTest est recommandée. Vous pouvez également provisionner manuellement la clé racine du test Microsoft à partir de la section Tests manuels de démarrage sécurisé HLK (UefiSecureBootManualTests.zip\ManualTests\certs\test\db_MSFTtestSigningRoot.cer). La clé de test Microsoft doit être incluse dans la base de données de démarrage sécurisé (DB) et la stratégie de configuration de démarrage sécurisé (SBCP) pour activer l’approbation pour la signature du pilote WHQL/WHCP de préproduction.

Remarque

Lors de l’approvisionnement d’une des bases de données de démarrage sécurisé, ne signez jamais de charge utile avec les clés de test Microsoft à l’intérieur.

Étapes d’approvisionnement

  1. Dans le menu UEFI du système, désactivez le démarrage sécurisé et désactivez les clés de démarrage sécurisé, le cas échéant. Cela permet à l’outil d’approvisionnement de définir les clés de test pour approuver le fichier de stratégie de démarrage sécurisé et réactiver le démarrage sécurisé.

  2. Téléchargez le fichier .p7b de la stratégie de démarrage sécurisé correcte, en fonction de l’architecture système et de l’outil de provisionnement associé, EnableUefiSbTest.exe, à partir de WDK. Pour connaître l’emplacement de l’outil d’approvisionnement, consultez Conditions préalables.

  3. Exécutez la commande suivante dans une instance avec élévation de privilèges de PowerShell ou terminal et vérifiez que les valeurs PK, KEK, db, db, dbx et OemId sont vides (« Introuvable ») :

    EnableUefiSbTest.exe /dump
    

    Si le démarrage sécurisé est désactivé et que les clés sont correctement effacées, la sortie suivante est attendue :

    EnableUefiSbTest.exe /dump
    
    Name: PK
    Not Found
    
    Name: KEK
    Not Found
    
    Name: db
    Not Found
    
    Name:dbx
    Not Found
    
    Name: OemId
    Not Found
    
  4. Provisionnez les clés de test de démarrage sécurisé dans la base de données de démarrage sécurisé et réactivez le démarrage sécurisé en exécutant la commande suivante dans une instance avec élévation de privilèges de PowerShell ou terminal :

    EnableUefiSbTest.exe
    

    Remarque

    EnableUefiSbTest.exe ne retourne rien après l’exécution réussie.

    Si vous le souhaitez, spécifiez la thirdparty commande pour approvisionner le certificat d’autorité de certification UEFI Microsoft en même temps que les clés par défaut dans la base de données de démarrage sécurisé. Cela permet d’approuver les exécutables EFI signés par l’autorité de certification UEFI, comme les roms d’option et les chargeurs de démarrage non-Windows.

    EnableUefiSbTest.exe /thirdparty
    
  5. Pour les appareils exécutant Windows basé sur le bureau, montez la partition EFI du système et copiez le fichier de stratégie de démarrage sécurisé (.p7b) sur S :/EFI/Microsoft/Boot en exécutant la commande suivante dans une instance avec élévation de privilèges de PowerShell ou terminal :

    mountvol s: /s
    copy-item <path_to_p7b> S:/EFI/Microsoft/Boot/SecureBootPolicy.p7b
    

    Remarque

    Étant donné que le noyau Windows nécessite le fichier de stratégie de démarrage sécurisé sous la forme de SecureBootPolicy.p7b, le nom et le format de fichier ne doivent pas être modifiés.

  6. Pour les appareils qui n’exécutent pas Windows basé sur le bureau, copiez le fichier correspondant PreProductionPolicy.pol à \EFI\Microsoft\Boot\Policies. Ensuite, supprimez FullDebugPolicy.pol de \EFI\Microsoft\Boot\Policies.

  7. Redémarrez le système pour permettre au noyau Windows d’actualiser les stratégies. Le démarrage sécurisé est désormais réactivé et approvisionné automatiquement par l’outil d’approvisionnement. Cela peut être validé en réexécutant EnableUefiSbTest.exe /dump en tant qu’administrateur et en validant que seules les valeurs et OemId les dbx valeurs sont vides (« Introuvable »).

  8. Le système est prêt à valider le contenu du pilote signé WHQL/WHCP de préproduction. Le redémarrage du système n’affecte pas l’état de l’appareil, tant que les clés de démarrage sécurisé et les fichiers de stratégie de démarrage sécurisé ne sont pas modifiés.

Étapes de déprovisionnement

Pour déprovisionner le système et refuser l’approbation de signature de préproduction sur le système :

  1. Supprimez les fichiers de stratégie de démarrage sécurisé de la partition EFI montée en exécutant les commandes suivantes dans une instance avec élévation de privilèges de PowerShell ou terminal :

    mountvol s: /s
    rm  S:/EFI/Microsoft/Boot/SecureBootPolicy.p7b
    

    Remarque

    Si les validations sont effectuées sur un HoloLens 2, les fichiers de stratégie .pol doivent également être supprimés de S :/EFI/Microsoft/Boot/Policies.

  2. Démarrez dans le menu UEFI du système et reconfigurez les clés de démarrage sécurisé dans les paramètres d’usine.

  3. Redémarrez le système et exécutezEnableUefiSbTest.exe /dump, qui doit retourner des valeurs sansmpty pour PK, KEKet dbdbx des valeurs indiquant que les clés ont été retournées à l’état de la fabrique.

    Remarque

    Nous vous recommandons de nettoyer l’installation de Windows sur le système pour déprovisionner un système destiné aux environnements de vente au détail.

FAQ

Q : La EnableUefiSbTest.exe /dump commande affiche uniquement un résultat pour PK. Y a-t-il un problème ?

R : Cela se produit si l’outil est exécuté en tant qu’utilisateur standard au lieu d’administrateur.

Q : La EnableUefiSbTest.exe /dump commande retourne une erreur que je ne reconnaît pas. Que dois-je faire ?

R : Une erreur peut être générée par l’outil lorsque le démarrage sécurisé n’a pas été correctement désactivé et/ou que les clés de démarrage sécurisé n’ont pas été effacées. Vérifiez que le démarrage sécurisé est désactivé.