Skip to main content
Frecuentemente publicamos actualizaciones de nuestra documentación. Es posible que la traducción de esta página esté en curso. Para conocer la información más actual, visita la documentación en inglés. Si existe un problema con las traducciones en esta página, por favor infórmanos.

Acerca de la seguridad de la cadena de suministro

GitHub helps you secure your supply chain, from understanding the dependencies in your environment, to knowing about vulnerabilities in those dependencies, and patching them.

About supply chain security at GitHub

With the accelerated use of open source, most projects depend on hundreds of open-source dependencies. This poses a security problem: what if the dependencies you're using are vulnerable? You could be putting your users at risk of a supply chain attack. One of the most important things you can do to protect your supply chain is to patch your vulnerable dependencies and replace any malware.

You add dependencies directly to your supply chain when you specify them in a manifest file or a lockfile. Dependencies can also be included transitively, that is, even if you don’t specify a particular dependency, but a dependency of yours uses it, then you’re also dependent on that dependency.

GitHub ofrece un rango de características que te ayudan a entender las dependencias en tu ambiente, conocer las vulnerabilidades en dichas dependencias y parcharlas.

The supply chain features on GitHub are:

  • Gráfica de dependencias
  • Dependency review
  • Las alertas del dependabot
  • Actualizaciones del dependabot
    • Actualizaciones de seguridad del dependabot
    • Actualizaciones de versión del dependabot

The dependency graph is central to supply chain security. The dependency graph identifies all upstream dependencies and public downstream dependents of a repository or package. You can see your repository’s dependencies and some of their properties, like vulnerability information, on the dependency graph for the repository.

Other supply chain features on GitHub rely on the information provided by the dependency graph.

  • Dependency review uses the dependency graph to identify dependency changes and help you understand the security impact of these changes when you review pull requests.
  • Dependabot cross-references dependency data provided by the dependency graph with the list of advisories published in the GitHub Advisory Database, scans your dependencies and generates Las alertas del dependabot when a potential vulnerability or malware is detected.
  • Actualizaciones de seguridad del dependabot use the dependency graph and Las alertas del dependabot to help you update dependencies with known vulnerabilities in your repository.

Actualizaciones de versión del dependabot don't use the dependency graph and rely on the semantic versioning of dependencies instead. Actualizaciones de versión del dependabot help you keep your dependencies updated, even when they don’t have any vulnerabilities.

For best practice guides on end-to-end supply chain security including the protection of personal accounts, code, and build processes, see "Securing your end-to-end supply chain."

Feature overview

What is the dependency graph

To generate the dependency graph, GitHub looks at a repository’s explicit dependencies declared in the manifest and lockfiles. When enabled, the dependency graph automatically parses all known package manifest files in the repository, and uses this to construct a graph with known dependency names and versions.

  • The dependency graph includes information on your direct dependencies and transitive dependencies.
  • The dependency graph is automatically updated when you push a commit to GitHub that changes or adds a supported manifest or lock file to the default branch, and when anyone pushes a change to the repository of one of your dependencies.
  • You can see the dependency graph by opening the repository's main page on GitHub, and navigating to the Insights tab.

Additionally, you can use the Dependency submission API (beta) to submit dependencies from the package manager or ecosystem of your choice, even if the ecosystem is not supported by dependency graph for manifest or lock file analysis. The dependency graph will display the submitted dependencies grouped by ecosystem, but separately from the dependencies parsed from manifest or lock files. For more information on the Dependency submission API, see "Using the Dependency submission API."

For more information about the dependency graph, see "About the dependency graph."

What is dependency review

Dependency review helps reviewers and contributors understand dependency changes and their security impact in every pull request.

  • Dependency review tells you which dependencies were added, removed, or updated, in a pull request. You can use the release dates, popularity of dependencies, and vulnerability information to help you decide whether to accept the change.
  • You can see the dependency review for a pull request by showing the rich diff on the Files Changed tab.

Para obtener más información sobre la revisión de dependencias, consulta la sección "Acerca de la revisión de dependencias".

What is Dependabot

Dependabot mantiene actualizadas tus dependencias informándote de cualquier vulnerabilidad de seguridad en ellas, y abre solicitudes de cambios automáticamente para actualizarlas a la siguiente versión segura disponible cuando se activa una alerta del Dependabot o a la versión más actual cuando se publica un lanzamiento.

The term "Dependabot" encompasses the following features:

  • Las alertas del dependabot—Displayed notification on the Security tab for the repository, and in the repository's dependency graph. La alerta incluye un enlace al archivo afectado en el proyecto e información acerca de la versión arreglada.
  • Actualizaciones del dependabot:
    • Actualizaciones de seguridad del dependabot—Triggered updates to upgrade your dependencies to a secure version when an alert is triggered.
    • Actualizaciones de versión del dependabot—Scheduled updates to keep your dependencies up to date with the latest version.

What are Dependabot alerts

Las alertas del dependabot highlight repositories affected by a newly discovered vulnerability based on the dependency graph and the GitHub Advisory Database, which contains advisories for known vulnerabilities and malware.

  • Dependabot performs a scan to detect insecure dependencies and sends Las alertas del dependabot when:

    • A new advisory is added to the GitHub Advisory Database.
    • The dependency graph for the repository changes.
  • Las alertas del dependabot are displayed on the Security tab for the repository and in the repository's dependency graph. La alerta incluye un enlace al archivo afectado en el proyecto einformación sobre una versión corregida.

Para obtener más información, consulta la sección "Acerca deLas alertas del dependabot".

What are Dependabot updates

There are two types of Actualizaciones del dependabot: Dependabot security updates and version updates. Dependabot generates automatic pull requests to update your dependencies in both cases, but there are several differences.

Actualizaciones de seguridad del dependabot:

  • Triggered by a Dependabot alert
  • Update dependencies to the minimum version that resolves a known vulnerability
  • Supported for ecosystems the dependency graph supports
  • Does not require a configuration file, but you can use one to override the default behavior

Actualizaciones de versión del dependabot:

  • Requires a configuration file
  • Run on a schedule you configure
  • Update dependencies to the latest version that matches the configuration
  • Supported for a different group of ecosystems

Para obtener más información sobre las Actualizaciones del dependabot, consulta las secciones "Acerca de las Actualizaciones de seguridad del dependabot" y "Acerca de las Actualizaciones de versión del dependabot".

Feature availability

Public repositories:

  • Dependency graph—enabled by default and cannot be disabled.
  • Dependency review—enabled by default and cannot be disabled.
  • Las alertas del dependabot—no se habilita predeterminadamente. GitHub detects insecure dependencies and displays information in the dependency graph, but does not generate Las alertas del dependabot by default. Repository owners or people with admin access can enable Las alertas del dependabot. También puedes habilitar o inhabilitar las alertas del Dependabot para todos los repositorios que pertenezcan a tu cuenta de usuario u organización. Para obtener más información, consulta la sección "Administrar los ajustes de análisis y seguridad para tu cuenta de usuario" o "Administrar el análisis y seguridad para tu organización".

Private repositories:

  • Dependency graph—not enabled by default. The feature can be enabled by repository administrators. Para obtener más información, consulta la sección "Explorar las dependencias de un repositorio".

  • Dependency review—available in private repositories owned by organizations that use Nube de GitHub Enterprise and have a license for GitHub Advanced Security. Para obtener más información, consulta la documentación de Nube de GitHub Enterprise.

  • Las alertas del dependabot—no se habilita predeterminadamente. Los propietarios de los repositorios privados o las personas con acceso administrativo puede habilitar las Las alertas del dependabot si habilitan la gráfica de dependencias y las Las alertas del dependabot para sus repositorios. También puedes habilitar o inhabilitar las alertas del Dependabot para todos los repositorios que pertenezcan a tu cuenta de usuario u organización. Para obtener más información, consulta la sección "Administrar los ajustes de análisis y seguridad para tu cuenta de usuario" o "Administrar el análisis y seguridad para tu organización".

Any repository type:

  • Actualizaciones de seguridad del dependabot—no se habilita predeterminadamente. Puedes habilitar las Actualizaciones de seguridad del dependabot para cualquier repositorio que utilice Las alertas del dependabot y la gráfica de dependencias. Para obtener más información sobre cómo habilitar las actualizaciones de seguridad, consulta la sección "Configurar las Actualizaciones de seguridad del dependabot".
  • Actualizaciones de versión del dependabot—no se habilita predeterminadamente. Las personas con permisos de escritura en un repositorio pueden habilitar las Actualizaciones de versión del dependabot. Para obtener más información sobre cómo habilitar las actualizaciones de versión, consulta la sección "Configurar las Actualizaciones de versión del dependabot".