Condividi tramite


Domande frequenti su CodeQL per il programma di compatibilità hardware Windows

Questo articolo risponde alle domande frequenti sui requisiti di test codeQL per il programma di compatibilità hardware Windows. Informazioni su come CodeQL migliora la certificazione dei driver e garantisce standard di sicurezza elevati.

Quando è necessario CodeQL per la certificazione del dispositivo?

Per informazioni dettagliate sui requisiti, vedere Processo di certificazione del programma di compatibilità hardware Windows .

Perché CodeQL è necessario per il codice sorgente del driver?

La motivazione per richiedere CodeQL nel codice sorgente del driver si basa su due motivi principali:

  1. Migliorare la sicurezza di Windows assicurandosi che i componenti certificati da Microsoft soddisfino gli standard di sicurezza elevati.

  2. Fornire all'ecosistema hardware strumenti di alta qualità sviluppati attivamente dai tecnici della sicurezza Microsoft.

A quali tipi di driver si applicano CodeQL e il test delle Static Tools Logo?

Attualmente, il test del logo degli strumenti di analisi statica richiede l'esecuzione di CodeQL e il passaggio del set di query Must-Fix per tutti i driver in modalità kernel, ad eccezione dei driver grafici.

L'esecuzione di CodeQL nei driver di grafica è altamente consigliata, anche se non è attualmente necessaria. Alcune query possono anche identificare eventuali difetti utili nei componenti in modalità utente.

Quale licenza regola l'utilizzo di CodeQL per sviluppatori di driver?

L'uso di CodeQL per i test WHCP è consentito nel Contratto di licenza per l'utente finale di Hardware Lab Kit (HLK).

Per i partecipanti a WHCP, il contratto di licenza di HLK sovrascrive i termini e le condizioni di CodeQL di GitHub. Il contratto di licenza HLK indica che CodeQL può essere usato durante l'analisi automatizzata, CI o CD, come parte dei normali processi di progettazione ai fini dell'analisi dei driver da inviare e certificati come parte del WHCP.

È necessario usare Visual Studio o msbuild per eseguire CodeQL?

CodeQL non richiede l'uso di MSBuild o Visual Studio.

Per un elenco dei compilatori supportati, vedere linguaggi e framework supportati.

In che modo HLK verifica che il mio driver sia stato analizzato da CodeQL?

Il test del logo degli strumenti statici in HLK è il test che applica questo requisito.

I dettagli sul test del logo degli strumenti statici sono disponibili nella pagina di MS Docs.

Tutti i difetti segnalati da CodeQL sono veri difetti?

Ogni query CodeQL ha diversi livelli di precisione.

Il nostro obiettivo è ridurre al minimo i falsi positivi, ma occasionalmente si verificheranno. La nostra suite di query Must-Fix è stata sviluppata e selezionata manualmente per l'uso con il programma WHCP perché i nostri test completi hanno quasi zero falsi positivi.

Se vengono visualizzati falsi positivi da una query nella serie di query Must-Fix, inviare immediatamente un messaggio di posta elettronica a stlogohelp@microsoft.com o segnalare un problema nel repository Windows-Driver-Developer-Supplemental-Tools, ed effettueremo il lavoro per risolverlo il prima possibile.

La classificazione di una query come "avviso," o "errore," è importante ai fini del test del logo per gli strumenti statici?

CodeQL classifica le query come errori, avvisi o problemi, ma questa classificazione è separata dal modo in cui il Programma di Compatibilità Hardware di Windows e il Test del Logo degli Strumenti Statici classificano i risultati.

I driver con difetti in qualsiasi query Must-Fix non superano il test del logo degli strumenti statici e non superano la certificazione, indipendentemente dalla classificazione delle query (ad esempio, avviso).

È possibile generare un DVL nelle soluzioni di Visual Studio?

No, la generazione DVL deve essere eseguita a livello di progetto e non può essere eseguita nelle soluzioni di Visual Studio.

Per istruzioni complete per generare un DVL, vedere Creazione di un log di verifica del driver.

È possibile generare un log di verifica del driver (DVL) all'esterno del contesto di msbuild o Visual Studio?

Come parte di Windows Driver Kit (WDK) ed Enterprise WDK (eWDK), Microsoft fornisce un componente denominato dvl.exe che può essere usato per generare i log di verifica dei driver (DVLs).

In WDK/eWDK preview versioni 21342 e successive è possibile generare un DVL dalla riga di comando senza usare msbuild o Visual Studio specificando un nome e un'architettura del driver.

Per ulteriori dettagli, vedere Creazione di un log di verifica del driver.

Ho commenti o domande su come usare CodeQL sul mio driver, dove si inviano commenti e suggerimenti?

Inviare commenti e suggerimenti e domande a stlogohelp@microsoft.com.