Skip to main content

为 GitHub Copilot 许可证设置自助服务过程

了解用户如何请求许可证并立即获取访问权限。

在组织或企业中启用 GitHub Copilot 后,可以设置自助服务工作流,以允许用户请求许可证。 这允许你向想要许可证的人员分配许可证,这意味着用户可以快速入门 Copilot 。

GitHub 发现许多成功的推出提供了一个完全自助服务模型,开发人员可以在未经批准的情况下申请许可证。

本文概述了公司可以采用的两种方法:

  • GitHub面向 Copilot业务 的请求访问功能,无需设置,但需要管理员明确批准
  • 你自己的与 GitHub's API 的集成,让你能够创建自己的流程并实现即时访问

方法 1:使用 GitHub''请求访问'功能

如果你使用的是 Copilot业务 计划,组织成员可以在其设置页面上请求访问 Copilot。 然后,组织所有者必须审批每个请求。

应与用户沟通的流程如下****。

  1. 组织所有者或企业所有者应确保在你想要管理访问权限的组织中已启用 Copilot业务。
  2. 组织成员转到其个人设置页面https://github.com/settings/copilot,然后单击**请求管理员访问权限**。
  3. 组织所有者在组织中的“成员请求”页面上查看并审批请求。 请参阅 在组织中管理 GitHub Copilot Business 的申请

应设置定期评审请求的过程,以便感兴趣的用户可以快速访问 Copilot 。

用户还可以向未启用 Copilot业务 的组织申请访问权限。 在这种情况下,系统将提示组织所有者请企业所有者为该组织启用 Copilot。

方法 2:与 API 集成

如果想采用更高效的方式,您可以通过集成 GitHub 的 API 来建立自助服务流程。 此方法的优点是,它允许你将流程构建到现有工具中,并让你可以选择允许用户在没有手动审批流程的情况下立即接收access。

根据企业管理 Copilot 许可证的方式,可以使用以下任一终结点:

例如,工作流中的 GitHub Actions API 调用可能如下所示,其中组织和所选用户名由工作流触发器的上下文提供:

const { Octokit } = require("@octokit/action");
const octokit = new Octokit();
const response = await octokit.request('POST /orgs/{org}/copilot/billing/selected_users', {
  org: context.repo.owner,
  selected_usernames: [context.payload.sender.login],
  headers: {
    'X-GitHub-Api-Version': '2022-11-28'
  }
})

示例实现

  • 你可以完全在 GitHub 内创建整个流程,让用户通过创建 Issue 来申请访问权限,然后使用 GitHub Actions 工作流来调用 API。 有关此方法的演示,请参阅 microsoft/GitHubCopilotLicenseAssignment 存储库。 请注意,这是一个不在GitHub 支持涵盖范围内的外部示例
  • 可以向公司内部网站上的用户配置文件添加“请求访问”按钮,该按钮会将用户的 GitHub 用户名传递给 API。 可以立即授予访问权限,或者首先验证用户,例如检查其是否属于特定团队。

其他阅读材料