Skip to main content
Publicamos actualizaciones para la documentación con frecuencia y es posible que aún se esté traduciendo esta página. Para obtener la información más reciente, consulta la documentación en inglés.
GitHub AE es una versión limitada en este momento.

Inserción de una rama bloqueada por la protección de inserción

La característica de protección de inserción de secret scanning protege proactivamente contra los secretos que se filtran en los repositorios. Puedes resolver las inserciones bloqueadas y, una vez que se ha quitado el secreto detectado, puedes insertar los cambios en la rama de trabajo desde la línea de comandos o la interfaz de usuario web.

Secret scanning está disponible para repositorios que son propiedad de una organización en GitHub AE. Esta es una característica de la GitHub Advanced Security (gratuita durante el lanzamiento beta).

Acerca de la protección de inserción para secret scanning

La característica de protección de inserción de secret scanning ayuda a evitar pérdidas de seguridad mediante el examen de los secretos antes de insertar los cambios en el repositorio. Al habilitar la protección de inserción, secret scanning también comprueba si hay secretos de alta confianza (los identificados con una tasa de falsos positivos baja). Secret scanning enumera los secretos que detecta para que el creador pueda revisarlos y quitarlos, o si es necesario, permitir que se inserten. Para 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".

Si confirmas que un secreto es real, debes quitar el secreto de la rama, de todas las confirmaciones en las que aparece, antes de volver a insertar.

Sugerencia Si GitHub bloquea un secreto que crees que es seguro insertar, puedes permitirlo y especificar el motivo por el que se debe permitir. Para más información sobre cómo omitir la protección de inserción para un secreto, consulta "Protección de inserciones con análisis de secretos" y "Protección de inserciones con análisis de secretos" para la línea de comandos y la interfaz de usuario web, respectivamente.

Resolución de una inserción bloqueada en la línea de comandos

Al intentar insertar un secreto admitido en un repositorio u organización con secret scanning como protección de inserción habilitada, GitHub bloqueará la inserción. Puedes quitar el secreto de la rama o seguir una dirección URL proporcionada para permitir la inserción.

Notas:

  • Si la configuración de Git admite inserciones en varias ramas y no solo en la actual, es posible que se bloquee la inserción debido a que se insertan referencias adicionales y no deseadas. Para obtener más información, consulta las opciones push.default en la documentación de Git.
  • Si se agota el tiempo de espera de secret scanning tras una inserción, GitHub todavía examinará las confirmaciones en busca de secretos después de la inserción.

Si el secreto bloqueado se introdujo con la confirmación más reciente en la rama, puedes seguir las instrucciones a continuación.

  1. Quita el secreto del código.
  2. Confirma los cambios mediante git commit --amend.
  3. Envía los cambios con git push.

También puedes quitar el secreto si aparece en una confirmación anterior en el historial de Git.

  1. Usa git log para determinar qué confirmación expuesta en el error de inserción apareció primero en el historial.
  2. Inicia una fusión mediante cambio de base interactiva con git rebase -i <commit-id>~1. es el identificador de la confirmación del paso 1.
  3. Identifica la confirmación para editar cambiando pick a edit en la primera línea del texto que aparece en el editor.
  4. Quita el secreto del código.
  5. Confirma el cambio con git commit --amend.
  6. Ejecuta git rebase --continue para finalizar la fusión mediante cambio de base.

Resolución de una confirmación bloqueada en la interfaz de usuario web

Cuando se usa la interfaz de usuario web para intentar confirmar un secreto admitido en un repositorio u organización con el examen de secretos como protección de inserción habilitada, GitHub bloqueará la confirmación.

Verás un banner en la parte superior de la página con información sobre la ubicación del secreto, y el secreto también estará subrayado en el archivo para que puedas encontrarlo fácilmente.

Para resolver una confirmación bloqueada en la interfaz de usuario web, debes quitar el secreto del archivo o usar la lista desplegable Omitir protección para permitir el secreto. Para más información sobre cómo omitir la protección de inserción de la interfaz de usuario web, consulta "Protección de inserciones con análisis de secretos".

Si confirmas que un secreto es real, debes quitar el secreto del archivo. Una vez quitado el secreto, el banner de la parte superior de la página cambiará e indicará que ahora puedes confirmar los cambios.