Skip to main content

Enforcing policies for GitHub Actions in your enterprise

You can enforce policies for GitHub Actions within your enterprise's organizations, or allow policies to be set in each organization.

Who can use this feature

Enterprise owners can enforce policies for GitHub Actions in an enterprise.

About policies for GitHub Actions in your enterprise

GitHub Actions helps members of your enterprise automate software development workflows on GitHub Enterprise Server. For more information, see "Understanding GitHub Actions."

If you enable GitHub Actions, any organization on your GitHub Enterprise Server instance can use GitHub Actions. You can enforce policies to control how members of your enterprise on GitHub Enterprise Server use GitHub Actions. By default, organization owners can manage how members use GitHub Actions. For more information, see "Disabling or limiting GitHub Actions for your organization."

Enforcing a policy to restrict the use of GitHub Actions in your enterprise

You can choose to disable GitHub Actions for all organizations in your enterprise, or only allow specific organizations. You can also limit the use of public actions , so that people can only use local actions that exist in your enterprise.

  1. En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa. "Configuración de empresa" en el menú desplegable de la foto de perfil de GitHub Enterprise Server

  2. En la barra lateral de la empresa, haz clic en Directivas. Pestaña Directivas en la barra lateral de la cuenta de empresa

  3. En " Directivas", haz clic en Acciones.

  4. Under "Policies", select your options.

    Si eliges Permitir seleccionar acciones, se permiten acciones en tu empresa y hay opciones adicionales para permitir otras acciones específicas. Para obtener más información, consulta "Habilitación de la ejecución de acciones seleccionadas".

    Note: To enable access to public actions, you must first configure your GitHub Enterprise Server instance to connect to GitHub.com. For more information, see "Enabling automatic access to GitHub.com actions using GitHub Connect."

    Enable, disable, or limits actions for this enterprise account

  5. Click Save.

Habilitación de la ejecución de acciones seleccionadas

Al elegir Permitir seleccionar acciones, se permiten acciones locales y hay opciones adicionales para permitir otras acciones específicas:

  • Permitir las acciones que crea GitHub: Puedes permitir que los flujos de trabajo utilicen todas las acciones que haya creado GitHub. Las acciones que crea GitHub se encuentran en las organizaciones actions y github. Para más información, consulta las organizaciones actions y github.

  • Permitir las acciones de Marketplace de creadores verificados: Esta opción está disponible si tienes habilitado GitHub Connect y si lo configuraste con GitHub Actions. Para obtener más información, consulta "Habilitación del acceso automático a las acciones de GitHub.com mediante GitHub Connect". Puedes permitir que los flujos de trabajo usen todas las acciones de GitHub Marketplace creadas por creadores verificados. Cuando GitHub haya verificado al creador de la acción como una organización asociada, se mostrará la insignia de junto a la acción en GitHub Marketplace.

  • Permitir las acciones especificadas: Puedes restringir los flujos de trabajo para que utilicen acciones en organizaciones y repositorios concretos.

    Para restringir el acceso a etiquetas específicas o confirmar los SHA de una acción, usa la misma sintaxis que se usa en el flujo de trabajo para seleccionar la acción.

    • Para una acción, la sintaxis es <OWNER>/<REPO>@<TAG OR SHA>. Por ejemplo, usa actions/javascript-action@v1.0.1 para seleccionar una etiqueta o actions/javascript-action@172239021f7ba04fe7327647b213799853a9eb89 para seleccionar un SHA. Para obtener más información, consulta "Búsqueda y personalización de acciones".

    Puedes usar el carácter comodín * para buscar coincidencias con patrones. Por ejemplo, para permitir todas las acciones en las organizaciones que comienzan con space-org, puedes especificar space-org*/*. Para permitir todas las acciones en los repositorios que empiezan con octocat, puedes usar */octocat**@*. Para obtener más información sobre el uso del carácter comodín *, consulta "Sintaxis de flujo de trabajo para Acciones de GitHub".

Este procedimiento muestra cómo agregar acciones específicas a la lista de permitidos.

  1. En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa. "Configuración de empresa" en el menú desplegable de la foto de perfil de GitHub Enterprise Server

  2. En la barra lateral de la empresa, haz clic en Directivas. Pestaña Directivas en la barra lateral de la cuenta de empresa

  3. En " Directivas", haz clic en Acciones.

  4. Under "Policies", select Permitir seleccionar acciones and add your required actions to the list.

    Add actions to the allow list

Enforcing a policy for artifact and log retention in your enterprise

GitHub Actions can store artifact and log files. For more information, see "Downloading workflow artifacts."

Predeterminadamente, los artefactos y archivos de bitácora que generan los flujos de trabajo se retienen por 90 días antes de que se borren automáticamente. Puedes cambiar este periodo de retención a cualquier cantidad entre 1 o 400 días.

Cuando personalizas el periodo de retención, esto aplicará solamente a los artefactos y archivos de bitácora nuevos, y no aplicará retroactivamente a los objetos existentes. Para los repositorios y organizaciones administrados, el periodo de retención máximo no puede exceder el límite que configuró la organización o empresa administradora.

  1. En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa. "Configuración de empresa" en el menú desplegable de la foto de perfil de GitHub Enterprise Server
  2. En la barra lateral de la empresa, haz clic en Directivas. Pestaña Directivas en la barra lateral de la cuenta de empresa
  3. En " Directivas", haz clic en Acciones.
  4. En Artifact and log retention, escriba un valor nuevo.
  5. Haga clic en Guardar para aplicar el cambio.

Enforcing a policy for fork pull requests in your enterprise

You can enforce policies to control how GitHub Actions behaves for your GitHub Enterprise Server instance when members of your enterprise run workflows from forks.

Enforcing a policy for fork pull requests in private repositories

Si se basa en el uso de bifurcaciones de sus repositorios privados, puede configurar las directivas que controlan cómo los usuarios pueden ejecutar flujos de trabajo en los eventos de pull_request. Ya que están disponibles únicamente para repositorios privados e internos, puedes configurar estos ajustes de política para tu empresa, organizaciones o repositorios.

If a policy is enabled for an enterprise, the policy can be selectively disabled in individual organizations or repositories. If a policy is disabled for an enterprise, individual organizations or repositories cannot enable it.

  • Ejecutar flujos de trabajo desde solicitudes de incorporación de cambios de bifurcación: permite a los usuarios ejecutar flujos de trabajo desde solicitudes de incorporación de cambios de bifurcación, utilizando un GITHUB_TOKEN con permiso de solo lectura y sin acceso a secretos.
  • Enviar tokens de escritura a flujos de trabajo desde solicitudes de incorporación de cambios: permite que las solicitudes de incorporación de cambios de bifurcaciones usen un GITHUB_TOKEN con permiso de escritura.
  • Enviar secretos a flujos de trabajo desde solicitudes de incorporación de cambios: hace que todos los secretos estén disponibles para la solicitud de incorporación de cambios.
  1. En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa. "Configuración de empresa" en el menú desplegable de la foto de perfil de GitHub Enterprise Server
  2. En la barra lateral de la empresa, haz clic en Directivas. Pestaña Directivas en la barra lateral de la cuenta de empresa
  3. En " Directivas", haz clic en Acciones.
  4. En Fork pull request workflows (Bifurcar flujos de trabajo de solicitud de incorporación de cambios), seleccione las opciones. Por ejemplo: Habilitar, deshabilitar o limitar las acciones para este repositorio
  5. Haga clic en Save (Guardar) para aplicar los valores.

Enforcing a policy for workflow permissions in your enterprise

Puedes establecer los permisos predeterminados concedidos al GITHUB_TOKEN. Para obtener más información sobre el GITHUB_TOKEN, consulta Autenticación de token automática. Puedes elegir un conjunto restringido de permisos como valor predeterminado o aplicar la configuración permisiva.

You can set the default permissions for the GITHUB_TOKEN in the settings for your enterprise, organizations, or repositories. If you choose a restricted option as the default in your enterprise settings, this prevents the more permissive setting being chosen in the organization or repository settings.

Cualquiera con acceso de escritura en un repositorio puede modificar los permisos que se han otorgado a GITHUB_TOKEN, y agregar o quitar el acceso según sea necesario, si editan la clave permissions en el archivo de flujo de trabajo. Para más información, vea permissions.

Configuring the default GITHUB_TOKEN permissions

By default, when you create a new enterprise, GITHUB_TOKEN only has read access for the contents scope.

  1. En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa. "Configuración de empresa" en el menú desplegable de la foto de perfil de GitHub Enterprise Server

  2. En la barra lateral de la empresa, haz clic en Directivas. Pestaña Directivas en la barra lateral de la cuenta de empresa

  3. En " Directivas", haz clic en Acciones.

  4. Under "Workflow permissions", choose whether you want the GITHUB_TOKEN to have read and write access for all scopes, or just read access for the contents scope.

    Set GITHUB_TOKEN permissions for this enterprise

  5. Click Save to apply the settings.

Preventing GitHub Actions from creating or approving pull requests

Puedes elegir si permitir o impedir que los flujos de trabajo de GitHub Actions creen o aprueben las solicitudes de incorporación de cambios.

By default, when you create a new enterprise, workflows are not allowed to create or approve pull requests.

  1. En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa. "Configuración de empresa" en el menú desplegable de la foto de perfil de GitHub Enterprise Server

  2. En la barra lateral de la empresa, haz clic en Directivas. Pestaña Directivas en la barra lateral de la cuenta de empresa

  3. En " Directivas", haz clic en Acciones.

  4. Under "Workflow permissions", use the Allow GitHub Actions to create and approve pull requests setting to configure whether GITHUB_TOKEN can create and approve pull requests.

    Set GITHUB_TOKEN permissions for this enterprise

  5. Click Save to apply the settings.

Enforcing a policy for cache storage in your enterprise

De forma predeterminada, el almacenamiento total de caché que GitHub Actions usa en el almacenamiento externo para your GitHub Enterprise Server instance se limita a un máximo de 10 GB por repositorio y el tamaño máximo permitido que se puede establecer para un repositorio es de 25 GB. Si excedes el límite, GitHub guardará la nueva caché, pero comenzará a desalojar las cachés hasta que el tamaño total sea inferior al límite del repositorio.

However, you can set an enterprise policy to customize both the default total cache size for each repository, as well as the maximum total cache size allowed for a repository. For example, you might want the default total cache size for each repository to be 5 GB, but also allow repository administrators to configure a total cache size up to 15 GB if necessary.

People with admin access to a repository can set a total cache size for their repository up to the maximum cache size allowed by the enterprise policy setting.

The policy settings for GitHub Actions cache storage can currently only be modified using the REST API:

Nota: A diferencia de otras configuraciones de directiva de GitHub Actions, no hay ninguna directiva de nivel de organización para establecer el tamaño de caché de GitHub Actions. La directiva de empresa se aplica directamente a los repositorios.