Skip to main content

此版本的 GitHub Enterprise 已停止服务 2022-06-03. 即使针对重大安全问题,也不会发布补丁。 要获得更好的性能、改进的安全性和新功能,请升级到 GitHub Enterprise 的最新版本。 如需升级方面的帮助,请联系 GitHub Enterprise 支持

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

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

注: GitHub 托管的运行器目前在 GitHub Enterprise Server 上不受支持。 您可以在 GitHub 公共路线图 上查看有关未来支持计划的更多信息。

关于自托管运行器组

自托管运行器组用于控制对组织和企业级自托管运行器的访问。 企业所有者可以配置访问策略来控制企业中哪些组织 可以访问运行器组。 组织所有者可以配置访问策略,以控制组织中哪些存储库 可以访问运行器组。

当企业所有者授予组织对运行器组的访问权限时,组织所有者可以看到组织的自托管运行器设置中列出的运行器组。 然后,组织所有者可以为企业运行器组分配更细致的存储库 访问策略。

新运行器在创建时,将自动分配给默认组。 运行器每次只能在一个组中。 您可以将运行器从默认组移到另一组。 更多信息请参阅“将自托管运行器移动到组”。

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

所有组织都有一个默认的自托管运行器组。 企业帐户中的组织可以创建其他自托管组。 组织管理员可以允许单个仓库访问运行器组。 有关如何使用 REST API 创建自托管运行器组的信息,请参阅“自托管运行器组”。

自托管运行器在创建时会自动分配给默认组,并且每次只能成为一个组的成员。 您可以将运行器从默认组移到您创建的任何组。

创建组时,必须选择一个策略,用于定义哪些存储库 有权访问运行器组。

  1. 在 您的 GitHub Enterprise Server 实例 上,导航到组织的主页面。

  2. 在组织名称下,单击 设置.

    组织设置按钮

  3. In the left sidebar, click Actions.

  4. 在 “Self-hosted runners(自托管运行器)” 下,单击 Add new(新增),然后单击 New group(新建组)

    添� 运行器组

  5. 输入运行程序组的名称,并分配仓库访问策略。

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

    警告

    建议仅将自托管运行器用于私有仓库。 这是� 为,通过创建在工作流程中执行代� �的拉取请求,仓库的复刻可能会在您的自托管运行器上运行危险代� �。

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

    添� 运行器组选项

  6. 单击 Save group(保存组)创建组并应用策略。

为企业创建自托管运行器组

企业可以将其自托管的运行器添� 到组以进行访问管理。 企业可以创建自托管运行器组,这些组可供企业帐户中的特定组织 访问。 然后,组织所有者可以为企业运行器组分配更细致的存储库 访问策略。 有关如何使用 REST API 创建自托管运行器组的信息,请参阅 GitHub Actions REST API 中的企业端点。

自托管运行器在创建时会自动分配给默认组,并且每次只能成为一个组的成员。 您可以在注册过程中将运行器分配给特定组,也可以稍后将运行器从默认组移到自定义组。

创建组时,必须选择用于定义哪些组织有权访问运行器组的策略。

  1. 在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)GitHub Enterprise Server 上个人资料照片下拉菜单中的"Enterprise settings(企业设置)"

  2. 在企业账户侧边� �中,单击 Policies(政策)企业帐户侧边� �中的 Policies(政策)选项卡

  3. 在“ Policies(政策)”下,单击 Actions(操作)

  4. 单击 自托管运行器 选项卡。

  5. Use the Add new drop-down, and select New group.

  6. Under "Group name", type a name for your runner group.

  7. 要为组织访问选择策略,请选择 Organization access(组织访问)下拉列表,然后单击一个策略。 您可以将运行器组配置为可供特定组织列表或企业中的所有组织访问。 默认情况下,只有私有存储库可以访问运行器组中的运行器,但您可以覆盖此操作。

    警告

    建议仅将自托管运行器用于私有仓库。 这是� 为,通过创建在工作流程中执行代� �的拉取请求,仓库的复刻可能会在您的自托管运行器上运行危险代� �。

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

    添� 运行器组选项

  8. 单击 Save group(保存组)创建组并应用策略。

更改自托管运行器组的访问策略

对于企业中的运行器组,您可以更改企业中可以访问运行器组的组织。 对于组织中的运行器组,您可以更改组织中可以访问运行器组的存储库。

更改可以访问运行器组的组织或存储库

  1. In the "Self-hosted runners" section of the settings page, next to the runner group you'd like to configure, click , then click Edit name and [organization|repository] access. 管理仓库权限

  2. Modify your policy options.

    警告

    建议仅将自托管运行器用于私有仓库。 这是� 为,通过创建在工作流程中执行代� �的拉取请求,仓库的复刻可能会在您的自托管运行器上运行危险代� �。

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

更改运行器组的名称

  1. In the "Self-hosted runners" section of the settings page, next to the runner group you'd like to configure, click , then click Edit name and [organization|repository] access. 管理仓库权限
  2. 更改运行器组名称。

自动向组添� 自托管运行器

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

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

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

找不到名为 "rg-runnergroup" 的任何自托管运行器组。

将自托管的运行器移动到组

如果您在注册过程中没有指定运行器组,新的自托管运行器将自动分配到默认组,然后可以移到另一个组。

  1. 导航到自托管运行器注册的位置:

    • In an organization: navigate to the main page and click Settings.

    • 如果使用企业级运行器

      1. 在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)GitHub Enterprise Server 上个人资料照片下拉菜单中的"Enterprise settings(企业设置)"
  2. 导航到 GitHub Actions 设置:

    • In an organization:

      1. In the left sidebar, click Actions.
    • 如果使用企业级运行器

      1. 在企业账户侧边� �中,单击 Policies(政策)企业帐户侧边� �中的 Policies(政策)选项卡
      2. 在“ Policies(政策)”下,单击 Actions(操作)
      3. 单击 自托管运行器 选项卡。
  3. 在设置页面的“Self-hosted runners(自托管运行器)” 部分,找到要移动的运行器的当前组,并展开组成员列表。 查看运行器组成员

  4. 选中自托管运行器旁边的复选框,然后单击 Move to group(移动到组)以查看可用的目的地。 运行器组成员移动

  5. 要移动运行器,请单击目� �组。 运行器组成员移动

� 除自托管运行器组

自托管运行器在其组被� 除时将自动返回到默认组。

  1. 在设置页面的“Self-hosted runners(自托管运行器)”部分,找到要� 除的组,然后单击 按钮。 查看运行器组设置

  2. 要� 除组,请单击 Remove group(� 除组)查看运行器组设置

  3. 查看确认提示,然后单击 Remove this runner group(� 除此运行器组)