Skip to main content

Descripción de los tipos de secretos de GitHub

Obtenga información sobre el uso, el ámbito y los permisos de acceso para GitHub secretos.

En este artículo

          Dependabot secretos

          Dependabot los secretos se usan para almacenar credenciales e información confidencial para su uso en Dependabot.

Los secretos de Dependabot se mencionan en el archivo dependabot.yml de un repositorio.

Usage

          Dependabot Los secretos se suelen usar para Dependabot autenticarse en registros de paquetes privados. Esto permite Dependabot abrir solicitudes de incorporación de cambios para actualizar dependencias vulnerables o obsoletas en repositorios privados. Para la autenticación, se hace referencia a estos Dependabot secretos en el archivo `dependabot.yml` de un repositorio.

          Dependabot los secretos pueden incluir también los secretos necesarios para los flujos de trabajo iniciados por Dependabot. Por ejemplo, Dependabot puede desencadenar flujos de trabajo de GitHub Actions cuando crea pull requests para actualizar dependencias o comenta en los pull requests. En este caso, se puede hacer referencia a los secretos desde los archivos de flujo de trabajo (`.github/workflows/*.yml`) siempre que el flujo de trabajo sea desencadenado por un evento Dependabot.

Ámbito

Puede definir Dependabot secretos en:

  • Nivel de repositorio

  • Nivel de organización

            Dependabot los secretos se pueden compartir entre repositorios cuando se establecen en el nivel de organización. Debes especificar qué repositorios de la organización pueden acceder al secreto.
    

Permisos de acceso

          Dependabot
          Dependabot accede a los secretos al autenticarse en registros privados para actualizar las dependencias.

          Dependabot Se accede a los secretos por los flujos de trabajo cuando el evento desencadenante para el flujo de trabajo es iniciado por Dependabot.GitHub Actions Esto se debe a que cuando un flujo de trabajo lo inicia Dependabot, solo están disponibles los secretos de Dependabot: no se puede acceder a los secretos de Actions. Por lo tanto, los secretos necesarios para estos flujos de trabajo deben almacenarse como Dependabot secretos, en lugar de secretos de acciones. Hay restricciones de seguridad adicionales para el evento `pull_request_target`. Consulta [Limitaciones y restricciones](#limitations-and-restrictions).

Permisos de acceso de usuario

Secretos de nivel de repositorio:

  • Los usuarios con acceso de administrador al repositorio pueden crear y administrar Dependabot secretos.
  • Los usuarios con acceso de colaborador al repositorio pueden usar el secreto para Dependabot.

Secretos de nivel de organización:

  • Los propietarios de la organización pueden crear y administrar Dependabot secretos.
  • Los usuarios que tengan acceso de colaborador a los repositorios con acceso a cada secreto pueden utilizar dicho secreto para Dependabot.

Limitaciones y restricciones

En el caso de los flujos de trabajo iniciados por Dependabot, el pull_request_target evento se trata de forma diferente a otros eventos. Para este evento, si la referencia base de la solicitud de incorporación de cambios se creó mediante Dependabot (github.event.pull_request.user.login == 'dependabot[bot]'):

  • El flujo de trabajo recibe un GITHUB_TOKEN de solo lectura.
  • Los secretos no están disponibles en el flujo de trabajo.

Esta restricción adicional ayuda a evitar posibles riesgos de seguridad que podrían surgir de las solicitudes de incorporación de cambios creadas por Dependabot.

          Dependabot los secretos no se pasan a forks.

Secretos de acciones

Los secretos de acciones se usan para almacenar información confidencial, como claves de API, tokens de autenticación y otras credenciales en flujos de trabajo.

Usage

Se hace referencia a Secretos de Acciones en los archivos de flujo de trabajo (.github/workflows/*.yml).

Ámbito

Puede definir secretos de Acciones en:

  • Nivel de repositorio
  • Nivel de entorno
  • Nivel de organización

Los secretos de nivel de entorno son específicos de un entorno determinado, como producción o ensayo. Los secretos de acciones se pueden compartir entre repositorios si se establecen en el nivel de organización. Puedes usar directivas de acceso para controlar qué repositorios tienen acceso al secreto.

Permisos de acceso

Los secretos de acciones solo están disponibles dentro de los flujos de trabajo GitHub Actions. A pesar de ejecutarse en Acciones, Dependabot no tiene acceso a los secretos de Acciones.

En el caso de los flujos de trabajo iniciados por Dependabot, los secretos de acciones no están disponibles. Estos secretos de flujo de trabajo deben almacenarse como Dependabot secretos para poder acceder al flujo de trabajo.

La ubicación donde se almacena el secreto de Acciones determina su accesibilidad:

  • Secreto del repositorio: todos los flujos de trabajo del repositorio pueden acceder al secreto.
  • Secreto de entorno: el secreto está limitado a los trabajos que hacen referencia a ese entorno determinado.
  • Secreto de la organización: todos los flujos de trabajo de los repositorios a los que la organización ha concedido acceso pueden acceder a los secretos de la organización.

Permisos de acceso de usuario

Secretos de entorno y nivel de repositorio:

  • Los usuarios con acceso de administrador al repositorio pueden crear y administrar secretos de Acciones.
  • Los usuarios con acceso de colaborador al repositorio pueden usar el secreto.

Secretos de nivel de organización:

  • Los propietarios de la organización pueden crear y administrar secretos de Acciones.
  • Los usuarios con acceso de colaborador a los repositorios con acceso a cada secreto pueden usar el secreto.

Limitaciones y restricciones

  • Los secretos de acciones no están disponibles para los flujos de trabajo iniciados por Dependabot.
  • Los secretos de acciones no se pasan a los flujos de trabajo desencadenados por una solicitud de extracción desde un fork.
  • GitHub Actions censura automáticamente el contenido de todos los GitHub secretos que se imprimen en los registros de flujo de trabajo.
  • Puedes almacenar hasta 1,000 secretos de organización, 100 secretos de repositorio y 100 secretos de ambiente. Los secretos tienen un tamaño máximo de 48 KB. Para obtener más información, consulta Límites de secretos.

Lectura adicional