在企业环境中管理扩展

Visual Studio Code 扩展可以提高工作效率,但在企业环境中需要妥善管理,以确保安全性和合规性。本文介绍了 IT 管理员如何控制扩展安装、托管私有市场以及将扩展部署到用户计算机上。

配置允许的扩展

注意

从 VS Code 1.96 版本开始提供对允许扩展的支持。

VS Code 支持通过 extensions.allowed 在 VS Code 中打开 在 VS Code Insiders 中打开 此设置在组织层面进行管理。请联系您的管理员进行更改。 全局设置来控制可以在用户计算机上安装哪些扩展。您可以按发布者、特定扩展、版本和平台有选择地允许扩展。默认情况下,允许安装所有扩展。当您配置此设置时,只有列出的扩展才能安装,未列出的扩展将被阻止。如果您阻止了已安装的扩展或版本,该扩展将被禁用。

按发布者允许或阻止

使用发布者 ID 来允许或阻止来自特定发布者的所有扩展。不带点号 (.) 的键将被视为发布者 ID。

"extensions.allowed": {
    "microsoft": true,
    "github": true
}
提示

使用 microsoft 作为发布者 ID 指代 Microsoft 发布的所有扩展,即使它们可能有不同的发布者 ID。

按扩展名允许或阻止

使用完整的扩展 ID (<publisher>.<extension>) 来允许或阻止特定扩展。带有点号的键将被视为扩展 ID。

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

允许特定版本或平台

将扩展固定到一个或多个已批准的版本。不支持版本范围,因此必须分别列出每个版本。若要进一步按平台限制,请在版本后附加 @<platform>

"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"]
}

仅允许稳定版本

使用 "stable" 作为值来允许扩展的所有稳定版本或发布者的所有稳定版本,同时阻止预发布版本。

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

优先级与规则

  • 更具体的选择器优先。例如,"microsoft": true"microsoft.cplusplus": false 将允许除 C++ 扩展之外的所有 Microsoft 扩展。
  • 不支持重复的键值。同时包含 "microsoft": true"microsoft": false 会导致配置无效。
  • 扩展 ID 或发布者 ID 中不支持通配符,除非是 "*",用于允许或阻止所有扩展。例如,"*": false 会阻止所有扩展。

使用组织策略部署

组织可以通过使用 AllowedExtensions 策略来集中管理允许的扩展。通过设备管理解决方案,管理员可以在所有受管设备上部署并强制执行该策略。这会覆盖个人设备上用户配置的 extensions.allowed 在 VS Code 中打开 在 VS Code Insiders 中打开 此设置在组织层面进行管理。请联系您的管理员进行更改。 设置。

Screenshot of configuring AllowedExtensions from the Local Group Policy Editor.

重要

如果策略值中存在语法错误,则不会应用 extensions.allowed 设置。请检查 VS Code 中的窗口日志以查找错误(按 ⇧⌘P (Windows, Linux Ctrl+Shift+P) 并输入 Show Window Log)。

预安装扩展

您可以为 VS Code 设置一组预安装的扩展(引导程序)。当您准备机器镜像、虚拟机或云工作站,且其中预装了 VS Code 并希望用户立即可用特定扩展时,此功能非常有用。

注意

目前仅 Windows 支持预安装扩展。

按照以下步骤引导扩展

  1. 在 VS Code 安装目录中创建一个 bootstrap\extensions 文件夹。

  2. 下载您想要预安装的扩展的 VSIX 文件,并将它们放入 bootstrap\extensions 文件夹中。

  3. 当用户首次启动 VS Code 时,bootstrap\extensions 文件夹中的所有扩展都会在后台静默安装。

用户仍然可以卸载已预安装的扩展。卸载扩展后重启 VS Code 不会重新安装该扩展。

托管私有扩展市场

私有市场使企业能够在组织内部自托管和分发扩展,以满足安全和合规性要求。私有市场与 VS Code 扩展体验集成,让用户可以发现并自动更新私有扩展。

私有市场的主要功能

  • 自托管:在您自己的基础设施(如 Azure 或 Kubernetes)上托管内部扩展,以保护知识产权。
  • 上游:自动包含来自 Visual Studio Marketplace 的公共扩展,即使在网络连接受限的环境中也是如此。通过设置允许列表来允许或拒绝特定扩展。
  • 重托管:下载并托管公共扩展以应用企业特定的验证和安全标准,并支持气隙环境。查看 Microsoft 如何保护您的软件供应链
  • 简单部署:作为无状态 Docker 容器部署,无需外部数据库。
  • 灵活存储:使用任何文件系统或 Azure Artifacts 发布和管理扩展。
  • 集中式推广:使用 Windows 和 macOS 上的组策略向您的团队部署私有市场。
  • 集成安装与更新:直接从 VS Code 搜索并安装扩展,并可为新版本进行自动更新。
  • 跨平台支持:兼容 Windows、macOS 和 Linux 上的 VS Code 桌面版。
注意

不支持从 VS Code Server 或 Web 版 VS Code 连接。

私有市场目前面向 GitHub Enterprise 客户开放。VS Code 用户必须使用 GitHub Enterprise 或 Copilot Enterprise/Business 账户登录才能访问私有市场。

开始使用 部署和功能指南,其中包含部署说明、脚本和开发环境配置。如有问题或需要协助,请联系 私有市场支持

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