Skip to main content

Control del acceso a los ejecutores más grandes

Puedes utilizar políticas para limitar el acceso a los ejecutor más grande que se hayan agregado a una organización o empresa.

¿Quién puede utilizar esta característica?

Los Ejecutor más grande solo están disponibles para organizaciones y empresas que usan los planes GitHub Team o GitHub Enterprise Cloud.

Nota: La información e instrucciones de este artículo solo se aplican a ejecutor más grande con sistemas operativos Linux y Windows.

Acerca de grupos de ejecutores

Para controlar el acceso a los ejecutores de los niveles de organización o empresarial, los propietarios de la organización o de la empresa pueden usar grupos de ejecutores. Los grupos de ejecutores se usan para recopilar conjuntos de ejecutores y crear un límite de seguridad en torno a ellos.

Cuando concedes acceso a un grupo de ejecutores, puedes ver este grupo en una lista en la configuración del ejecutor de la organización. Opcionalmente, puedes asignar directivas de acceso adicionales y detalladas para los repositorios y flujos de trabajo al grupo de ejecutores.

Cuando se crean nuevos ejecutores, se asignan automáticamente al grupo predeterminado, salvo que se especifique lo contrario. Los ejecutores solo pueden estar en un grupo a la vez. Puedes mover ejecutores de un grupo de ejecutores a otro. Para obtener más información, consulta "Cambiar un ejecutor a un grupo".

Para obtener información sobre cómo enrutar trabajos a los ejecutores de un grupo específico, consulta "Elegir un ejecutor para un job".

Administrar el acceso a tus ejecutores

Nota: Para que los flujos de trabajo puedan enviar trabajos a ejecutor más grande, primero debes configurar los permisos para el grupo de ejecutores. Consulta las siguientes secciones para obtener más información.

Los grupos de ejecutores se usan para controlar qué repositorios pueden ejecutar trabajos en los ejecutor más grande. Debes administrar el acceso al grupo desde cada nivel de la jerarquía de administración, en función de donde hayas definido el ejecutor más grande:

  • Ejecutores de nivel empresarial: De forma predeterminada, los repositorios de una organización no tienen acceso a grupos de ejecutores de nivel empresarial. Para conceder a los repositorios acceso a grupos de ejecutores de empresa, los propietarios de la organización deben configurar cada grupo de ejecutores de empresa y elegir qué repositorios tienen acceso.
  • Ejecutores de nivel de organización: De forma predeterminada, a todos los repositorios de una organización se les concede acceso a los grupos de ejecutores de nivel de organización. Para restringir qué repositorios tienen acceso, los propietarios de la organización y los usuarios con el permiso "Administrar ejecutores de la organización y grupos de ejecutores" deben configurar grupos de ejecutores de la organización y elegir qué repositorios tienen acceso.

Por ejemplo, el diagrama siguiente tiene un grupo de ejecutor denominado grp-ubuntu-20.04-16core en el nivel empresarial. Para que el repositorio denominado octo-repo pueda usar los ejecutores del grupo, primero debes configurar el grupo a nivel empresarial para permitir el acceso a la organización octo-org. Luego, debes configurar el grupo a nivel de organización para permitir el acceso a octo-repo.

Diagrama en el que se muestra un grupo de ejecutores definido en el nivel empresarial con una configuración de organización que permite el acceso a dos repositorios.

Creación de un grupo de ejecutores para una organización

Advertencia: Si usas un intervalo IP fijo, te recomendamos que solo uses ejecutor más grande con repositorios privados. Las bifurcaciones de tu repositorio pueden ejecutar código potencialmente peligroso en tu ejecutor más grande creando una solicitud de extracción que ejecute el código en un flujo de trabajo.

Nota: Cuando creas un grupo de ejecutores, debes elegir una directiva que defina qué repositorios y flujos de trabajo tienen acceso al grupo de ejecutores. Para cambiar qué repositorios y flujos de trabajo pueden acceder al grupo de ejecutores, los propietarios de la organización y los usuarios con el permiso "Administrar ejecutores de la organización y grupos de ejecutores" pueden establecer una directiva para la organización. Para obtener más información, vea «Requerir políticas para las GitHub Actions en tu empresa».

Todas las organizaciones tienen un solo grupo predeterminado de ejecutores. Los propietarios de la organización y los usuarios con el permiso "Administrar ejecutores de la organización y grupos de ejecutores" pueden crear grupos de ejecutores de nivel de organización adicionales. Para obtener más información sobre los roles de organización personalizados, vea "Acerca de los roles personalizados de organización".

Si no se especifica ningún grupo durante el proceso de registro, los ejecutores se agregan automáticamente al grupo predeterminado. Más tarde puedes mover el ejecutor del grupo predeterminado a cualquier grupo que crees. Para obtener más información, consulta "Cambiar un ejecutor a un grupo".

Para obtener información sobre cómo crear un grupo de ejecutores con la API de REST, consulta "Terminales de REST para la API de Acciones de GitHub".

  1. En GitHub.com, ve a la página principal de la organización.

  2. En el nombre de la organización, haz clic en Configuración. Si no puedes ver la pestaña "Configuración", selecciona el menú desplegable y, a continuación, haz clic en Configuración.

    Captura de pantalla de las pestañas en el perfil de una organización. La pestaña "Configuración" se destaca en naranja oscuro.

  3. En la barra lateral izquierda, haz clic en Acciones y, luego, en Grupos de ejecutores.

  4. En la sección "Runner groups", haga clic en New runner group.

  5. Ingresa un nombre para tu grupo ejecutor.

  6. Asigne una directiva para el acceso al repositorio.

    Puede configurar un grupo de ejecutores para que sea accesible para una lista específica de repositorios o para todos los repositorios de la organización. De forma predeterminada, solo los repositorios privados pueden acceder a los ejecutores de un grupo de ejecutores, pero puede invalidarlo. Esta configuración no puede anularse si se configura un grupo de ejecutores de la organización que haya compartido una empresa.

  7. Asigne una directiva para el acceso al flujo de trabajo.

    Puede configurar un grupo de ejecutores a fin de que sea accesible para una lista específica de flujos de trabajo o para todos los flujos de trabajo. Este valor no se puede invalidar si configura un grupo de ejecutores de una organización que haya compartido una empresa. Si especifica qué flujo de trabajo puede acceder al grupo de ejecutores, debe usar la ruta completa del flujo de trabajo, incluido el nombre y el propietario del repositorio, y debe anclar el flujo de trabajo a una rama, etiqueta o SHA completo. Por ejemplo: octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main.

    Solo los trabajos que se definan directamente dentro de los flujos de trabajo seleccionados tendrán acceso al grupo de ejecutores. Los grupos ejecutores que pertenecen a las organizaciones no pueden acceder a los flujos de trabajo de una organización diferente en la empresa. En vez de esto, debes crear un grupo de ejecutores que pertenezca a la empresa. 1. Haz clic en Crear grupo para crear el grupo y aplicar la política.

Crear un grupo de ejecutores para una organización

Advertencia: Si usas un intervalo IP fijo, te recomendamos que solo uses ejecutor más grande con repositorios privados. Las bifurcaciones de tu repositorio pueden ejecutar código potencialmente peligroso en tu ejecutor más grande creando una solicitud de extracción que ejecute el código en un flujo de trabajo.

Las empresas pueden agregar sus ejecutores a grupos para su administración de accesos. Las empresas pueden crear grupos de ejecutores que son accesibles para organizaciones específicas en la cuenta empresarial o para flujos de trabajo específicos. Los propietarios de la organización pueden entonces asignar directivas de acceso adicionales y detalladas para los repositorios o flujos de trabajo a los grupos de ejecutores de la empresa. Para obtener más información sobre cómo crear un grupo de ejecutores con la API de REST, consulte los puntos de conexión de la empresa en la API de REST de GitHub Actions.

Si no se especifica ningún grupo durante el proceso de registro, los ejecutores se agregan automáticamente a un grupo predeterminado. Más tarde puedes mover el ejecutor del grupo predeterminado a cualquier grupo que crees. Para obtener más información, consulta "Cambiar un ejecutor a un grupo".

Cuando creas un grupo, debes elegir la política que defina qué organizaciones tienen acceso al grupo de ejecutores.

  1. En la esquina superior derecha de GitHub, haga clic en su foto de perfil y, a continuación, en Sus empresas.

  2. En la lista de empresas, da clic en aquella que quieras ver.

  3. En el lado izquierdo de la página, en la barra lateral de la cuenta de empresa, haz clic en Directivas.

  4. En " Policies," haz clic en Acciones.

  5. Haga clic en la pestaña Runner groups.

  6. Haga clic en New runner group.

  7. En "Group name", escriba un nombre para el grupo de ejecutores.

  8. Para elegir una directiva para el acceso de la organización, selecciona el menú desplegable Acceso de la organización y haz clic en una directiva. Puedes configurar un grupo de ejecutores para que sea accesible a una lista de organizaciones específica o a todas las organizaciones en la empresa.

  9. Asigne una directiva para el acceso al flujo de trabajo.

    Puede configurar un grupo de ejecutores a fin de que sea accesible para una lista específica de flujos de trabajo o para todos los flujos de trabajo. Este valor no se puede invalidar si configura un grupo de ejecutores de una organización que haya compartido una empresa. Si especifica qué flujo de trabajo puede acceder al grupo de ejecutores, debe usar la ruta completa del flujo de trabajo, incluido el nombre y el propietario del repositorio, y debe anclar el flujo de trabajo a una rama, etiqueta o SHA completo. Por ejemplo: octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main.

    Solo los trabajos que se definan directamente dentro de los flujos de trabajo seleccionados tendrán acceso al grupo de ejecutores.

  10. Haga clic en Save group para crear el grupo y aplicar la directiva.

Uso de nombres únicos para grupos de ejecutores

GitHub Actions requiere que los nombres del grupo de ejecutores sean únicos a nivel de organización. Esto significa que una organización ya no podrá crear un grupo de ejecutores con el mismo nombre que uno de la empresa. Además, los usuarios verán un banner de advertencia en cualquier grupo de ejecutores que comparta el mismo nombre que un grupo de la empresa, que sugiere que se debe cambiar el nombre del grupo de la organización.

Para evitar ambigüedad, se producirá un error en un flujo de trabajo si hay grupos de ejecutores duplicados en la organización y en la empresa. Para solucionarlo, puedes cambiar el nombre de uno de los grupos de ejecutores de la organización o de la empresa, o bien actualizar el archivo de flujo de trabajo para agregar un prefijo al nombre del grupo de ejecutores:

  • org/ o organization/
  • ent/ o enterprise/

Ejemplo: Uso de prefijos para diferenciar grupos de ejecutores

Por ejemplo, si tienes un grupo de ejecutores denominado my-group en la organización y otro denominado my-group en la empresa, puedes actualizar el archivo de flujo de trabajo para usar org/my-group o ent/my-group para diferenciar entre los dos.

Usar org/:

runs-on:
  group: org/my-group
  labels: [ self-hosted, label-1 ]

Usar ent/:

runs-on:
  group: ent/my-group
  labels: [ self-hosted, label-1 ]

Cambio de las organizaciones que pueden acceder a un grupo de ejecutores

Advertencia: Si usas un intervalo IP fijo, te recomendamos que solo uses ejecutor más grande con repositorios privados. Las bifurcaciones de tu repositorio pueden ejecutar código potencialmente peligroso en tu ejecutor más grande creando una solicitud de extracción que ejecute el código en un flujo de trabajo.

En el caso de los grupos de ejecutores de una empresa, puedes cambiar las organizaciones de la empresa que pueden acceder al grupo de ejecutores.

  1. En la esquina superior derecha de GitHub, haga clic en su foto de perfil y, a continuación, en Sus empresas.

  2. En la lista de empresas, da clic en aquella que quieras ver.

  3. En el lado izquierdo de la página, en la barra lateral de la cuenta de empresa, haz clic en Directivas.

  4. En " Policies," haz clic en Acciones.

  5. Haga clic en la pestaña Runner groups.

  6. En "Acceso a la organización", usa el menú desplegable para hacer clic en Organizaciones seleccionadas.

    1. A la derecha del menú desplegable, haz clic en .
    2. En el elemento emergente, usa las casillas para seleccionar organizaciones que puedan usar este grupo de ejecutores.
  7. Haga clic en Guardar grupo.

Cambio de los repositorios que pueden acceder a un grupo de ejecutores

Advertencia: Si usas un intervalo IP fijo, te recomendamos que solo uses ejecutor más grande con repositorios privados. Las bifurcaciones de tu repositorio pueden ejecutar código potencialmente peligroso en tu ejecutor más grande creando una solicitud de extracción que ejecute el código en un flujo de trabajo.

En el caso de los grupos de ejecutores de una organización, puedes cambiar los repositorios de la organización que pueden acceder a un grupo de ejecutores.

  1. Ve a la página principal de la organización donde se encuentran tus grupos de ejecutores.

  2. Haga clic en Settings (Configuración).

  3. En la barra lateral izquierda, haz clic en Acciones y, luego, en Grupos de ejecutores.

  4. En la lista de grupos, haz clic en el grupo de ejecutores que te gustaría configurar.

  5. En "Acceso al repositorio", use el menú desplegable para hacer clic en Repositorios seleccionados.

    1. A la derecha del menú desplegable, haz clic en .
    2. En el elemento emergente, usa las casillas para seleccionar repositorios que puedan acceder a este grupo de ejecutores.
  6. Haga clic en Guardar grupo.

Cambio de los flujos de trabajo que pueden acceder un grupo de ejecutores

Advertencia: Si usas un intervalo IP fijo, te recomendamos que solo uses ejecutor más grande con repositorios privados. Las bifurcaciones de tu repositorio pueden ejecutar código potencialmente peligroso en tu ejecutor más grande creando una solicitud de extracción que ejecute el código en un flujo de trabajo.

Puedes configurar un grupo de ejecutores para que ejecute ya sea flujos selectos o todos ellos. Por ejemplo, podrías utilizar este ajuste para proteger secretos almacenados en los ejecutores o estandarizar los flujos de trabajo de despliegue restringiendo un grupo de ellos para que ejecute solo un flujo de trabajo reutilizable específico. Este ajuste no se puede anular si estás configurando un grupo de ejecutores de una organización que haya compartido una empresa.

Cambio de los flujos de trabajo que pueden acceder a un grupo de ejecutores de organización

  1. Ve a la página principal de la organización donde se encuentran tus grupos de ejecutores.

  2. Haga clic en Settings (Configuración).

  3. En la barra lateral izquierda, haz clic en Acciones y, luego, en Grupos de ejecutores.

  4. En la lista de grupos, haz clic en el grupo de ejecutores que te gustaría configurar.

  5. En Workflow access, seleccione el menú desplegable y haga clic en Selected workflows.

  6. Haga clic en .

  7. Ingresa una lista separada por comas de los flujos de trabajo que pueden acceder al grupo de ejecutores. Utiliza la ruta completa, incluyendo el nombre y propietario del repositorio. Fija el flujo de trabajo a una rama, etiqueta o SHA completo. Por ejemplo: octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main.

    Solo los jobs que se definan directamente dentro de los flujos de trabajo seleccionados tendrán acceso al grupo de ejecutores.

    Los grupos de ejecutores que pertenecen a la organización no pueden acceder a los flujos de trabajo de otra organización de la empresa; en vez de esto, debes crear un grupo de ejecutores que pertenezca a la empresa.

  8. Haga clic en Save(Guardar).

Cambio de los flujos de trabajo que pueden acceder a un grupo de ejecutores de empresa

  1. En la esquina superior derecha de GitHub, haga clic en su foto de perfil y, a continuación, en Sus empresas.

  2. En la lista de empresas, da clic en aquella que quieras ver.

  3. En el lado izquierdo de la página, en la barra lateral de la cuenta de empresa, haz clic en Directivas.

  4. En " Policies," haz clic en Acciones.

  5. Haga clic en la pestaña Runner groups.

  6. En la lista de grupos, haz clic en el grupo de ejecutores que te gustaría configurar.

  7. En Workflow access, seleccione el menú desplegable y haga clic en Selected workflows.

  8. Haga clic en .

  9. Ingresa una lista separada por comas de los flujos de trabajo que pueden acceder al grupo de ejecutores. Utiliza la ruta completa, incluyendo el nombre y propietario del repositorio. Fija el flujo de trabajo a una rama, etiqueta o SHA completo. Por ejemplo: octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main.

    Solo los jobs que se definan directamente dentro de los flujos de trabajo seleccionados tendrán acceso al grupo de ejecutores.

    Los grupos de ejecutores que pertenecen a la organización no pueden acceder a los flujos de trabajo de otra organización de la empresa; en vez de esto, debes crear un grupo de ejecutores que pertenezca a la empresa.

  10. Haga clic en Save(Guardar).

Configuración del acceso a la red privada para ejecutores de mayor tamaño

Puede utilizar los ejecutores hospedados en GitHub con una VNet de Azure Esto le permite utilizar la infraestructura administrada en GitHub para el CI/CD, a la vez que proporciona control total sobre las directivas de red de los ejecutores. Para más información sobre Azure VNET, consulta ¿Qué es Azure Virtual Network? en la documentación de Azure.

Si ha configurado una empresa o una organización para que se conecte a una red virtual de Azure, puede conceder a los grupos de ejecutores acceso a ella. Para obtener más información, vea «Información sobre las redes privadas con ejecutores hospedados en GitHub».

Cambiar el nombre de un grupo de ejectuores

Puedes cambiar el nombre de los grupos de ejecutores de los niveles de empresa y organización.

Cambio del nombre de un grupo de ejecutores de organización

  1. Ve a la página principal de la organización donde se encuentran tus grupos de ejecutores.
  2. Haga clic en Settings (Configuración).
  3. En la barra lateral izquierda, haz clic en Acciones y, luego, en Grupos de ejecutores.
  4. En la lista de grupos, haz clic en el grupo de ejecutores que te gustaría configurar.
  5. Escriba el nuevo nombre del grupo de ejecutores en el campo de texto en "Nombre del grupo".
  6. Haga clic en Save(Guardar).

Cambio del nombre de un grupo de ejecutores de empresa

  1. En la esquina superior derecha de GitHub, haga clic en su foto de perfil y, a continuación, en Sus empresas.

  2. En la lista de empresas, da clic en aquella que quieras ver.

  3. En el lado izquierdo de la página, en la barra lateral de la cuenta de empresa, haz clic en Directivas.

  4. En " Policies," haz clic en Acciones.

  5. Haga clic en la pestaña Runner groups.

  6. En la lista de grupos, haz clic en el grupo de ejecutores que te gustaría configurar.

  7. Escriba el nuevo nombre del grupo de ejecutores en el campo de texto en "Nombre del grupo".

  8. Haga clic en Save(Guardar).

Cambiar un ejecutor a un grupo

Si no especificas un grupo de ejecutores durante el proceso de registro, tus nuevos ejecutores se asignarán automáticamente al grupo predeterminado y después se moverán a otro grupo.

Traslado de un ejecutor de organización a un grupo

  1. En GitHub.com, ve a la página principal de la organización.

  2. En el nombre de la organización, haz clic en Configuración. Si no puedes ver la pestaña "Configuración", selecciona el menú desplegable y, a continuación, haz clic en Configuración.

    Captura de pantalla de las pestañas en el perfil de una organización. La pestaña "Configuración" se destaca en naranja oscuro.

  3. En la barra lateral izquierda, haz clic en Acciones y, después, en Ejecutores.

  4. En la lista de "Ejecutores", haz clic en aquél que quieras configurar.

  5. Seleccione la lista desplegable Runner group.

  6. En "Mover el ejecutor al grupo", elige un grupo destino para el ejecutor.

Traslado de un ejecutor de empresa a un grupo

  1. En la esquina superior derecha de GitHub, haga clic en su foto de perfil y, a continuación, en Sus empresas.

  2. En la lista de empresas, da clic en aquella que quieras ver.

  3. En el lado izquierdo de la página, en la barra lateral de la cuenta de empresa, haz clic en Directivas.

  4. En " Policies," haz clic en Acciones.

  5. Haz clic en la pestaña Ejecutores.

  6. En la lista de "Ejecutores", haz clic en aquél que quieras configurar.

  7. Seleccione la lista desplegable Runner group.

  8. En "Mover el ejecutor al grupo", elige un grupo destino para el ejecutor.

Eliminar un grupo de ejecutores

Para quitar un grupo de ejecutores, primero debes mover o quitar todos los ejecutores del grupo.

Eliminación de un grupo de ejecutores de una organización

  1. Ve a la página principal de la organización donde se encuentran tus grupos de ejecutores.
  2. Haga clic en Settings (Configuración).
  3. En la barra lateral izquierda, haz clic en Acciones y, luego, en Grupos de ejecutores.
  4. En la lista de grupos, a la derecha del grupo que quieras borrar, haz clic en .
  5. Para eliminar el grupo, haga clic en Remove group.
  6. Revise las indicaciones de confirmación y haga clic en Remove this runner group.

Eliminación de un grupo de ejecutores de una empresa

  1. En la esquina superior derecha de GitHub, haga clic en su foto de perfil y, a continuación, en Sus empresas.

  2. En la lista de empresas, da clic en aquella que quieras ver.

  3. En el lado izquierdo de la página, en la barra lateral de la cuenta de empresa, haz clic en Directivas.

  4. En " Policies," haz clic en Acciones.

  5. Haga clic en la pestaña Runner groups.

  6. En la lista de grupos, a la derecha del grupo que quieras borrar, haz clic en .

  7. Para eliminar el grupo, haga clic en Remove group.

  8. Revise las indicaciones de confirmación y haga clic en Remove this runner group.