Skip to main content
Skip to content

为企业中的智能体构建安全云环境

为受控推出 Copilot in the cloud准备企业策略、存储库保护和运行程序设置。

本教程适用于准备为其团队启用 Copilot in the cloud 的企业所有者和 AI 经理。

启用Copilot in the cloud后,用户可以在云中启动代理会话,并将工作分配给位于GitHub上的Copilot。 在执行此操作之前,最好先配置您的企业环境,这样您就可以确信 Copilot 将在安全、可预测的防护措施内运行。

了解内置保护

Copilot in the cloud 具有强大的内置安全保护基础,旨在防范 AI 代理的常见风险点。 请参阅“GitHub Copilot 云代理的风险和缓解措施”。

计划策略设置

提前规划你的 Copilot in the cloud 策略。 策略允许你在企业级别设置限制的基线,组织所有者可以根据需要进一步限制这些限制。

要提出的一些问题包括:

调整规则集

Copilot 已默认限制诸如推送到默认分支或合并拉取请求等操作。 你可以在分支规则集中基于这些默认保护进行扩展。 Copilot 受规则集的约束,就像人类开发人员一样。

若要为 Copilot 代理调整规则集,请执行以下操作:

  • 请考虑是否需要在运行代理的存储库中添加其他规则,例如需要从**** 或code scanning获取结果。 如果已确定将在哪些组织或存储库启用 Copilot in the cloud,则可以向它们应用自定义属性,以便它们在规则集中易于被定位。
  • 请考虑是否 Copilot 会被 任何现有规则集阻止。 Copilot 可以 对其提交进行签名,但可能无法遵循限制提交元数据的其他规则。
  • 使用 文件保护重要的 配置文件和 MCP 配置文件,并启用“要求来自代码所有者的审核”规则,这样特定团队必须批准对这些文件的编辑。 要查找目标文件路径,请参阅 Copilot自定义备忘单。

存储变量和机密

提供 Copilot 在设置、任务执行和连接到 MCP 服务器期间需要访问的变量和机密。 可以在组织或存储库级别配置 Agents 的机密和变量。 有关详细信息,请参阅“为 Copilot 云代理配置机密和变量”。

Copilot 将能够在运行中的 GitHub Actions会话中访问这些机密和变量。 对于在云沙盒中运行的会话,只有密钥可用。

(可选)配置您的 GitHub Actions 环境

代理会话可以在GitHub云沙盒中运行,或在GitHub Actions上运行。 这两个环境的计算成本都基于同一个每月额度。

  • 云沙盒是一个更快速、轻量级的环境,允许用户在 GitHub 的聊天界面或其他客户端中恢复会话。
  • GitHub Actions 可让你更好地控制环境,例如机密和变量、安装依赖项的设置步骤,以及访问自承载运行程序或专用网络。

有关详细比较,请参阅 gh.asamalin.top 和 GitHub Mobile 上的GitHub Copilot。

如果用户将在 GitHub Actions 上运行代理,请设置运行器和策略,使 Copilot 安全运行。

保留密钥和变量

可以继续将你_不想_Copilot访问的数据和令牌存储为GitHub Actions变量或机密。 Copilot 无法在会话或环境设置步骤中访问这些内容。

配置运行器

决定你将为 Copilot cloud agent 使用哪些运行器。 建议使用 GitHub 托管的运行器,以便每个 Copilot cloud agent 都运行在全新的虚拟机上。 如果使用自托管运行器,建议使用短暂运行器。

组织所有者可以将 Copilot cloud agent 的运行器限制为特定运行器标签,并在所有仓库中自动使用。 请参阅“在组织中为 GitHub Copilot 云智能体配置运行器”。

配置工作流策略

确定是否应在GitHub Actions创建的拉取请求中阻止****。 请参阅“配置云中GitHub Copilot的设置”。

默认情况下,工作流被阻止运行,直到具有写入访问权限的人批准它们。 存储库管理员将能够禁用此功能,因此,请事先与他们沟通,了解首选设置。

查看默认权限

请检查您企业中的 GITHUB_TOKEN 的默认权限。 请参阅“在企业中强制实施GitHub Actions策略”。

该策略不会影响 Copilot 在会话中接收的 token,但 GITHUB_TOKEN_会_在 copilot-setup-steps.yml 工作流文件定义的环境设置步骤中使用。

请记住,开发人员将能够在这些工作流文件中设置自己的 permissions 权限,你应该鼓励他们在所有工作流中使用所需的最低权限。