Entdecken Sie agentenbasierte Entwicklung –

Verwalten von Erweiterungen in Unternehmensumgebungen

Visual Studio Code-Erweiterungen steigern die Produktivität, erfordern jedoch in Unternehmensumgebungen eine sorgfältige Verwaltung, um Sicherheit und Compliance zu gewährleisten. Dieser Artikel behandelt, wie IT-Administratoren die Installation von Erweiterungen steuern, einen privaten Marktplatz hosten und Erweiterungen auf den Rechnern der Benutzer bereitstellen können.

Konfigurieren von zugelassenen Erweiterungen

Hinweis

Die Unterstützung für zugelassene Erweiterungen ist ab der VS Code-Version 1.96 verfügbar.

VS Code unterstützt die Steuerung, welche Erweiterungen auf den Rechnern der Benutzer installiert werden dürfen, über die anwendungsweite Einstellung extensions.allowed In VS Code öffnen In VS Code Insiders öffnen Diese Einstellung wird auf Organisationsebene verwaltet. Kontaktieren Sie Ihren Administrator, um sie zu ändern.. Sie können Erweiterungen selektiv nach Herausgeber, spezifischer Erweiterung, Version und Plattform zulassen. Standardmäßig sind alle Erweiterungen zugelassen. Wenn Sie diese Einstellung konfigurieren, können nur die aufgelisteten Erweiterungen installiert werden, und nicht aufgelistete Erweiterungen werden blockiert. Wenn Sie eine bereits installierte Erweiterung oder Version blockieren, wird die Erweiterung deaktiviert.

Zulassen oder Blockieren nach Herausgeber

Verwenden Sie die Herausgeber-ID (Publisher ID), um alle Erweiterungen eines Herausgebers zuzulassen oder zu blockieren. Ein Schlüssel ohne Punkt (.) wird als Herausgeber-ID behandelt.

"extensions.allowed": {
    "microsoft": true,
    "github": true
}
Tipp

Verwenden Sie microsoft als Herausgeber-ID, um sich auf alle von Microsoft veröffentlichten Erweiterungen zu beziehen, auch wenn diese unterschiedliche Herausgeber-IDs haben könnten.

Zulassen oder Blockieren nach Erweiterung

Verwenden Sie die vollständige Erweiterungs-ID (<Herausgeber>.<Erweiterung>), um eine bestimmte Erweiterung zuzulassen oder zu blockieren. Ein Schlüssel mit einem Punkt wird als Erweiterungs-ID behandelt.

"extensions.allowed": {
    "esbenp.prettier-vscode": true,
    "ms-azuretools.vscode-containers": false
}

Zulassen spezifischer Versionen oder Plattformen

Heften Sie eine Erweiterung an eine oder mehrere genehmigte Versionen. Versionsbereiche werden nicht unterstützt, daher müssen Sie jede Version einzeln auflisten. Um die Einschränkung weiter nach Plattform festzulegen, hängen Sie @<Plattform> an die Version an.

"extensions.allowed": {
    "dbaeumer.vscode-eslint": ["3.0.0"],
    "figma.figma-vscode-extension": ["3.0.0", "4.2.3", "4.1.2"],
    "rust-lang.rust-analyzer": ["5.0.0@win32-x64", "5.0.0@darwin-x64"]
}

Nur stabile Versionen zulassen

Verwenden Sie "stable" als Wert, um alle stabilen Versionen einer Erweiterung oder alle Erweiterungen eines Herausgebers zuzulassen, während Vorabversionen (Pre-release) blockiert werden.

"extensions.allowed": {
    "github.vscode-pull-request-github": "stable",
    "redhat": "stable"
}

Rangfolge und Regeln

  • Der spezifischere Selektor hat Vorrang. Zum Beispiel erlaubt "microsoft": true und "microsoft.cplusplus": false alle Microsoft-Erweiterungen mit Ausnahme der C++-Erweiterung.
  • Doppelte Schlüsselwerte werden nicht unterstützt. Das gleichzeitige Einbeziehen von "microsoft": true und "microsoft": false führt zu einer ungültigen Konfiguration.
  • Platzhalter (Wildcards) werden in Erweiterungs- oder Herausgeber-IDs nicht unterstützt, mit Ausnahme von "*", um alle Erweiterungen zuzulassen oder zu blockieren. Zum Beispiel blockiert "*": false alle Erweiterungen.

Bereitstellung mit Organisationsrichtlinie

Organisationen können zugelassene Erweiterungen zentral über die AllowedExtensions-Richtlinie verwalten. Über Geräteverwaltungslösungen können Administratoren die Richtlinie auf allen verwalteten Geräten bereitstellen und erzwingen. Dies überschreibt jede vom Benutzer konfigurierte extensions.allowed In VS Code öffnen In VS Code Insiders öffnen Diese Einstellung wird auf Organisationsebene verwaltet. Kontaktieren Sie Ihren Administrator, um sie zu ändern.-Einstellung auf einzelnen Geräten.

Screenshot of configuring AllowedExtensions from the Local Group Policy Editor.

Wichtig

Wenn ein Syntaxfehler im Richtlinienwert vorliegt, wird die Einstellung extensions.allowed nicht angewendet. Überprüfen Sie das Fensterprotokoll (Window log) in VS Code auf Fehler (drücken Sie ⇧⌘P (Windows, Linux Ctrl+Shift+P) und geben Sie Show Window Log ein).

Vorinstallieren von Erweiterungen

Sie können VS Code mit einer Reihe von vorinstallierten Erweiterungen (Bootstrap) einrichten. Diese Funktionalität ist nützlich, wenn Sie ein Maschinen-Image, eine virtuelle Maschine oder eine Cloud-Workstation vorbereiten, auf der VS Code vorinstalliert ist und bestimmte Erweiterungen den Benutzern sofort zur Verfügung stehen sollen.

Hinweis

Die Unterstützung für die Vorinstallation von Erweiterungen ist derzeit nur unter Windows verfügbar.

Folgen Sie diesen Schritten, um Erweiterungen per Bootstrap zu laden:

  1. Erstellen Sie einen Ordner bootstrap\extensions im VS Code-Installationsverzeichnis.

  2. Laden Sie die VSIX-Dateien für die Erweiterungen herunter, die Sie vorinstallieren möchten, und legen Sie sie im Ordner bootstrap\extensions ab.

  3. Wenn ein Benutzer VS Code zum ersten Mal startet, werden alle Erweiterungen im Ordner bootstrap\extensions im Hintergrund lautlos installiert.

Benutzer können vorinstallierte Erweiterungen weiterhin deinstallieren. Ein Neustart von VS Code nach der Deinstallation einer Erweiterung führt nicht zu einer erneuten Installation der Erweiterung.

Hosten eines privaten Erweiterungs-Marktplatzes

Der private Marktplatz ermöglicht es Unternehmen, Erweiterungen innerhalb ihrer Organisation selbst zu hosten und zu verteilen, um Sicherheits- und Compliance-Anforderungen zu erfüllen. Der private Marktplatz lässt sich in die VS Code-Erweiterungserfahrung integrieren und bietet Benutzern die Entdeckung sowie automatische Updates für private Erweiterungen.

Hauptmerkmale des privaten Marktplatzes

  • Self-Hosting: Hosten Sie interne Erweiterungen auf Ihrer eigenen Infrastruktur, wie z.B. Azure oder Kubernetes, um geistiges Eigentum zu schützen.
  • Upstreaming: Binden Sie automatisch öffentliche Erweiterungen vom Visual Studio Marketplace ein, selbst in Umgebungen mit eingeschränkter Internetverbindung. Erlauben oder verbieten Sie ausgewählte Erweiterungen durch Einrichtung einer Zulassungsliste.
  • Rehosting: Laden Sie öffentliche Erweiterungen herunter und hosten Sie diese selbst, um unternehmensspezifische Verifizierungs- und Sicherheitsstandards anzuwenden, mit Unterstützung für isolierte (Air-Gapped) Umgebungen. Sehen Sie hier, wie Microsoft Ihre Software-Lieferkette schützt.
  • Einfache Bereitstellung: Bereitstellung als zustandsloser (stateless) Docker-Container, keine externe Datenbank erforderlich.
  • Flexible Speicherung: Veröffentlichen und verwalten Sie Erweiterungen unter Verwendung jedes Dateisystems oder Azure Artifacts.
  • Zentralisiertes Rollout: Stellen Sie den privaten Marktplatz für Ihr Team mithilfe von Gruppenrichtlinien unter Windows und macOS bereit.
  • Integrierte Installation und Updates: Suchen und installieren Sie Erweiterungen direkt aus VS Code, mit automatischen Updates für neue Versionen.
  • Plattformübergreifende Unterstützung: Kompatibel mit VS Code Desktop unter Windows, macOS und Linux.
Hinweis

Die Verbindung über VS Code Server oder VS Code for the Web wird nicht unterstützt.

Der private Marktplatz steht derzeit Kunden von GitHub Enterprise zur Verfügung. VS Code-Benutzer müssen sich mit einem GitHub Enterprise- oder Copilot Enterprise/Business-Konto anmelden, um auf den privaten Marktplatz zuzugreifen.

Beginnen Sie mit dem Bereitstellungs- und Funktionsleitfaden, der Anweisungen zur Bereitstellung, Skripte und die Konfiguration der Entwicklungsumgebung enthält. Bei Fragen oder Unterstützung wenden Sie sich bitte an den Support für den privaten Marktplatz.

© . This website operates independently and is not affiliated with or endorsed by Microsoft. All brand names, logos, and trademarks are the property of their respective owners.