Acerca de secret scanning
Secret scanning detecta automáticamente tokens o credenciales que se han insertado en un repositorio. Puedes ver alertas para los secretos que GitHub encuentre en el código, en la pestaña Seguridad del repositorio, y así saber qué tokens o credenciales están en peligro.Para obtener más información, consulta "Acerca de las alertas de examen de secretos."
Acerca de la exclusión de directorios de examen de secretos
Es posible que tengas un motivo para confirmar un secreto en un repositorio, como cuando quieras proporcionar un secreto falso en la documentación o en una aplicación de ejemplo. En estos escenarios, puedes ignorar rápidamente la alerta y documentar los motivos. Sin embargo, puede haber casos en los que quieras omitir un directorio por completo para evitar crear alertas de falsos positivos a gran escala. Por ejemplo, si tienes una aplicación monolítica con varias integraciones que contienen un archivo de claves ficticias que podrían activar numerosas alertas falsas en la evaluación de prioridades.
Puedes configurar un archivo secret_scanning.yml
para excluir directorios de secret scanning, incluidos los casos en los que usas protección de inserción.
Excluir directorios de examen de secretos
-
En tu instancia de GitHub Enterprise Server, navega a la página principal del repositorio.
-
Sobre la lista de archivos, selecciona el menú desplegable Agregar archivo y, a continuación, haz clic en Crear nuevo archivo.
Como alternativa, puedes hacer clic en en la vista de árbol de archivos a la izquierda.
-
En el campo correspondiente al nombre de archivo, escribe "github/secret_scanning.yml".
-
En Editar nuevo archivo, escribe
paths-ignore:
seguido por las rutas de acceso que quieras excluir de secret scanning.YAML paths-ignore: - "docs/**"
paths-ignore: - "docs/**"
Esto indica a secret scanning que omita todo lo que haya en el directorio
docs
. Puedes usar este archivo de ejemplo como plantilla para agregar los archivos y las carpetas que quieras excluir de tus propios repositorios.También puedes usar caracteres especiales, como
*
, para filtrar las rutas. Para obtener más información sobre los patrones de filtro, consulta "Sintaxis de flujo de trabajo para Acciones de GitHub".YAML paths-ignore: - "foo/bar/*.js"
paths-ignore: - "foo/bar/*.js"
Notas:
- Si hay más de 1000 entradas en
paths-ignore
, secret scanning solo excluirá los primeros 1000 directorios de los análisis. - Si
secret_scanning.yml
es mayor que 1 MB, secret scanning ignorará todo el archivo.
- Si hay más de 1000 entradas en
Comprobación de que la carpeta está excluida de secret scanning
- Abre un archivo de un directorio que hayas excluido del análisis de secretos.
- Pega un secreto invalidado previamente o un secreto de prueba.
- Confirme el cambio.
- En tu instancia de GitHub Enterprise Server, navega a la página principal del repositorio.
- En el nombre del repositorio, haz clic en Seguridad. Si no puedes ver la pestaña "Seguridad", selecciona el menú desplegable y, a continuación, haz clic en Seguridad. No deberían aparecer nuevas alertas para el secreto que acabas de introducir en el archivo.
procedimientos recomendados
Algunos de los procedimientos recomendados son los siguientes:
- Minimizar el número de directorios excluidos y ser lo más preciso posible al definir exclusiones. Esto garantiza que las instrucciones sean lo más claras posible y que las exclusiones funcionen según lo previsto.
- Explicar por qué se excluye un archivo o carpeta determinado en un comentario en el archivo
secret_scanning.yml
. Al igual que con el código normal, el uso de comentarios aclara tu intención, lo que facilita a otros usuarios comprender el comportamiento deseado. - Revisar el archivo
secret_scanning.yml
de forma periódica. Es posible que algunas exclusiones ya no se apliquen con el tiempo, y es recomendable mantener el archivo limpio y actualizado. El uso de comentarios, como se indicó anteriormente, puede ayudar con esto. - Informar al equipo de seguridad de qué archivos y carpetas has excluido y por qué. Una buena comunicación es fundamental para garantizar que todos los usuarios estén al tanto y comprendan por qué se excluyen carpetas o archivos específicos.