Nota: Secret scanning como inserción de protección se encuentra actualmente en versión beta y está sujeta a cambios.
Acerca de la protección de inserción para secretos
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, 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. Secret scanning también puede comprobar las inserciones para patrones personalizados. Para obtener más información, consulta "Definición de patrones personalizados para el análisis 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 Seguridad del repositorio en el estado descrito en la tabla siguiente.
- 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, 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ón | Comportamiento de alerta |
---|---|
Se usa en pruebas | GitHub crea una alerta cerrada, resuelta como "se usa en pruebas" |
Es un falso positivo | GitHub crea una alerta cerrada, resuelta como "falso positivo" |
Lo arreglaré más tarde | GitHub crea una alerta abierta |
Para obtener más información sobre los secretos y proveedores de servicios admitidos para la protección de inserción, consulta "Patrones de Secret scanning".
Habilitación de secret scanning como protección de inserción
Para poder usar el secret scanning como protección de inserción, la empresa,la organización, o el repositorio debe tener habilitados tanto GitHub Advanced Security como el secret scanning. Para obtener más información, consulta "Administración de la configuración de seguridad y análisis de la empresa," "Administración de la configuración de seguridad y análisis de la organización", "Administración de la configuración de seguridad y análisis del repositorio" y "Acerca de GitHub Advanced Security".
Los propietarios de la organización, los administradores de seguridad y los administradores del repositorio pueden habilitar la protección de inserción para secret scanning mediante la interfaz de usuario y la API. Para más información, vea "Repositorios" y expanda la sección "Propiedades del objeto security_and_analysis
" en la documentación de la API REST.
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 obtener más información, consulta "Habilitar o deshabilitar características de seguridad para una empresa" en la documentación de la API de REST.
Habilitar el secret scanning como protección de inserción de la empresa
-
En la esquina superior derecha de GitHub.com, haga clic en la imagen de perfil y después en Your enterprises.
-
En la lista de empresas, da clic en aquella que quieras ver.
-
En la barra lateral de la cuenta de empresa, haz clic en Configuración.
-
En la barra lateral de la izquierda, haz clic en Seguridad y análisis del código.
-
En "Secret scanning", en "Push protection" (Protección de inserciones), haga clic en Enable all (Habilitar todo).
-
Opcionalmente, haz clic en "Habilitar automáticamente para repositorios agregados a secret scanning.".
-
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.
Habilitación de secret scanning como protección de inserción para una organización
-
En GitHub.com, ve a la página principal de la organización. 1. Debajo del nombre de la organización, haga clic en Settings.
-
En la sección "Seguridad" de la barra lateral, haga clic en Análisis y seguridad del código.
-
Debajo de "Seguridad y análisis de código", encuentra "GitHub Advanced Security". 1. En "Secret scanning", en "Push protection" (Protección de inserciones), haga clic en Enable all (Habilitar todo).
-
Opcionalmente, haz clic en "Habilitar automáticamente para repositorios agregados a secret scanning.".
-
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.
Habilitación de secret scanning como protección de inserción para un repositorio
- En GitHub.com, navega a la página principal del repositorio. 1. Debajo del nombre del repositorio, haz clic en Configuración.
- En la sección "Seguridad" de la barra lateral, haz clic en Análisis y seguridad del código.
- Debajo de "Seguridad y análisis de código", encuentra "GitHub Advanced Security". 1. En "Secret scanning", en "Push protection" (Protección de inserciones), haga clic en Enable (Habilitar).
Uso del examen de secretos como protección de inserción de 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.
En la línea de comandos se mostrarán hasta cinco secretos detectados a la vez. Si ya se ha detectado un secreto determinado en el repositorio y ya existe una alerta, GitHub no bloqueará ese secreto.
Los administradores de la organización pueden proporcionar un vínculo personalizado que se mostrará cuando se bloquee una inserción. 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.
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. Para obtener más información sobre cómo corregir secretos bloqueados, consulta "Inserción de una rama bloqueada por la protección de inserción".
Si confirma que un secreto es real y que pretende corregirlo más adelante, debe intentar corregirlo lo antes posible. Por ejemplo, podría revocar el secreto y quitarlo del historial de confirmaciones del repositorio. Los secretos reales que se han expuesto deben revocarse para evitar el acceso no autorizado. Puedes considerar la posibilidad de rotar primero el secreto antes de revocarlo. Para más información, vea "Eliminación de datos confidenciales de un repositorio".
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.
Permiso para insertar un secreto bloqueado
Si GitHub bloquea un secreto que cree que es seguro insertar, puede permitirlo y especificar el motivo por el que se debe permitir.
Cuando permites la inserción de un secreto, se crea una alerta en la pestaña Seguridad. GitHub cierra la alerta y no envía una notificación si especificas que el secreto es un falso positivo o que solo se usa en las pruebas. Si especificas que el secreto es real y lo corregirás más adelante, GitHub mantiene abierta la alerta de seguridad y envía notificaciones al creador de la confirmación, así como a los administradores del repositorio. Para obtener más información, vea «Administración de alertas del examen de secretos».
Cuando un colaborador omite un bloque de protección de inserción para un secreto, GitHub también envía una alerta por correo electrónico a los propietarios de la organización, los administradores de seguridad y los administradores de repositorios que han optado por recibir notificaciones por correo electrónico.
- Visite la dirección URL devuelta por GitHub cuando se bloquee la inserción.
2. Elija la opción que mejor describa por qué debería poder insertar el secreto.- Si el secreto solo se usa en pruebas y no supone ninguna amenaza, haga clic en Se usa en las pruebas.
- Si la cadena detectada no es un secreto, haga clic en Es un falso positivo.
- Si el secreto es real, pero piensa corregirlo más adelante, haga clic en Lo corregiré más adelante.
- Haga clic en Permitirme insertar este secreto.
- Vuelva a intentar la inserción en la línea de comandos en un plazo de tres horas. Si no ha realizado la inserción en un plazo de tres horas, tendrá que repetir este proceso.
Uso del examen de secretos como protección de inserción de 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.
GitHub solo mostrará un secreto detectado a la vez en la interfaz de usuario web. Si ya se ha detectado un secreto determinado en el repositorio y ya existe una alerta, GitHub no bloqueará ese secreto.
Los administradores de la organización pueden proporcionar un vínculo personalizado que se mostrará cuando se bloquee una inserción. Este vínculo personalizado puede incluir recursos y consejos específicos de tu organización. Por ejemplo, el vínculo personalizado puede apuntar a un archivo Léame con información sobre el almacén de secretos de la organización, a qué equipos y personas se deben escalar las preguntas, o a la directiva aprobada de la organización para trabajar con secretos y reescribir el historial de confirmaciones.
Puedes quitar el secreto del archivo mediante la interfaz de usuario web. Una vez quitado el secreto, el banner de la parte superior de la página cambiará e indicará que ahora puedes confirmar los cambios.
Omitir la protección de inserción para un secreto
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. Para obtener más información sobre cómo corregir secretos bloqueados, consulta "Inserción de una rama bloqueada por la protección de inserción".
Si confirma que un secreto es real y que pretende corregirlo más adelante, debe intentar corregirlo lo antes posible. Para más información, vea "Eliminación de datos confidenciales de un repositorio".
Si GitHub bloquea un secreto que cree que es seguro insertar, puede permitirlo y especificar el motivo por el que se debe permitir.
Cuando permites la inserción de un secreto, se crea una alerta en la pestaña Seguridad. GitHub cierra la alerta y no envía una notificación si especificas que el secreto es un falso positivo o que solo se usa en las pruebas. Si especificas que el secreto es real y lo corregirás más adelante, GitHub mantiene abierta la alerta de seguridad y envía notificaciones al creador de la confirmación, así como a los administradores del repositorio. Para obtener más información, vea «Administración de alertas del examen de secretos».
Cuando un colaborador omite un bloque de protección de inserción para un secreto, GitHub también envía una alerta por correo electrónico a los propietarios de la organización, los administradores de seguridad y los administradores de repositorios que han optado por recibir notificaciones por correo electrónico.
Si confirma que un secreto es real y que pretende corregirlo más adelante, debe intentar corregirlo lo antes posible.
-
En el banner que aparece en la parte superior de la página cuando GitHub bloquea la confirmación, haz clic en Omitir protección.
-
Elija la opción que mejor describa por qué debería poder insertar el secreto.
- Si el secreto solo se usa en pruebas y no supone ninguna amenaza, haga clic en Se usa en las pruebas.
- Si la cadena detectada no es un secreto, haga clic en Es un falso positivo.
- Si el secreto es real, pero piensa corregirlo más adelante, haga clic en Lo corregiré más adelante.
-
Haz clic en Permitir secreto.