在企业环境中管理扩展
Visual Studio Code 扩展可以提高生产力,但在企业环境中需要仔细管理以维护安全性和合规性。本文介绍 IT 管理员如何控制扩展安装、托管私有市场以及将扩展部署到用户机器。
配置允许的扩展
从 VS Code 1.96 版本开始,支持允许的扩展。
VS Code 支持通过 控制可以安装在用户机器上的扩展。
按发布者允许或阻止
使用发布者 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允许所有 Microsoft 扩展,但 C++ 扩展除外。 - 不支持重复的键值。同时包含
"microsoft": true和"microsoft": false会导致配置无效。 - 扩展或发布者 ID 中不支持通配符,除了
"*"用于允许或阻止所有扩展。例如,"*": false阻止所有扩展。
使用组织策略部署
组织可以使用 AllowedExtensions 策略 集中管理允许的扩展。通过设备管理解决方案,管理员可以将策略部署并强制应用于所有受管设备。这将覆盖任何用户配置的

如果策略值存在语法错误,则 extensions.allowed 设置将不会应用。检查 VS Code 的窗口日志是否有错误(按 ⇧⌘P (Windows, Linux Ctrl+Shift+P) 并输入 显示窗口日志)。
预安装扩展
您可以配置 VS Code,使其具有一组预安装的扩展(bootstrap)。此功能在准备机器镜像、虚拟机或预安装了 VS Code 且特定扩展立即可供用户使用的云工作站时非常有用。
目前仅在 Windows 上支持预安装扩展。
按照以下步骤引导扩展
-
在 VS Code 安装目录中创建一个名为
bootstrap\extensions的文件夹。 -
下载您想要预安装的扩展的 VSIX 文件,并将它们放在
bootstrap\extensions文件夹中。 -
当用户首次启动 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 或 VS Code for the Web 连接。
私有市场目前仅供 GitHub Enterprise 客户使用。VS Code 用户必须使用 GitHub Enterprise 或 Copilot Enterprise/Business 帐户登录才能访问私有市场。
请从 部署和功能指南 入门,其中包含部署说明、脚本和开发环境配置。如有任何问题或需要帮助,请联系 私有市场支持。