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

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

关于自托管运行器组

注:所有组织都有一个默认的自托管运行器组。 只有企业帐户和企业帐户拥有的组织才能创建和管理其他自托管的运行器组。

自托管运行器组用于控制对组织和企业级自托管运行器的访问。 企业管理员可以配置访问策略,用以控制企业中的哪些组织可以访问运行器组。 组织管理员可以配置访问策略,用以控制组织中的哪些组织可以访问运行器组。

当企业管理员授予组织对运行器组的访问权限时,组织管理员可以看到组织的自托管运行器设置中列出的运行器组。 然后,组织管理员可以为企业运行器组分配其他细致的仓库访问策略。

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

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

所有组织都有一个默认的自托管运行器组。 企业帐户中的组织可以创建其他自托管组。 组织管理员可以允许单个仓库访问运行器组。

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

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

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

  2. 在组织名称下,单击 Settings.

    组织设置按钮

  3. In the left sidebar, click Actions.

  4. In the left sidebar, under "Actions", click Runner groups.

  5. 在“Runner groups(运行器组)”部分,单击 New runner group(新运行器组)

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

    您可以配置一个运行器组可供一组特定的仓库或组织中所有仓库访问。 默认情况下,只有私有仓库可以访问运行器组中的运行器,但您可以覆盖此设置。 This setting can't be overridden if configuring an organization's runner group that was shared by an enterprise.

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

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

  7. Click Create group to create the group and apply the policy.

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

企业可以将其自托管的运行器添加到组以进行访问管理。 企业可以创建供企业帐户中特定组织访问的自托管运行器组。 然后,组织管理员可以为企业运行器组分配其他细致的仓库访问策略。

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

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

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

  2. 在企业列表中,单击您想要查看的企业。 企业列表中的企业名称

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

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

  5. Click the Runner groups tab.

  6. 单击 New runner group(新运行器组)

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

    您可以配置运行器组供特定的组织列表或企业中所有组织访问。 默认情况下,只有私有仓库可以访问运行器组中的运行器,但您可以覆盖此设置。 This setting can't be overridden if configuring an organization's runner group that was shared by an enterprise.

    警告

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

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

  8. Click Create group to create the group and apply the policy.

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

您可以更新运行器组的访问策略,或重命名运行器组。

  1. Navigate to where your self-hosted runner groups are located:

    • 在组织或仓库中,导航到主页并单击 Settings(设置)
    • 如果使用企业帐户:通过访问 https://github.com/enterprises/ENTERPRISE-NAME(将 ENTERPRISE-NAME 替换为您的企业帐户名称)导航到您的企业帐户。 在企业边栏中,单击 Policies(政策)
  2. Navigate to the "Runner groups" settings:

    • In an organization or repository: Click Actions in the left sidebar, then click Runner groups below it.
    • If using an enterprise account: Click Actions under " Policies", then click the Runners groups tab.
  3. In the list of groups, click the runner group you'd like to configure.

  4. 修改访问选项或更改运行器组名称。

    警告

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

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

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

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

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

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

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

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

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

  1. 导航到自托管运行器注册的位置:
    • 在组织或仓库中,导航到主页并单击 Settings(设置)
    • 如果使用企业帐户:通过访问 https://github.com/enterprises/ENTERPRISE-NAME(将 ENTERPRISE-NAME 替换为您的企业帐户名称)导航到您的企业帐户。 在企业边栏中,单击 Policies(政策)
  2. 导航到 GitHub Actions 设置:
    • 在组织或仓库中:点击左侧栏中的 Actions,然后点击 Runners(运行器)
    • 如果使用企业帐户:在“ Policies(政策)”下单击 Actions(操作),然后单击 Runners(运行器)选项卡。
  3. 在“Runners(运行器)”列表中,单击您要配置的运行器。
  4. 选择运行器组下拉菜单。
  5. In "Move runner to group", choose a destination group for the runner.

删除自托管运行器组

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

  1. Navigate to where your self-hosted runner groups are located:
    • 在组织或仓库中,导航到主页并单击 Settings(设置)
    • 如果使用企业帐户:通过访问 https://github.com/enterprises/ENTERPRISE-NAME(将 ENTERPRISE-NAME 替换为您的企业帐户名称)导航到您的企业帐户。 在企业边栏中,单击 Policies(政策)
  2. Navigate to the "Runner groups" settings:
    • In an organization or repository: Click Actions in the left sidebar, then click Runner groups below it.
    • If using an enterprise account: Click Actions under " Policies", then click the Runners groups tab.
  3. In the list of groups, to the right of the group you want to delete, click .
  4. 要删除组,请单击 Remove group(删除组)
  5. 查看确认提示,然后单击 Remove this runner group(删除此运行器组)

此文档对您有帮助吗?

隐私政策

帮助我们创建出色的文档!

所有 GitHub 文档都是开源的。看到错误或不清楚的内容了吗?提交拉取请求。

做出贡献

或, 了解如何参与。