Einrichten eines Arbeitsbereichs CodeQL
Es gibt verschiedene Möglichkeiten, der Erweiterung Zugriff auf die Standardbibliotheken und Abfragen aus dem github/codeql-Repository zu gewähren:
-
Verwenden Sie den CodeQL Startarbeitsbereich, der eine Reihe von Verzeichnissen enthält, die im Format
codeql-custom-queries-LANGUAGEbenannt sind. Diese sind bereit, damit Sie mit der Entwicklung eigener benutzerdefinierter Abfragen für jede Sprache beginnen können, indem Sie die Standardbibliotheken verwenden. Es gibt auch einige Beispielabfragen für die ersten Schritte. Diese Methode wird empfohlen. -
Einen vorhandenen Arbeitsbereich für CodeQL aktualisieren. Dies wird für fortgeschrittene Benutzer empfohlen.
-
CodeQL CLI Benutzer können das Verzeichnis öffnen, das ihr extrahiertes CodeQL CLI Archiv enthält.
Option 1: Verwenden des Startarbeitsbereichs (empfohlen)
Hinweis
Das CodeQL Repository ist als Untermodul im Startarbeitsbereich enthalten. Sie sollten regelmäßig verwenden git submodule update --remote , um die Untermodule auf dem neuesten Stand zu halten, und sicherstellen, dass sie mit neueren Versionen der VS Code Erweiterung und der CodeQL CLIErweiterung kompatibel bleiben.
-
Klonen Sie das vscode-codeql-starter-Repository auf Ihren Computer. Vergewissern Sie sich, dass Sie die Untermodule einbeziehen, entweder durch Verwendung von
git clone --recursiveoder durch Verwendung vongit submodule update --init --remotenach dem Klonen. -
Klicken Sie in VS Code auf Datei und dann auf Arbeitsbereich aus Datei öffnen..., um die
vscode-codeql-starter.code-workspace-Datei aus Ihrem Checkout des Arbeitsbereich-Repositorys zu öffnen.
Option 2: Aktualisieren eines vorhandenen Arbeitsbereichs für CodeQL (erweitert)
-
In
wählen Sie "Datei" , dann"Ordner zum Arbeitsbereich hinzufügen..." und suchen Sie Ihren lokalen Checkout des-Repositorys. -
Erstellen Sie ein neues Verzeichnis pro Zielsprache, um benutzerdefinierte Abfragen und Bibliotheken zu speichern, indem Sie entweder die Optionen Neuer Ordner oder Ordner zu Arbeitsbereich hinzufügen verwenden.
-
Erstellen Sie eine
qlpack.yml-Datei in jedem Zielsprachenverzeichnis (diemain-Verzweigung diesergithub/codeql-Dateien ist bereits vorhanden). Dadurch wird die CodeQL CLI Zielsprache für dieses Verzeichnis angegeben und welche Abhängigkeiten bestehen. CodeQL sucht nach den Abhängigkeiten in allen geöffneten Arbeitsbereichsverzeichnissen oder im Suchpfad des Benutzers.Wenn Sie beispielsweise ein benutzerdefiniertes CodeQL-Verzeichnis namens
my-custom-cpp-packerstellen möchten, das von der CodeQL-Standardbibliothek für C++ abhängig sein sollte, erstellen Sie eineqlpack.yml-Datei mit folgendem Inhalt:name: my-custom-cpp-pack version: 0.0.0 libraryPathDependencies: codeql/cpp-allWeitere Informationen dazu, warum du eine
qlpack.yml-Datei hinzufügen musst, findest du unter Anpassen der Analyse mit CodeQL-Paketen.
Option 3: Öffnen des Verzeichnisses, das das extrahierte CodeQL CLI Archiv enthält
Hinweis
Für diese Option müssen Sie die CodeQL CLI einrichten. Weitere Informationen findest du unter Einrichten der CodeQL-CLI.
Öffnen Sie das Verzeichnis in VS Code, in dem Sie das CodeQL CLI .zip-Archiv extrahiert haben, um ein CodeQL-Verzeichnis zu erstellen (z. B. codeql-home).