ist jetzt verfügbar! Lesen Sie über die neuen Funktionen und Fehlerbehebungen vom November.

Vertrauen in Arbeitsbereiche

Visual Studio Code nimmt Sicherheit ernst und möchte Ihnen helfen, Code sicher zu durchsuchen und zu bearbeiten, unabhängig von Quelle oder ursprünglichem Autor. Die Funktion "Arbeitsbereichsvertrauen" ermöglicht es Ihnen zu entscheiden, ob Code in Ihrem Projektordner von VS Code und Erweiterungen ohne Ihre ausdrückliche Zustimmung ausgeführt werden kann.

Trust this folder dialog

Hinweis: Im Zweifelsfall lassen Sie einen Ordner im Eingeschränkten Modus. Sie können das Vertrauen später immer noch aktivieren.

Sicheres Durchsuchen von Code

Es ist großartig, dass so viel Quellcode in öffentlichen Repositories und Dateifreigaben verfügbar ist. Unabhängig von der Codierungsaufgabe oder dem Problem gibt es wahrscheinlich bereits eine gute Lösung. Es ist auch großartig, dass es so viele leistungsstarke Codierungswerkzeuge gibt, die Ihnen helfen, Ihren Code zu verstehen, zu debuggen und zu optimieren. Die Verwendung von Open-Source-Code und -Tools birgt jedoch Risiken, und Sie können sich böswilliger Codeausführung und Exploits aussetzen.

Arbeitsbereichsvertrauen bietet eine zusätzliche Sicherheitsebene bei der Arbeit mit unbekanntem Code, indem die automatische Ausführung von Code in Ihrem Arbeitsbereich verhindert wird, wenn der Arbeitsbereich im "Eingeschränkten Modus" geöffnet ist.

Hinweis: Die Begriffe "Arbeitsbereich" und "Ordner" werden in der VS Code-Benutzeroberfläche und Dokumentation häufig verwendet. Sie können sich einen "Arbeitsbereich" als Ordner mit zusätzlichen Metadaten vorstellen, die von VS Code erstellt und verwendet werden.

Eingeschränkter Modus

Wenn Sie vom Dialogfeld "Arbeitsbereichsvertrauen" aufgefordert werden und Nein, ich vertraue den Autoren nicht wählen, wechselt VS Code in den Eingeschränkten Modus, um die Codeausführung zu verhindern.

Die Benutzeroberfläche zeigt oben ein Banner mit einem Link zur Verwaltung Ihres Ordners über den Editor für Arbeitsbereichsvertrauen an. In der Statusleiste können Sie auch eine Markierung sehen, die darauf hinweist, dass der Arbeitsbereich im Eingeschränkten Modus ist.

Workspace Trust Restricted Mode banner

Der Eingeschränkte Modus versucht, die automatische Codeausführung zu verhindern, indem er verschiedene VS Code-Funktionen deaktiviert oder einschränkt: Aufgaben, Debugging, Arbeitsbereichseinstellungen und Erweiterungen.

Um die vollständige Liste der im Eingeschränkten Modus deaktivierten Funktionen anzuzeigen, können Sie den Editor für Arbeitsbereichsvertrauen über den Link Verwalten im Banner oder durch Auswahl der Markierung für den Eingeschränkten Modus in der Statusleiste öffnen.

Workspace Trust editor

Wichtig: Arbeitsbereichsvertrauen kann eine bösartige Erweiterung nicht daran hindern, Code auszuführen und den Eingeschränkten Modus zu ignorieren. Sie sollten nur Erweiterungen installieren und ausführen, die von einem bekannten Publisher stammen, dem Sie vertrauen.

Aufgaben

VS Code Aufgaben können Skripte und Tool-Binaries ausführen. Da Aufgabendefinitionen im .vscode-Ordner des Arbeitsbereichs definiert sind, sind sie Teil des committeten Quellcodes eines Repositories und werden mit jedem Benutzer dieses Repositories geteilt. Wenn jemand eine bösartige Aufgabe erstellen würde, könnte diese unwissentlich von jedem ausgeführt werden, der das Repository geklont hat.

Wenn Sie versuchen, Aufgaben auszuführen oder aufzulisten (Aufgaben > Aufgabe ausführen), während Sie sich im Eingeschränkten Modus befinden, zeigt VS Code eine Aufforderung an, um zu bestätigen, dass Sie dem Ordner vertrauen und die Aufgabe weiterhin ausführen können. Wenn Sie den Dialog abbrechen, bleibt VS Code im Eingeschränkten Modus.

Workspace Trust Restricted Mode tasks dialog

Debugging

Ähnlich wie bei der Ausführung einer VS Code-Aufgabe können Debug-Erweiterungen beim Starten einer Debug-Sitzung Debugger-Binaries ausführen. Aus diesem Grund ist das Debugging ebenfalls deaktiviert, wenn ein Ordner im Eingeschränkten Modus geöffnet ist.

Wenn Sie versuchen, eine Debug-Sitzung zu starten (Debuggen > Debuggen starten), während Sie sich im Eingeschränkten Modus befinden, zeigt VS Code eine Aufforderung an, um zu bestätigen, dass Sie dem Ordner vertrauen und den Debugger weiterhin starten können. Wenn Sie den Dialog abbrechen, bleibt VS Code im Eingeschränkten Modus und startet die Debug-Sitzung nicht.

Workspace Trust Restricted Mode debugging dialog

Arbeitsbereichseinstellungen

Arbeitsbereichs- Einstellungen werden im .vscode-Ordner im Stammverzeichnis Ihres Arbeitsbereichs gespeichert und daher von jedem geteilt, der das Arbeitsbereichsrepository klont. Einige Einstellungen enthalten Pfade zu ausführbaren Dateien (z. B. Linter-Binaries), die, wenn sie auf bösartigen Code verweisen, Schaden verursachen könnten. Aus diesem Grund deaktiviert VS Code eine Reihe von Arbeitsbereichseinstellungen im Eingeschränkten Modus.

Workspace Trust editor workspace settings link

Wählen Sie im Editor für Arbeitsbereichsvertrauen den Link für Arbeitsbereichseinstellungen, die nicht angewendet werden, um den Einstellungen-Editor mit dem Tag @tag:requireTrustedWorkspace zu öffnen.

Settings editor scoped by the requireTrustedWorkspace tag in a restricted workspace

Erweiterungen

Das Ökosystem der VS Code- Erweiterungen ist unglaublich reichhaltig und vielfältig. Entwickler haben Erweiterungen erstellt, die bei fast jeder Programmieraufgabe oder Editor-Anpassung helfen. Einige Erweiterungen bieten volle Programmiersprachenunterstützung (IntelliSense, Debugging, Code-Analyse), andere ermöglichen es Ihnen, Musik zu spielen oder virtuelle Haustiere zu haben.

Die meisten Erweiterungen führen Code in Ihrem Auftrag aus und könnten potenziell Schaden anrichten. Einige Erweiterungen haben Einstellungen, die dazu führen könnten, dass sie bösartig agieren, wenn sie so konfiguriert sind, dass sie eine unerwartete ausführbare Datei ausführen. Aus diesem Grund sind Erweiterungen, die nicht explizit für Arbeitsbereichsvertrauen optiert haben, im Eingeschränkten Modus standardmäßig deaktiviert.

Workspace Trust disabled extensions link

Sie können den Status einer installierten Erweiterung überprüfen, indem Sie den Link Erweiterungen sind deaktiviert oder haben eingeschränkte Funktionalität im Editor für Arbeitsbereichsvertrauen auswählen. Dies öffnet die Ansicht "Erweiterungen", gefiltert mit @workspaceUnsupported.

Extensions view filtered by workspaceUnsupported showing disabled and limited extensions

Erweiterungen, die nicht für Arbeitsbereichsvertrauen optiert haben, können im Eingeschränkten Modus entweder deaktiviert oder eingeschränkt werden.

Im Eingeschränkten Modus deaktiviert

Erweiterungen, die entweder nicht explizit angegeben haben, dass sie die Ausführung im Eingeschränkten Modus unterstützen, oder die ein Autor explizit von der Aktivierung im Eingeschränkten Modus ausgeschlossen hat (weil die Erweiterung durch Arbeitsbereichsmodifikationen (Einstellungen oder Dateien) missbraucht werden könnte), werden im Abschnitt Im Eingeschränkten Modus deaktiviert angezeigt.

Im Eingeschränkten Modus eingeschränkt

Erweiterungsautoren können ihre Erweiterungen auch auf mögliche Sicherheitslücken prüfen und deklarieren, dass sie im Eingeschränkten Modus nur eingeschränkte Unterstützung haben. Dieser Modus bedeutet, dass die Erweiterung einige Funktionen oder Merkmale deaktivieren kann, um einen möglichen Exploit zu verhindern.

Erweiterungen können benutzerdefinierten Text zum Arbeitsbereichsvertrauens-Badge in der Erweiterungsansicht hinzufügen und die Einschränkung im Rahmen der Ausführung in einem nicht vertrauenswürdigen Ordner erläutern. Beispielsweise schränkt die integrierte PHP-Erweiterung von VS Code die Verwendung der Einstellung php.validate.executablePath auf vertrauenswürdige Ordner ein, da das Überschreiben dieser Einstellung ein bösartiges Programm ausführen könnte.

PHP extension limited in Restricted Mode hover

Sie können die Unterstützung für Arbeitsbereichsvertrauen einer Erweiterung mithilfe der Einstellung extensions.supportUntrustedWorkspaces überschreiben, die im folgenden Abschnitt Erweiterungen aktivieren beschrieben wird.

Wenn Sie versuchen, eine Erweiterung im Eingeschränkten Modus zu installieren, werden Sie aufgefordert, entweder den Arbeitsbereich zu vertrauen oder die Erweiterung einfach zu installieren. Wenn die Erweiterung keine Arbeitsbereichsvertrauensunterstützung hat, wird sie installiert, aber deaktiviert oder mit eingeschränkter Funktionalität ausgeführt.

Workspace Trust install an extension in Restricted Mode dialog

Hinweis: Erweiterungsautoren können lernen, wie sie ihre Erweiterungen aktualisieren, um Arbeitsbereichsvertrauen zu unterstützen, indem sie den Leitfaden für Arbeitsbereichsvertrauen für Erweiterungen lesen.

Einen Arbeitsbereich vertrauen

Wenn Sie den Autoren und Maintainern eines Projekts vertrauen, können Sie den Ordner des Projekts auf Ihrem lokalen Computer vertrauen. Es ist beispielsweise normalerweise sicher, Repositories von bekannten GitHub-Organisationen wie github.com/microsoft oder github.com/docker zu vertrauen.

Wenn Sie einen neuen Ordner öffnen, können Sie diesen Ordner und seine Unterordner über die anfängliche Arbeitsbereichsvertrauensabfrage als vertrauenswürdig einstufen.

Trust this folder dialog

Sie können auch den Editor für Arbeitsbereichsvertrauen aufrufen und den Vertrauensstatus eines Ordners schnell ändern, indem Sie auf die Schaltfläche Vertrauen oder Übergeordneten Ordner vertrauen klicken.

Workspace Trust editor Trust buttons

Es gibt mehrere Möglichkeiten, den Dialog "Editor für Arbeitsbereichsvertrauen" aufzurufen.

Im Eingeschränkten Modus

  • Link Verwalten im Banner des Eingeschränkten Modus
  • Element der Statusleiste für den Eingeschränkten Modus

Sie können auch jederzeit

  • den Befehl Arbeitsbereiche: Arbeitsbereichsvertrauen verwalten aus der Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)) verwenden

Ordner auswählen

Wenn Sie einem Ordner vertrauen, wird er zur Liste Vertrauenswürdige Ordner & Arbeitsbereiche hinzugefügt, die im Editor für Arbeitsbereichsvertrauen angezeigt wird.

Workspace Trust editor Trusted Folders and Workspaces list

Sie können Ordner manuell zu dieser Liste hinzufügen, bearbeiten und entfernen, um das Arbeitsbereichsvertrauen zu aktivieren oder zu deaktivieren. Der aktive Ordner wird in dieser Liste fett hervorgehoben.

Auswahl eines übergeordneten Ordners

Wenn Sie einem Ordner über den Editor für Arbeitsbereichsvertrauen vertrauen, haben Sie die Option, auch dem übergeordneten Ordner zu vertrauen. Dies wendet das Vertrauen auf den übergeordneten Ordner und alle seine Unterordner an.

Workspace Trust editor showing the Trust Parent button

Das Vertrauen in den übergeordneten Ordner kann hilfreich sein, wenn Sie viele Ordner mit vertrauenswürdigem Inhalt unter einem einzigen Ordner haben.

Wenn Sie einen Unterordner unter einem vertrauenswürdigen übergeordneten Ordner öffnen, sehen Sie nicht die übliche Schaltfläche Nicht vertrauen, um wieder in den Eingeschränkten Modus zu gelangen. Stattdessen gibt es einen Text, der darauf hinweist, dass Ihr Ordner aufgrund eines anderen Ordners vertrauenswürdig ist.

Sie können einen übergeordneten Ordner aus der Liste Vertrauenswürdige Ordner & Arbeitsbereiche hinzufügen, ändern und entfernen.

Ordnerkonfigurationen

Wenn Sie einem übergeordneten Ordner vertrauen, werden alle Unterordner als vertrauenswürdig eingestuft, sodass Sie das Arbeitsbereichsvertrauen über den Speicherort eines Repositorys auf der Festplatte steuern können.

Sie könnten beispielsweise alle vertrauenswürdigen Repositories unter einem übergeordneten Ordner "TrustedRepos" und unbekannte Repositories unter einem anderen übergeordneten Ordner wie "ForEvaluation" platzieren. Sie würden dem Ordner "TrustedRepos" vertrauen und selektiv Ordner unter "ForEvaluation" vertrauen.

├── TrustedRepos - Clone trusted repositories under this parent folder
└── ForEvaluation - Clone experimental or unfamiliar repositories under this parent folder

Sie können Ihre Repositories auch gruppieren und Vertrauen für sie festlegen, indem Sie sie unter organisationsspezifischen übergeordneten Ordnern gruppieren.

├── github/microsoft - Clone a specific organization's repositories under this parent folder
├── github/{myforks} - Place your forked repositories under this parent folder
└── local - Local un-published repositories

Erweiterungen aktivieren

Was passiert, wenn Sie den Eingeschränkten Modus verwenden möchten, aber Ihre bevorzugte Erweiterung keine Arbeitsbereichsvertrauensunterstützung bietet? Dies kann passieren, wenn eine Erweiterung, obwohl nützlich und funktionsfähig, nicht aktiv gewartet wird und ihre Unterstützung für Arbeitsbereichsvertrauen nicht deklariert hat. Um dieses Szenario zu bewältigen, können Sie den Vertrauensstatus der Erweiterung mit der Einstellung extensions.supportUntrustedWorkspaces überschreiben.

Wichtig: Seien Sie vorsichtig beim Überschreiben der Unterstützung für Arbeitsbereichsvertrauen einer Erweiterung. Es ist möglich, dass der Erweiterungsautor einen guten Grund hat, seine Erweiterung im Eingeschränkten Modus zu deaktivieren. Im Zweifelsfall wenden Sie sich an den Erweiterungsautor oder überprüfen Sie aktuelle Changelogs, um mehr Kontext zu erhalten.

Im Einstellungen-Editor (⌘, (Windows, Linux Ctrl+,)) können Sie das Arbeitsbereichsvertrauen für einzelne Erweiterungen über die Einstellung Erweiterungen: Unterstützung für nicht vertrauenswürdige Arbeitsbereiche (extensions.supportUntrustedWorkspaces) überschreiben.

Extension support

Wählen Sie den Link In settings.json bearbeiten, um die Liste der Erweiterungs-IDs und ihren Unterstützungsstatus sowie ihre Version zu verwalten. Sie können jede Ihrer installierten Erweiterungen über IntelliSense-Vorschläge auswählen.

Unten sehen Sie einen Eintrag in settings.json für die Prettier-Erweiterung.

  "extensions.supportUntrustedWorkspaces": {
    "esbenp.prettier-vscode": {
      "supported": true,
      "version": "6.4.0"
    },
  },

Sie können die Unterstützung für Arbeitsbereichsvertrauen entweder mit dem Attribut supported aktivieren oder deaktivieren. Das Attribut version gibt die exakte zutreffende Erweiterungsversion an, und Sie können das Versionsfeld entfernen, wenn Sie den Status für alle Versionen festlegen möchten.

Wenn Sie mehr darüber erfahren möchten, wie Erweiterungsautoren bewerten und entscheiden, welche Funktionen im Eingeschränkten Modus eingeschränkt werden sollen, lesen Sie den Leitfaden für Arbeitsbereichsvertrauen für Erweiterungen.

Nicht vertrauenswürdige Dateien öffnen

Wenn Sie eine Datei öffnen, die sich außerhalb eines vertrauenswürdigen Ordners befindet, erkennt VS Code, dass die Datei von außerhalb des Ordners stammt, und fordert Sie auf, die Datei weiterhin zu öffnen oder die Datei in einem neuen Fenster im Eingeschränkten Modus zu öffnen. Das Öffnen im Eingeschränkten Modus ist die sicherste Option, und Sie können die Datei jederzeit in Ihrem ursprünglichen VS Code-Fenster erneut öffnen, sobald Sie feststellen, dass die Datei vertrauenswürdig ist.

Untrusted files dialog

Wenn Sie nicht aufgefordert werden möchten, wenn Sie Dateien aus nicht vertrauenswürdigen Arbeitsbereichen öffnen, können Sie security.workspace.trust.untrustedFiles auf open setzen. Sie können security.workspace.trust.untrustedFiles auch auf newWindow setzen, um immer ein neues Fenster im Eingeschränkten Modus zu erstellen. Das Aktivieren des Kontrollkästchens Meine Entscheidung für alle Arbeitsbereiche merken im Dialogfeld für nicht vertrauenswürdige Dateien wendet Ihre Wahl auf die Benutzereinstellung security.workspace.trust.untrustedFiles an.

Nicht vertrauenswürdige Ordner öffnen

Beim Arbeiten mit Multi-Root-Arbeitsbereichen mit mehreren Ordnern werden Sie aufgefordert zu entscheiden, ob Sie den Dateien in diesem Ordner vertrauen oder ob der gesamte Arbeitsbereich in den Eingeschränkten Modus wechselt, wenn Sie versuchen, einen neuen Ordner zu einem vertrauenswürdigen Multi-Root-Arbeitsbereich hinzuzufügen.

Untrusted folder dialog

Leere Fenster (kein offener Ordner)

Standardmäßig führt VS Code ein neues VS Code-Fenster (Instanz) mit vollständigem Vertrauen aus, wenn Sie es öffnen, ohne einen Ordner oder Arbeitsbereich zu öffnen. Alle installierten Erweiterungen sind aktiviert, und Sie können das leere Fenster ohne Einschränkungen verwenden.

Wenn Sie eine Datei öffnen, werden Sie gefragt, ob Sie eine nicht vertrauenswürdige Datei öffnen möchten, da kein Ordner vorhanden ist, der sie überlagert.

Sie können ein leeres Fenster in den Eingeschränkten Modus wechseln, indem Sie den Editor für Arbeitsbereichsvertrauen aufrufen (Arbeitsbereiche: Arbeitsbereichsvertrauen verwalten in der Befehlspalette auswählen) und dann Nicht vertrauen auswählen. Das leere Fenster bleibt für Ihre aktuelle Sitzung im Eingeschränkten Modus, wird aber wieder vertrauenswürdig, wenn Sie neu starten oder ein neues Fenster erstellen.

Wenn Sie möchten, dass alle leeren Fenster im Eingeschränkten Modus sind, können Sie security.workspace.trust.emptyWindow auf false setzen.

Einstellungen

Unten finden Sie die verfügbaren Einstellungen für Arbeitsbereichsvertrauen

Befehlszeilen-Schalter

Sie können das Arbeitsbereichsvertrauen über die VS Code-Befehlszeile deaktivieren, indem Sie --disable-workspace-trust übergeben. Dieser Schalter wirkt sich nur auf die aktuelle Sitzung aus.

Nächste Schritte

Weitere Informationen finden Sie unter

Häufig gestellte Fragen

Kann ich meinen Quellcode im Eingeschränkten Modus immer noch bearbeiten?

Ja, Sie können Quellcode im Eingeschränkten Modus weiterhin durchsuchen und bearbeiten. Einige Sprachfunktionen können deaktiviert sein, aber die Textbearbeitung wird immer unterstützt.

Wo sind meine installierten Erweiterungen geblieben?

Im Eingeschränkten Modus wird jede Erweiterung, die keine Arbeitsbereichsvertrauensunterstützung hat, deaktiviert, und alle UI-Elemente wie Aktivitätsleistensymbole und Befehle werden nicht angezeigt.

Sie können die Unterstützung für Arbeitsbereichsvertrauen einer Erweiterung mit der Einstellung extensions.supportUntrustedWorkspaces überschreiben, aber tun Sie dies mit Vorsicht. Erweiterungen aktivieren enthält weitere Details.

Kann ich die Funktion Arbeitsbereichsvertrauen deaktivieren?

Sie können, aber es wird nicht empfohlen. Wenn Sie nicht möchten, dass VS Code beim Öffnen eines neuen Ordners oder Repositorys auf Arbeitsbereichsvertrauen prüft, können Sie security.workspace.trust.enabled auf false setzen. VS Code verhält sich dann wie vor dem Release 1.57.

Wie mache ich einen Ordner/Arbeitsbereich nicht vertrauenswürdig?

Rufen Sie den Editor für Arbeitsbereichsvertrauen auf (Arbeitsbereiche: Arbeitsbereichsvertrauen verwalten aus der Befehlspalette) und wählen Sie die Schaltfläche Nicht vertrauen. Sie können den Ordner auch aus der Liste Vertrauenswürdige Ordner & Arbeitsbereiche entfernen.

Warum sehe ich die Schaltfläche "Nicht vertrauen" nicht?

Wenn Sie die Schaltfläche Nicht vertrauen im Dialogfeld für Arbeitsbereichsvertrauen nicht sehen, kann die Vertrauensstufe des Ordners von einem übergeordneten Ordner geerbt werden. Überprüfen Sie die Liste Vertrauenswürdige Ordner & Arbeitsbereiche, um zu sehen, ob ein übergeordneter Ordner das Arbeitsbereichsvertrauen aktiviert hat.

Einige Workflows, wie die Verbindung zu einem GitHub Codespace oder das Anhängen an einen laufenden Docker-Container, sind automatisch vertrauenswürdig, da dies verwaltete Umgebungen sind, denen Sie bereits ein hohes Maß an Vertrauen entgegenbringen sollten.

Wogegen schützt Arbeitsbereichsvertrauen?

Viele Funktionen von VS Code erlauben die automatische Ausführung von Drittanbieter-Tools und Erweiterungen, wie z. B. Linting oder Formatieren beim Speichern, oder bei bestimmten Operationen wie Kompilieren von Code oder Debugging. Eine unethische Person könnte ein harmlos aussehendes Projekt erstellen, das bösartigen Code ohne Ihr Wissen ausführt und Ihren lokalen Computer beschädigt. Arbeitsbereichsvertrauen bietet eine zusätzliche Sicherheitsebene, indem es versucht, die Codeausführung zu verhindern, während Sie die Sicherheit und Integrität von unbekanntem Quellcode bewerten.

© . This site is unofficial and not affiliated with Microsoft.