¿Qué es GitHub Advanced Security?

Completado

GitHub tiene muchas características que le ayudan a mejorar y mantener la calidad del código. Algunas de estas características se incluyen en todos los planes, como el gráfico de dependencias y las alertas de Dependabot. Otros solo se ejecutan en modo de funcionalidad limitada en repositorios públicos. También hay otros que requieren una licencia de Seguridad avanzada de GitHub para ejecutarse en repositorios privados.

En esta unidad, obtendrá más información sobre Seguridad avanzada de GitHub y descubrirá el aspecto de un proyecto con Seguridad avanzada de GitHub.

Características de Seguridad avanzada de GitHub

En la tabla siguiente se resume la disponibilidad de las características de Seguridad avanzada de GitHub en repositorios públicos y privados.

Característica Repositorio público Repositorio privado sin Advanced Security Repositorio privado con Advanced Security
Examen de código No
Análisis de secretos Sí (solo funcionalidad limitada) No
Revisión de dependencias No
Introducción a la seguridad No No

Como se describe en la tabla anterior, todas las características de Seguridad avanzada de GitHub, excepto la información general de seguridad, están habilitadas de forma predeterminada para todos los repositorios públicos en GitHub.com. Para acceder a estas características en repositorios privados e internos, necesita una cuenta empresarial de GitHub con una licencia de Seguridad avanzada de GitHub.

Una licencia de Seguridad avanzada de GitHub proporciona estas características para repositorios privados e internos:

  • Examen de código: detecta automáticamente vulnerabilidades comunes y errores de codificación.
  • Análisis de secretos: Recibe alertas cuando se registren secretos o claves, excluye los archivos del análisis y define hasta 100 patrones personalizados.
  • Revisión de dependencias: muestra el efecto completo de los cambios en las dependencias y ve los detalles de las versiones vulnerables antes de combinar una solicitud de incorporación de cambios.
  • Información general de seguridad: revisa la configuración de seguridad y las alertas de una organización e identifica los repositorios en mayor riesgo.

Seguridad avanzada de GitHub en el ciclo de vida de desarrollo de software

¿Qué diferencia hacen las características de Seguridad avanzada de GitHub en el ciclo de vida de desarrollo de software? Echemos un vistazo primero a un escenario de seguridad básico.

Diagrama que representa las distintas fases del ciclo de vida de desarrollo de software en un enfoque de seguridad tradicional.

En este ejemplo se muestra una seguridad tradicional como enfoque de puerta , en la que se realiza una sola prueba de seguridad o una serie de pruebas de seguridad durante la fase de control de calidad. En este escenario, la seguridad suele acabar siendo un cuello de botella para enviar el software. Esta situación es lo que la empresa quiere corregir al cambiar la seguridad.

Ahora, echemos un vistazo al mismo ciclo de vida de desarrollo de software con GitHub Advanced Security.

Diagrama que representa las distintas fases del ciclo de vida de desarrollo de software con GitHub Advanced Security.

En este escenario, la seguridad se configura desde el principio a través de las directivas de seguridad en la fase de configuración del proyecto. Los desarrolladores reciben alertas de posibles problemas de seguridad en cada paso del proceso de desarrollo:

  • Examen de código: examina cada confirmación y combinación para detectar posibles vulnerabilidades y errores de codificación.
  • Análisis de secretos: Examina cada confirmación y combinación de tokens y claves privadas que se han confirmado accidentalmente.
  • Revisión de dependencias: realiza un seguimiento de los cambios de dependencia del proyecto y su efecto en la seguridad del proyecto. Compara los archivos manifiesto del repositorio con las bases de datos de vulnerabilidades conocidas en cada pull request.

Además, la información general de seguridad ofrece a los administradores una vista general del estado de seguridad del proyecto. Esta vista permite a los administradores identificar repositorios problemáticos que requieren intervención.

La seguridad del código se revisa varias veces antes de llegar a la fase de garantía de calidad, por lo que hay menos posibilidades de un cuello de botella justo antes del envío y menos deuda técnica.