跳至主要内容

使用组管理对自托管运行器的访问权限

您可以使用策略来限制对已添加到组织的自托管运行器的访问权限。

谁可以使用此功能?

企业帐户、企业帐户拥有的组织以及使用 GitHub 团队的组织可以创建和管理额外的运行器组。

关于运行器组

为了控制对组织级别运行器的访问,使用 GitHub 团队计划的组织可以使用运行器组。运行器组用于收集运行器集并围绕它们创建安全边界。

当您授予对运行器组的访问权限时,您可以在组织的运行器设置中看到该运行器组。您也可以选择为运行器组分配额外的细粒度仓库访问策略。

创建新的运行器时,除非另有说明,否则它们会自动分配给默认组。运行器一次只能在一个组中。您可以将运行器从一个运行器组移动到另一个运行器组。有关更多信息,请参阅“将运行器移至组”。

有关如何将作业路由到特定组中的运行器的信息,请参阅“选择作业的运行器”。

为组织创建自托管运行器组

警告:我们建议您仅将自托管运行器与私有仓库一起使用。这是因为您的公共仓库的分支可以通过创建执行工作流中代码的拉取请求,在您的自托管运行器机器上运行危险的代码。

有关更多信息,请参阅“关于自托管运行器”。

注意:创建运行器组时,必须选择一个策略来定义哪些仓库可以访问运行器组。要更改哪些仓库和工作流可以访问运行器组,组织所有者可以为组织设置策略。有关更多信息,请参阅“在您的企业中实施 GitHub Actions 策略”。

所有组织都只有一个默认的运行器组。使用 GitHub Team 计划的组织所有者可以创建额外的组织级运行器组。

如果在注册过程中未指定任何组,则运行器将自动添加到默认组。您可以在以后将运行器从默认组移动到自定义组。有关更多信息,请参阅“将运行器移动到组”。

有关如何使用 REST API 创建运行器组的信息,请参阅“GitHub Actions 的 REST API 端点”。

  1. 在 GitHub.com 上,导航到组织的主页。

  2. 在您的组织名称下,单击 设置。如果您看不到“设置”选项卡,请选择下拉菜单,然后单击设置

    Screenshot of the tabs in an organization's profile. The "Settings" tab is outlined in dark orange.

  3. 在左侧边栏中,单击 操作,然后单击运行器组

  4. 在“运行器组”部分,单击新建运行器组

  5. 输入运行器组的名称。

  6. 为仓库访问分配策略。

    您可以将运行器组配置为可供特定仓库列表访问,或可供组织中的所有仓库访问。默认情况下,只有私有仓库可以访问运行器组中的运行器,但您可以覆盖此设置。如果配置由企业共享的组织的运行器组,则无法覆盖此设置。

  7. 点击创建组以创建组并应用策略。

更改哪些仓库可以访问运行器组

警告:我们建议您仅将自托管运行器与私有仓库一起使用。这是因为您的公共仓库的分支可以通过创建执行工作流中代码的拉取请求,在您的自托管运行器机器上运行危险的代码。

有关更多信息,请参阅“关于自托管运行器”。

对于组织中的运行器组,您可以更改组织中的哪些仓库可以访问运行器组。

  1. 导航到组织的主页,其中包含您的运行器组。

  2. 点击 设置.

  3. 在左侧边栏中,单击 操作,然后单击运行器组

  4. 在组列表中,点击您要配置的运行器组。

  5. 在“仓库访问”下,使用下拉菜单点击选定仓库

    1. 在下拉菜单的右侧,点击 .
    2. 在弹出窗口中,使用复选框选择可以访问此运行器组的仓库。
  6. 点击保存组

更改运行器组的名称

  1. 导航到组织的主页,其中包含您的运行器组。
  2. 点击 设置.
  3. 在左侧边栏中,单击 操作,然后单击运行器组
  4. 在组列表中,点击您要配置的运行器组。
  5. 在“组名称”下的文本字段中输入新的运行器组名称。
  6. 点击保存

自动将自托管运行器添加到组

您可以使用配置脚本将新运行器自动添加到组。例如,此命令注册一个新的运行器并使用--runnergroup参数将其添加到名为rg-runnergroup的组中。

./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup

如果运行器组不存在,则命令将失败。

Could not find any self-hosted runner group named "rg-runnergroup".

将自托管运行器移至组

如果您在注册过程中未指定运行器组,则新运行器将自动分配给默认组,然后可以将其移至另一个组。

  1. 在 GitHub.com 上,导航到组织的主页。

  2. 在您的组织名称下,单击 设置。如果您看不到“设置”选项卡,请选择下拉菜单,然后单击设置

    Screenshot of the tabs in an organization's profile. The "Settings" tab is outlined in dark orange.

  3. 在左侧边栏中,单击 操作,然后点击运行器

  4. 在“运行器”列表中,点击您要配置的运行器。

  5. 选择运行器组下拉菜单。

  6. 在“将运行器移至组”中,选择运行器的目标组。

删除自托管运行器组

要删除运行器组,您必须先将所有运行器从该组中移出或删除。

  1. 导航到组织的主页,其中包含您的运行器组。
  2. 点击 设置.
  3. 在左侧边栏中,单击 操作,然后单击运行器组
  4. 在组列表中,在要删除的组的右侧,点击 .
  5. 要删除该组,请点击删除组
  6. 查看确认提示,然后点击删除此运行器组