Skip to main content

Exclusión de carpetas y archivos del análisis de secretos

Puede personalizar secret scanning para cerrar automáticamente las alertas de secretos que se encuentran en directorios o archivos específicos mediante la configuración de un secret_scanning.yml archivo en el repositorio.

¿Quién puede utilizar esta característica?

Propietarios de repositorios, propietarios de organizaciones, administradores de seguridad y usuarios con el rol de administrador

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 simuladas que podrían activar numerosas alertas falsas en el proceso de triage.

Puede configurar un archivo secret_scanning.yml para cerrar automáticamente las alertas detectadas en directorios específicos de secret scanning y excluir estos directorios de la protección de inserción. Estas alertas se cierran como "ignoradas por la configuración".

Excluir directorios de alertas de escaneo de secretos para usuarios

  1. En GitHub, navegue hasta la página principal del repositorio.

  2. Encima de la lista de archivos, selecciona el menú desplegable Add file y después haz clic en Create new file.

    Como alternativa, puedes hacer clic en en la vista de árbol de archivos a la izquierda.

    Captura de pantalla de la página principal de un repositorio que resalta el icono "Agregar archivo" y el icono "signo más", descrito anteriormente, con un contorno naranja.

  3. En el campo correspondiente al nombre de archivo, escribe "github/secret_scanning.yml".

  4. En Editar nuevo archivo, escriba paths-ignore: seguido de las rutas de acceso que desea excluir de secret scanning.

    YAML
    paths-ignore:
      - "docs/**"
    

    Esto indica a secret scanning que cierre automáticamente las alertas para 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"
    

    Nota:

    • Si hay más de 1.000 entradas en paths-ignore, secret scanning solo excluirá los 1.000 primeros directorios de los análisis.
    • Si secret_scanning.yml es mayor de 1 MB, secret scanning omitirá todo el archivo.

Comprobación de que la carpeta está excluida de secret scanning

  1. Abra un archivo de un directorio que haya excluido del análisis de secretos.

  2. Inserta un secreto invalidado previamente o un secreto de prueba.

  3. Confirme el cambio.

  4. En GitHub, navegue hasta la página principal del repositorio.

  5. En el nombre del repositorio, haga clic en la Security and quality pestaña . Si no puede ver la pestaña " Security and quality", seleccione el menú desplegable y, a continuación, haga clic en Security and quality. No debería haber nuevas alertas abiertas para el secreto que acaba 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.