通过企业托管设置,企业所有者可以集中定义配置设置,并将其分发给 Copilot 命令行界面(CLI) 和 VS Code,供贵企业 Copilot 套餐中的用户使用,确保每位成员都在相同的约束范围内工作。 后续将支持更多客户端。
这些设置适用于企业范围,没有组织级别的替代。 对于每个受支持的键,该值 managed-settings.json 优先于用户在其客户端中设置的任何基于文件的配置。
即使设备没有网络连接,托管设置也会在客户端启动时在本地加载。 这意味着在登录前或任何服务器往返前仍应用禁用的绕过模式和受限插件配置等控件,并在用户切换帐户时保持活动状态。
选择部署方法
可通过多种方式部署企业托管设置。 使用以下准则为你选择合适的方法。 对于任何方法,在广泛部署之前先试运行小型设备组。
- 服务器托管:大多数企业默认,最适合查看工作流和审核历史记录
- MDM 管理:最适合 IT 团队需要通过 macOS 和 Windows 上现有的 MDM 工具针对设备组进行定向时
- 基于文件:在所有平台上都可用,当服务器托管部署和 MDM 托管部署不可用时非常有用,包括容器和开发人员环境 Codespaces
部署由服务器管理的设置
- 创建和配置
.github-private存储库。 请参阅“创建 .github-private 存储库”。 - 在存储库中,创建或更新
copilot/managed-settings.json。 - 以 JSON 格式添加企业策略密钥和值。
- 提交更改并将其推送到默认分支。
- 确认企业用户正在运行受支持的客户端。 更新的设置会在大约一小时内自动应用,或者在客户端重启或用户再次登录后立即应用。
部署由 MDM 管理的设置
-
使用与服务器管理设置相同的 JSON 架构创建或更新您的
managed-settings.json有效载荷。 -
使用企业 MDM 平台和标准部署流程部署配置载荷。
-
将策略分配给目标设备组。
客户端无需重启,并且会每小时检查一次是否有更新的策略。 在 VS Code 中,管理员可以通过运行
Developer: Sync Account Policy命令来强制执行一次检查,以进行测试。 -
确认设置生效。 请参阅 “验证配置是否已应用”。
部署基于文件的设置
- 使用要强制执行的策略密钥和值创建或更新
managed-settings.json文件。 - 使用标准设备管理过程将文件分发到托管计算机。 不接收文件的计算机不受此策略的限制,因此基于文件的部署仅提供你主动分发到的计算机的覆盖范围。
- 根据企业安全要求应用文件权限。
- 要求用户重启受支持的客户端,以便在启动时加载更新的策略。
- 确认设置生效。 请参阅 “验证配置是否已应用”。
合并架构参考
该文件 managed-settings.json 支持以下顶级属性。 可以根据要强制执行的设置包含这些属性的任意组合。
{
"extraKnownMarketplaces": {
"agent-skills": {
"source": {
"source": "github",
"repo": "OWNER/REPO"
}
}
},
"strictKnownMarketplaces": [
{
"source": "github",
"repo": "OWNER/REPO"
}
],
"enabledPlugins": {
"PLUGIN-NAME@MARKETPLACE-NAME": true
},
"permissions": {
"disableBypassPermissionsMode": "disable"
},
"model": "auto"
}
{
"extraKnownMarketplaces": {
"agent-skills": {
"source": {
"source": "github",
"repo": "OWNER/REPO"
}
}
},
"strictKnownMarketplaces": [
{
"source": "github",
"repo": "OWNER/REPO"
}
],
"enabledPlugins": {
"PLUGIN-NAME@MARKETPLACE-NAME": true
},
"permissions": {
"disableBypassPermissionsMode": "disable"
},
"model": "auto"
}
extraKnownMarketplaces:定义可供用户使用的其他插件市场。 每个条目都是一个命名的市场对象,其中包含一个source属性,该属性指定"github"提供程序(OWNER/REPO)和存储库的格式。strictKnownMarketplaces:将插件安装仅限于企业明确指定的应用市场。 每个条目都是包含属性source的市场对象。source将提供程序指定为以下两者之一:"github"(带有采用repo格式的OWNER/REPO),或"git"(带有指向 git 存储库的url)。enabledPlugins:定义为所有企业用户自动安装的插件。 每个条目使用格式PLUGIN-NAME@MARKETPLACE-NAME作为键,其布尔值设置为true启用插件。permissions:控制用户是否可以绕过命令审批。disableBypassPermissionsMode设置为"disable"阻止用户启用绕过模式。 有关详细信息,请参阅本文后文中的为你的企业禁用旁路模式。model:控制默认模型治理设置。 设置为"auto"这样,新对话将默认以Copilot自动模型选择开始。 用户仍可以按对话切换到其他模型。
配置企业插件标准
可以应用设置来控制用户可用的插件市场和默认安装的插件。 请参阅“关于企业管理的插件标准”。
-
使用首选部署方法创建或更新企业托管设置文件。 有关部署方法的比较,请参阅 配置企业管理设置。
对于在
.github-private存储库中由服务器管理的部署,请在copilot/managed-settings.json处创建该文件。 还支持旧路径 (.github/copilot/settings.json)。 -
将所需的
extraKnownMarketplaces、strictKnownMarketplaces和enabledPlugins属性添加到该文件中。 请参阅 合并架构参考中的示例和属性说明。 将这些属性合并到现有文件中,而不是覆盖它,因此不要删除为其他策略(例如permissions)配置的设置。JSON { "extraKnownMarketplaces": { "agent-skills": { "source": { "source": "github", "repo": "OWNER/REPO" } } }, "strictKnownMarketplaces": [ { "source": "github", "repo": "OWNER/REPO" } ], "enabledPlugins": { "PLUGIN-NAME@MARKETPLACE-NAME": true } }{ "extraKnownMarketplaces": { "agent-skills": { "source": { "source": "github", "repo": "OWNER/REPO" } } }, "strictKnownMarketplaces": [ { "source": "github", "repo": "OWNER/REPO" } ], "enabledPlugins": { "PLUGIN-NAME@MARKETPLACE-NAME": true } } -
提交更改并将其推送到存储库的默认分支
.github-private。
将 Copilot 自动模型选择设置为默认值
您可以在 Copilot 命令行界面(CLI) 和 VS Code 中将自动模型选择设置为新对话的默认模型。 若要了解详细信息,请参阅 关于 Copilot自动模型选择。 通过将它设置为企业默认设置,可以确保新对话从选择“自动模型”开始。
将“自动模型”设为默认值的作用
当你从 model 切换到 "auto" 时,两个客户端中的新对话都会默认选择 Auto 模型:
- 在 Copilot 命令行界面(CLI) 中,新会话默认使用自动模型,除非用户指定其他模型。
- 在 VS Code,当用户启动新对话时,模型选取器默认为“自动模型”。
用户仍可以按对话切换到其他模型。
配置该设置
-
使用首选部署方法创建或更新企业托管设置文件。 有关部署方法的比较,请参阅 配置企业管理设置。
对于在
.github-private存储库中由服务器管理的部署,请在copilot/managed-settings.json处创建该文件。 还支持旧路径 (.github/copilot/settings.json)。 -
将
model属性添加到文件,设置为"auto".JSON { "model": "auto" }{ "model": "auto" }
为企业禁用绕过模式
您可以在 Copilot 命令行界面(CLI) 和 VS Code 中阻止用户启用旁路模式(也称为“YOLO 模式”)。 绕过模式允许代理在不请求批准的情况下运行命令、访问文件和提取 URL。 通过为企业禁用此功能,可以确保每项此类操作都由人工审核。
禁用绕过模式会阻止什么
将 disableBypassPermissionsMode 设置为 "disable" 时,用户在任一客户端中都无法启用绕过模式:
- 在 Copilot 命令行界面(CLI) 中,
--yolo、--allow-all、--allow-all-tools、--allow-all-paths和--allow-all-urls命令行选项以及/yolo和/allow-all斜杠命令被禁用。 - 在 VS Code,全局自动批准设置(
chat.tools.global.autoApprove也称为“YOLO 模式”)处于关闭状态,无法重新启用。
配置该设置
-
使用首选部署方法创建或更新企业托管设置文件。 有关部署方法的比较,请参阅 配置企业管理设置。
对于在
.github-private存储库中由服务器管理的部署,请在copilot/managed-settings.json处创建该文件。 还支持旧路径 (.github/copilot/settings.json)。 -
将
permissions属性添加到文件,并disableBypassPermissionsMode设置为"disable". 如果文件已有一个permissions对象(例如,来自其他权限设置),请将此键合并到其中,而不是替换该对象。JSON { "permissions": { "disableBypassPermissionsMode": "disable" } }{ "permissions": { "disableBypassPermissionsMode": "disable" } }
验证配置是否已应用
提交配置后,受支持客户端上的用户将在大约一小时内看到指定的设置,因为客户端会定期检查服务器是否有更新的配置。 重启客户端或再次登录会立即应用最新设置。
如果用户看不到这些设置,请确保他们已通过您的企业或其下属某个组织获得对 Copilot 的访问权限。 如果用户从多个计费实体收到许可证,请确保他们在 个人 Copilot 设置的“按使用情况计费”下拉列表中选择了你的企业。