Skip to main content

Protección contra el envío de cambios para repositorios y organizaciones

With push protection for repositories and organizations, secret scanning blocks contributors from pushing secrets to a repository and generates an alert whenever a contributor bypasses the block.

¿Quién puede utilizar esta característica?

La protección de inserción está disponible para repositorios que son propiedad de una organización en GitHub Enterprise Server si la empresa tiene una licencia de GitHub Advanced Security.

Nota: El administrador del sitio debe habilitar secret scanning para tu instancia de GitHub Enterprise Server para que puedas utilizar esta característica. Para obtener más información, consulta "Configurar el escaneo de secretos para tu aplicativo".

Es posible que no puedas habilitar o deshabilitar secret scanning si un propietario de empresa ha establecido una directiva en el nivel empresarial. Para obtener más información, consulta "Aplicación de directivas de seguridad y análisis de código de la empresa".

Información sobre la protección contra el envío de cambios para repositorios y organizaciones

Hasta ahora, secret scanning comprueba si hay secretos después de una inserción y alerta a los usuarios de los secretos expuestos. Al habilitar la protección de inserción para la organización o el repositorio, secret scanning también comprueba si hay inserciones para secretos admitidos. Secret scanning enumera los secretos que detecta para que el creador pueda revisarlos y eliminarlos, o, si se permite, permita que se inserten. Secret scanning también puede comprobar las inserciones para patrones personalizados. Para obtener más información, consulte "Definición de patrones personalizados para el examen de secretos".

Si un colaborador omite un bloque de protección de inserción para un secreto, GitHub:

  • Crea una alerta en la pestaña Security del repositorio.
  • Agrega el evento de omisión al registro de auditoría.
  • Envía una alerta por correo electrónico a los propietarios de la organización o de la cuenta personal, administradores de seguridad y administradores de repositorios que están viendo el repositorio, con un vínculo al secreto y el motivo por el que se permitió.

En esta tabla se muestra el comportamiento de las alertas para cada forma en que un usuario puede omitir un bloque de protección de inserción.

Razón de la omisiónComportamiento de alerta
Se usa en pruebasGitHub crea una alerta cerrada, resuelta como "se usa en pruebas"
Es un falso positivoGitHub crea una alerta cerrada, resuelta como "falso positivo"
Lo arreglaré más tardeGitHub crea una alerta abierta

Puede supervisar las alertas de seguridad para detectar cuándo los usuarios pasan por alto las protecciones de inserción y crean alertas. Para obtener más información, vea «Auditoría de alertas de seguridad».

Los propietarios o administradores de seguridad de las organizaciones pueden ver métricas del rendimiento de la protección de la inserción en toda la organización. Para obtener más información, vea «Visualización de las métricas para la protección de la inserción del examen de secretos en tu organización».

Para más información sobre los secretos y los proveedores de servicios admitidos para la protección de inserción, consulta "Patrones de análisis de secretos".

Habilitación de secret scanning como protección de inserción

Para poder usar secret scanning como protección de inserción en repositorios públicos, la empresa, la organización, o el repositorio debe tener secret scanning habilitado. Para usar secret scanning como protección de inserción en repositorios privados o internos, la empresa u organización también debe tener GitHub Advanced Security habilitado. Para obtener más información, consulte "Administración de las características de GitHub Advanced Security para la empresa," "Administrar la configuración de seguridad y análisis de su organización", "Administración de la configuración de seguridad y análisis para el repositorio" y "Acerca de GitHub Advanced Security".

Los propietarios de la organización, los administradores de seguridad y los administradores del repositorio pueden habilitar también la protección de secret scanning mediante la API. Para obtener más información, consulte "Puntos de conexión de la API de REST para repositorios" y expanda la sección "Propiedades del objeto security_and_analysis" en la documentación de la API de REST.

Los propietarios de la organización pueden proporcionar un vínculo personalizado que se mostrará cuando se bloquee un envío de cambios. Este vínculo personalizado puede incluir recursos y consejos específicos de la organización, como instrucciones sobre el uso de un almacén de secretos recomendado o con quién ponerse en contacto para formular preguntas relacionadas con el secreto bloqueado.

Enterprise administrators can also enable or disable secret scanning como protección de inserción para la empresa a través de la API. Para más información, consulta "Puntos de conexión de API de REST para la seguridad y el análisis del código empresarial".

Nota: Al bifurcar un repositorio con secret scanning como protección de inserción habilitada, esto no está habilitado de forma predeterminada en la bifurcación. Puede habilitarlo en la bifurcación de la misma manera que lo habilite en un repositorio independiente.

Habilitar el secret scanning como protección de inserción de la empresa

  1. En la esquina superior derecha de GitHub Enterprise Server, haz clic en la foto de perfil y luego en Configuración de empresa.

    Captura de pantalla del menú desplegable que aparece al hacer clic en la foto de perfil en GitHub Enterprise Server. La opción "Configuración de Enterprise" está resaltada en un contorno naranja oscuro.

  2. En la barra lateral de la cuenta de empresa, haz clic en Configuración.

  3. En la barra lateral de la izquierda, haz clic en Seguridad y análisis del código.

  4. En "Secret scanning", en "Push protection" (Protección de inserciones), haga clic en Enable all (Habilitar todo).

    Captura de pantalla de la sección "Protección de inserción" en la página "Seguridad y análisis del código". Dos botones, con la etiqueta "Habilitar todo" y "Deshabilitar todo", se resaltan con un contorno naranja oscuro.

  5. Opcionalmente, haz clic en Habilitar automáticamente para repositorios agregados a secret scanning..

  6. Opcionalmente, para incluir un vínculo personalizado en el mensaje que verán los miembros cuando intenten insertar un secreto, haz clic en Agregar un vínculo de recurso en la CLI y la interfaz de usuario web cuando se bloquee una confirmación; luego, escribe una dirección URL y haz clic en Guardar vínculo.

    Captura de pantalla de la sección "Protección de inserción" en la página "Seguridad y análisis del código". La casilla "Agregar un vínculo de recursos en la CLI y la interfaz de usuario web cuando se bloquea una confirmación" y el campo de texto del vínculo personalizado se resaltan con un contorno naranja oscuro.

Habilitación de secret scanning como protección de inserción para una organización

puede usar información general de seguridad para buscar un conjunto de repositorios y habilitar o deshabilitar secret scanning como protección de inserción para ellos al mismo tiempo. Para obtener más información, vea «Habilitación de características de seguridad para varios repositorios».

También puede usar la página de configuración de la organización de "Seguridad y análisis del código" para habilitar o deshabilitar secret scanning como protección contra el envío de cambios en todos los repositorios existentes en una organización.

  1. En tu instancia de GitHub Enterprise Server, 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 sección "Seguridad" de la barra lateral, haga clic en Análisis y seguridad del código.

  4. Debajo de "Seguridad y análisis de código", encuentra "GitHub Advanced Security".

  5. En "Secret scanning", en "Push protection" (Protección de inserciones), haga clic en Enable all (Habilitar todo).

  6. Opcionalmente, haga clic en Habilitar automáticamente para repositorios agregados a secret scanning..

  7. Opcionalmente, para incluir un vínculo personalizado en el mensaje que verán los miembros cuando intenten insertar un secreto, selecciona Agregar un vínculo de recurso en la CLI y la interfaz de usuario web cuando se bloquee una confirmación, luego, escribe una dirección URL y haz clic en Guardar vínculo.

    Captura de pantalla de la sección "Protección de inserción" en la página "Seguridad y análisis del código". La casilla "Agregar un vínculo de recursos en la CLI y la interfaz de usuario web cuando se bloquea una confirmación" y el campo de texto del vínculo personalizado se resaltan con un contorno naranja oscuro.

Para más información sobre cómo habilitar las características de seguridad en una organización, consulta "Inicio rápido para proteger su organización".

Habilitación de secret scanning como protección de inserción para un repositorio

  1. En tu instancia de GitHub Enterprise Server, navega a la página principal del repositorio.

  2. En el nombre del repositorio, 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 un encabezado de repositorio en el que se muestran las pestañas. La pestaña "Configuración" está resaltada con un contorno naranja oscuro.

  3. En la sección "Seguridad" de la barra lateral, haga clic en Análisis y seguridad del código.

  4. Debajo de "Seguridad y análisis de código", encuentra "GitHub Advanced Security".

  5. En "Secret scanning", en "Push protection" (Protección de inserciones), haga clic en Enable (Habilitar).

Habilitación de la protección frente a inserciones en un patrón personalizado

Puede habilitar secret scanning como protección frente a inserciones en patrones personalizados almacenados en el nivel de empresa, organización o repositorio.

Habilitación de la protección frente a inserciones en un patrón personalizado almacenado en una empresa

Notas:

  • Para habilitar la protección de inserción para patrones personalizados, secret scanning porque la protección de inserción debe habilitarse en el nivel empresarial. Para obtener más información, vea «Protección contra el envío de cambios para repositorios y organizaciones».
  • La habilitación de la protección de inserción para patrones personalizados que se encuentran habitualmente puede ser perjudicial para los colaboradores.

Antes de habilitar la protección frente a inserciones en patrón personalizado a nivel empresarial, también debes probar los patrones personalizados mediante simulacros. Solo puedes realizar un simulacro en repositorios a los que tengas acceso de administración. Si un propietario de empresa quiere acceso para realizar simulacros en cualquier repositorio de una organización, se le debe asignar el rol de propietario de la organización. Para obtener más información, vea «Administración del rol en una organización que pertenece a la empresa».

  1. En la esquina superior derecha de GitHub Enterprise Server, haz clic en la foto de perfil y luego en Configuración de empresa.

    Captura de pantalla del menú desplegable que aparece al hacer clic en la foto de perfil en GitHub Enterprise Server. La opción "Configuración de Enterprise" está resaltada en un contorno naranja oscuro.

  2. En la barra lateral de la cuenta de empresa, haz clic en Directivas. 1. En "Directivas" de , haz clic en Seguridad y análisis del código.

  3. En "Seguridad y análisis del código", haga clic en Características de seguridad. 1. En "Secret scanning", en "Patrones personalizados", haz clic en para seleccionar el patrón que te interese.

    Note

    A nivel empresarial, solo puede editar y habilitar la protección frente a inserciones en patrones personalizados que hayas creado.

  4. Para habilitar la protección frente a inserciones en el patrón personalizado, desplázate hacia abajo hasta "Protección frente a inserciones" y haz clic en Habilitar.

    Note

    La opción para habilitar la protección de inserción solo es visible para los patrones publicados.

    Captura de pantalla de la página de patrones personalizados con el botón para habilitar la protección de inserción resaltado con un contorno naranja oscuro.

Habilitación de secret scanning como protección frente a inserciones en una organización

Antes de definir la protección frente a inserciones en un patrón personalizado, debes asegurarte de habilitar secret scanning para los repositorios que quieras examinar en tu organización. Para habilitar secret scanning en todos los repositorios de la organización, consulte "Administrar la configuración de seguridad y análisis de su organización".

  1. En la esquina superior derecha de GitHub Enterprise Server, selecciona la foto de perfil y luego haz clic en Sus organizaciones.

    Captura de pantalla del menú desplegable en la imagen de perfil de @octocat. "Sus organizaciones" se destaca en naranja oscuro.

  2. Junto a la organización, haga clic en Settings.

  3. En la sección "Seguridad" de la barra lateral, haga clic en Análisis y seguridad del código.

  4. Debajo de "Seguridad y análisis de código", encuentra "GitHub Advanced Security".

  5. En "Secret scanning", en "Patrones personalizados", haz clic en para seleccionar el patrón que te interese.

  6. Para habilitar la protección frente a inserciones en el patrón personalizado, desplázate hacia abajo hasta "Protección frente a inserciones" y haz clic en Habilitar.

    Notas:

    • La opción para habilitar la protección de inserción solo es visible para los patrones publicados.
    • La protección de inserción para patrones personalizados solo se aplicará a los repositorios de tu organización que tengan secret scanning como protección de inserción habilitada. Para obtener más información, vea «Protección contra el envío de cambios para repositorios y organizaciones».
    • La habilitación de la protección de inserción para patrones personalizados que se encuentran habitualmente puede ser perjudicial para los colaboradores.

    Captura de pantalla de la sección "Protección de inserción" de la página de patrones personalizados. Un botón, con la etiqueta "Habilitar", se destaca en naranja oscuro.

Habilitación de secret scanning como protección frente a inserciones en un patrón personalizado

Antes de habilitar la protección frente inserciones en un patrón personalizado a nivel de repositorio, debes definir el patrón personalizado para el repositorio y probarlo en él. Para obtener más información, vea «Definición de patrones personalizados para el examen de secretos».

  1. En tu instancia de GitHub Enterprise Server, navega a la página principal del repositorio.

  2. En el nombre del repositorio, 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 un encabezado de repositorio en el que se muestran las pestañas. La pestaña "Configuración" está resaltada con un contorno naranja oscuro.

  3. En la sección "Seguridad" de la barra lateral, haga clic en Análisis y seguridad del código.

  4. Debajo de "Seguridad y análisis de código", encuentra "GitHub Advanced Security".

  5. En "Secret scanning", en "Patrones personalizados", haz clic en para seleccionar el patrón que te interese.

  6. Para habilitar la protección frente a inserciones en el patrón personalizado, desplázate hacia abajo hasta "Protección frente a inserciones" y haz clic en Habilitar.

    Note

    La opción para habilitar la protección de inserción solo es visible para los patrones publicados.

    Captura de pantalla de la sección "Protección de inserción" de la página de patrones personalizados. Un botón, con la etiqueta "Habilitar", se destaca en naranja oscuro.

Información adicional