Skip to main content

Configuración del examen de secretos para los repositorios

Puedes configurar la forma en que GitHub escanea tus repositorios en busca de secretos filtrados y genera alertas.

¿Quién puede utilizar esta característica?

People with admin permissions to a repository can enable secret scanning for the repository.

Secret scanning alerts for partners runs automatically on public repositories and public npm packages to notify service providers about leaked secrets on GitHub.com.

Secret scanning alerts for users are available for free on all public repositories. Organizations using GitHub Enterprise Cloud with a license for GitHub Advanced Security can also enable secret scanning alerts for users on their private and internal repositories. Additionally, secret scanning alerts for users are available and in beta on user-owned repositories for GitHub Enterprise Cloud with Enterprise Managed Users. For more information, see "About secret scanning" and "About GitHub Advanced Security."

For information about how you can try GitHub Advanced Security for free, see "Setting up a trial of GitHub Advanced Security."

Enabling alertas de examen de secretos para usuarios

Puedes habilitar alertas de examen de secretos para usuarios para cualquier repositorio repositorio que es propiedad de una organización. Una vez habilitado, El secret scanning escanea cualquier secreto en el total de tu historial de Git en todas las ramas presentes de tu repositorio de GitHub. Además, secret scanning examina:

  • Descripciones y comentarios en problemas
  • Títulos, descripciones y comentarios, en problemas históricos abiertos y cerrados. Se envía una notificación al asociado correspondiente cuando se detecta un patrón de asociado histórico.
  • Títulos, descripciones y comentarios de la solicitud de cambios
  • Títulos, descripciones y comentarios en GitHub Discussions

Nota: la examinación de contenido en solicitud de cambios y GitHub Command Palette se encuentra actualmente en versión beta y está sujeto a cambios.

También puedes habilitar secret scanning para varios repositorios de una organización al mismo tiempo. Para obtener más información, vea «Protección de la organización».

Nota: Si tu organización es propiedad de una cuenta de empresa, un propietario de la empresa también puede habilitar secret scanning en el nivel empresarial. Para obtener más información, vea «Administración de las características de GitHub Advanced Security para la empresa».

Un administrador del repositorio puede optar por deshabilitar secret scanning para un repositorio en cualquier momento. Para obtener más información, vea «Administración de la configuración de seguridad y análisis para el repositorio».

  1. En GitHub.com, 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. Si Advanced Security todavía no está habilitado para el repositorio, a la derecha de "GitHub Advanced Security", haz clic en Habilitar.

  5. Revisa el impacto de habilitar la Advanced Security y luego haz clic en Habilitar la GitHub Advanced Security para este repositorio.

  6. Cuando habilitas la Advanced Security, puede que el secret scanning se habilite en el repositorio debido a la configuración de la organización. Si "Secret scanning" se muestra con un botón Habilitar, debes habilitar secret scanning haciendo clic en Habilitar. Si ves un botón Deshabilitar, secret scanning ya está habilitado.

    Captura de pantalla de la sección "Secret scanning" de la página "Seguridad y análisis del código", con el botón "Habilitar" resaltado en naranja oscuro.

  7. Opcionalmente, si desea habilitar la detección de patrones que no son de proveedor, haga clic en Examinar patrones que no son de proveedor. Para más información sobre patrones que no son de proveedor, vea "Sober alertas de usuario."

    Nota: La detección de patrones que no son de proveedor está actualmente en versión beta y está sujeta a cambios.

  8. Opcionalmente, si quieres habilitar la protección de los envíos de cambios, haz clic en Habilitar a la derecha de "Protección de envíos de cambios". Al habilitar la protección de inserción para la organización o el repositorio, 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 obtener más información, consulta "Protección contra el envío de cambios para repositorios y organizaciones".

    Captura de pantalla de la sección "Secret scanning". El botón "Habilitar" aparece resaltado en un contorno naranja oscuro en la sección “Insertar protección”.

Excluir directorios de alertas de examen de secretos para usuarios

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. Por ejemplo, puedes excluir directorios que contengan pruebas o contenido generado aleatoriamente.

  1. En GitHub.com, navega a la página principal del repositorio.

  2. 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.

    Captura de pantalla de la página principal de un repositorio. Encima de la lista de archivos, un botón con la etiqueta "Agregar archivo", aparece resaltado en naranja oscuro. En la vista de árbol de archivos del repositorio, un botón con el icono de signo más, también aparece resaltado en naranja oscuro.

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

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

    paths-ignore:
      - "foo/bar/*.js"
    

    Puede 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".

    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.

También puedes ignorar alertas individuales de secret scanning. Para obtener más información, vea «Administración de alertas del examen de secretos».

Información adicional