Skip to main content

配置企业管理设置

配置企业托管设置,以通过服务器管理、MDM 管理或基于文件的部署方式,在整个企业范围内集中控制 Copilot 客户端的行为。

谁可以使用此功能?

Enterprise owners

借助企业托管设置,企业所有者可以集中定义配置设置并将其分发给企业 Copilot 计划中支持的客户端,确保每个成员在定义的防护栏内工作,同时让团队定制允许的设置。

支持以下客户端,但并非每个客户端都支持每个属性:

  • Copilot 命令行界面(CLI)

  • VS Code

  • GitHub Copilot 应用

  • Copilot云代理

这些设置适用于企业范围,企业可以自定义企业团队的特定密钥。 对于每个受支持的键,该值 managed-settings.json 优先于用户在其客户端中设置的任何基于文件的配置。

即使设备没有网络连接,托管设置也会在客户端启动时在本地加载。 这意味着控制,例如取消 allow-all 权限选项和限制插件配置在登录前或任何服务器往返之前仍适用,并在用户切换帐户时保持活动状态。

定义设置

有关可用属性和语法的详细信息,请参阅 企业托管设置

如果需要一个或多个企业团队使用与默认值copilot/team-mappings.json不同的设置,请使用copilot/团队/目录copilot/managed-settings.json。 有关详细信息,请参阅“配置企业管理设置”。

选择部署方法

可通过多种方式部署企业托管设置。 使用以下准则为你选择合适的方法。 对于任何方法,在广泛部署之前先试运行小型设备组。

  • 服务器托管:大多数企业默认,最适合查看工作流和审核历史记录。 适用于所有客户端,包括 Copilot云代理。
  • MDM 托管:最好是 IT 团队需要通过 macOS 上的现有 MDM 工具进行设备组目标,并Windows。 仅限本地客户端。
  • 基于文件:在所有平台上都可用,当服务器托管部署和 MDM 托管部署不可用时非常有用,包括容器和 Codespaces开发人员环境。 仅限本地客户端。

如果您为 Copilot业务 使用专用企业,还需要考虑其他事项。 请参阅 面向专用 Copilot业务 企业的指南

部署由服务器管理的设置

  1. 创建和配置 .github-private 存储库。 请参阅“创建 .github-private 存储库”。
  2. 在存储库中,创建或更新 copilot/managed-settings.json
  3. 以 JSON 格式添加企业策略密钥和值。
  4. 提交更改并将其推送到默认分支。
  5. 确认企业用户正在运行受支持的客户端。 更新的设置会在大约一小时内自动应用,或者在客户端重启或用户再次登录后立即应用。

覆盖特定团队的设置

对于服务器管理的部署,当一个或多个企业团队应使用不同于默认值copilot/team-mappings.json的设置时,请使用copilot/团队/copilot/managed-settings.json目录。 enabledPluginsextraKnownMarketplaces 累加工作。 企业 managed-settings.json 设置基线,企业团队文件可以在其中添加更多插件和市场。

  1. 在企业 copilot/managed-settings.json 文件中,标记想要使用 { "overridable": <VALUE> } 语法进行替代的每个密钥。 json映射到团队的文件只能为标记为可重写的密钥发送不同的值。 overridable当团队文件不为给定密钥声明其他值时,你提供managed-settings.json的值是默认值。 例如,若要同时延迟和model``disableBypassPermissionsMode

    {
      "model": { "overridable": "auto" },
      "permissions": {
        "disableBypassPermissionsMode": { "overridable": "disable" }
      }
    }
    
  2. 在企业的存储库copilot/team-mappings.json中创建.github-private。 将每个团队设置文件映射到一个或多个企业团队。 密钥是设置文件名,值是团队的数组,因此你可以跨多个团队应用一个文件。

    {
      "devs.json": ["developers-all", "finops-dev"],
      "ai-users.json": ["ai-baseline-trained"],
      "frontier.json": ["ai-pioneers"]
    }
    
  3. 在 .. 下 copilot/团队/创建团队设置文件。 仅包含标记为可重写的密钥。 其他每个密钥都受企业默认值的约束。

    {
      "model": "unmanaged",
      "permissions": {
        "disableBypassPermissionsMode": "unmanaged"
      }
    }
    
  4. 提交更改并将其推送到默认分支。

GitHub 评估企业团队成员身份并为每个人应用匹配设置。 如果用户属于多个团队,则他们的团队文件会为每个密钥使用限制性最低的值组合在一起,然后在企业设置下应用,其中平台决策始终获胜。

部署由 MDM 管理的设置

  1. 使用与服务器管理设置相同的 JSON 架构创建或更新您的 managed-settings.json 有效载荷。

  2. 使用企业 MDM 平台和标准部署流程部署配置载荷。

  3. 将策略分配给目标设备组。

    客户端无需重启,并且会每小时检查一次是否有更新的策略。 在 VS Code 中,管理员可以通过运行 Developer: Sync Account Policy 命令来强制执行一次检查,以进行测试。

  4. 确认设置生效。 请参阅 “验证配置是否已应用”。

部署基于文件的设置

  1. 使用要强制执行的策略密钥和值创建或更新 managed-settings.json 文件。
  2. 使用标准设备管理过程将文件分发到托管计算机。 不接收文件的计算机不受此策略的限制,因此基于文件的部署仅提供你主动分发到的计算机的覆盖范围。
  3. 根据企业安全要求应用文件权限。
  4. 要求用户重启受支持的客户端,以便在启动时加载更新的策略。
  5. 确认设置生效。 请参阅 “验证配置是否已应用”。

验证配置是否已应用

提交配置后,受支持客户端上的用户将在大约一小时内看到指定的设置,因为客户端会定期检查服务器是否有更新的配置。 对于服务器管理的部署,这包括copilot/managed-settings.json``copilot/team-mappings.json和文件中copilot/团队/的文件。

重启客户端或再次登录会立即应用最新设置。

如果用户看不到这些设置,请确保他们已通过您的企业或其下属某个组织获得对 Copilot 的访问权限。 如果用户从多个计费实体收到许可证,请确保他们在 个人 Copilot 设置的“按使用情况计费”下拉列表中选择了你的企业。

专属 Copilot业务 企业指南

如果你拥有用于 Copilot业务 的专属企业(有时称为 Copilot 独立版),你仍然可以使用企业管理设置。 你选择的部署方法决定了你首先需要设置什么。

使用由服务器管理的设置

由服务器管理的设置需要一个组织和一个 .github-private 存储库。 若要创建这些内容,贵企业中的一名用户需要拥有 GitHub Enterprise 许可证。 使用该许可证,用户可以:

  1. 创建组织和 .github-private 存储库。 请参阅“创建 .github-private 存储库”。
  2. copilot/managed-settings.json 文件中向仓库添加设置。
  3. 将该组织设置为企业 AI 标准的治理源。 请参阅“创建 .github-private 存储库”。

从那时起,企业 Copilot 计划中的任何用户都使用 Copilot 命令行界面(CLI) 或 VS Code 受这些设置管理,无论他们是否有权访问 .github-private 存储库。

此方法的主要限制是 GitHub Enterprise 创建组织和存储库的许可证要求。

使用由 MDM 管理的设置或基于文件的设置

如果不想添加 GitHub Enterprise 许可证或创建组织,可以通过 MDM(例如 Intune 或 Jamf)或基于文件的部署相同的设置。 这些方法使用相同的 JSON 架构,不需要组织或 .github-private 存储库。 请参阅 部署 MDM 管理的设置部署基于文件的设置。 有关VS Code的具体指导,请参阅文档中的VS Code。

插件访问注意事项

用户无需访问 .github-private 存储库,客户端也能拉取受管设置。 但是,如果受管理设置使用 enabledPlugins 定义了某个插件,客户端会自动尝试为每位用户安装该插件。 用户需要访问托管插件文件的位置。 如果插件托管在专用存储库 GitHub中,则用户需要该存储库的授权,这可能需要许可证。