{"meta":{"title":"Cómo reconoce el gráfico de dependencias las dependencias","intro":"El grafo de dependencias analiza automáticamente los archivos de manifiesto. Puede enviar datos para las dependencias que no se pueden detectar automáticamente.","product":"Seguridad y calidad del código","breadcrumbs":[{"href":"/es/enterprise-server@3.20/code-security","title":"Seguridad y calidad del código"},{"href":"/es/enterprise-server@3.20/code-security/concepts","title":"Concepts"},{"href":"/es/enterprise-server@3.20/code-security/concepts/supply-chain-security","title":"Seguridad de la cadena de suministro"},{"href":"/es/enterprise-server@3.20/code-security/concepts/supply-chain-security/dependency-graph-data","title":"Datos del grafo de dependencias"}],"documentType":"article"},"body":"# Cómo reconoce el gráfico de dependencias las dependencias\n\nEl grafo de dependencias analiza automáticamente los archivos de manifiesto. Puede enviar datos para las dependencias que no se pueden detectar automáticamente.\n\nEl gráfico de dependencias puede identificar las dependencias del proyecto mediante los métodos siguientes.\n\n| Método                           | Cómo funciona                                                     |\n| -------------------------------- | ----------------------------------------------------------------- |\n| **Análisis estático**            | Analiza los archivos de manifiesto y de bloqueo en tu repositorio |\n|                                  |                                                                   |\n|                                  |                                                                   |\n| **API de envío de dependencias** | Acepta los datos de dependencia que envíe mediante programación.  |\n\nUna vez que las dependencias están en el gráfico, puede recibir Dependabot alerts y Dependabot security updates para cualquier vulnerabilidad conocida.\n\n## Análisis estático\n\nAl habilitar el gráfico de dependencias, GitHub examina el repositorio para ver los archivos de manifiesto admitidos y analiza el nombre y la versión de cada paquete. El gráfico se actualiza al cambiar un manifiesto compatible o un archivo de bloqueo en la rama.\n\nEl análisis estático puede identificar:\n\n* **Dependencias directas definidas** explícitamente en un manifiesto o archivo de bloqueo\n* **Dependencias indirectas**: dependencias de estas dependencias directas, también denominadas \"dependencias transitivas\", pero solo si se definen en un manifiesto o archivo de bloqueo, no si se resuelven en tiempo de compilación.\n\nPara obtener el gráfico más fiable, debe utilizar archivos de bloqueo (o su equivalente), ya que estos definen exactamente qué versiones de las dependencias directas e indirectas está utilizando actualmente. Los archivos de bloqueo también garantizan que todos los colaboradores del repositorio usen las mismas versiones, lo que le permitirá probar y depurar código.\n\n## El API de envío de dependencias\n\nPuede llamar a API de envío de dependencias en su propio script o flujo de trabajo. Esto es útil si:\n\n* Debe enviar dependencias transitivas que no se puedan detectar desde archivos de bloqueo.\n* Debe crear lógica personalizada o usar un sistema de CI/CD externo.\n\nLas dependencias se envían a API de envío de dependencias en forma de instantánea. Se trata de una lista de dependencias asociadas a un SHA de confirmación y otros metadatos, que reflejan el estado actual de su repositorio.\n\nSi llama a la API en un GitHub Actions flujo de trabajo, puede usar una acción realizada previamente para el ecosistema que recopila automáticamente las dependencias y las envía a la API. De lo contrario, puede escribir su propia acción o llamar a la API desde un sistema externo.\n\nLas dependencias enviadas *no* están disponibles en la información de dependencias de la organización.\n\nPara más información, consulta [Uso de la Dependency submission API](/es/enterprise-server@3.20/code-security/how-tos/secure-your-supply-chain/secure-your-dependencies/use-dependency-submission-api).\n\n## Establecimiento de prioridades\n\nUn repositorio puede utilizar múltiples métodos para la presentación de dependencias, lo que puede hacer que el mismo manifiesto de paquete se analice varias veces, potencialmente con resultados diferentes de cada análisis. El gráfico de dependencias usa lógica de desduplicación para analizar las salidas y priorizar la información más precisa para cada archivo de manifiesto.\n\nEl gráfico de dependencias muestra solo una instancia de cada archivo de manifiesto mediante las siguientes reglas de precedencia.\n\n1. **Los envíos de usuario** tienen la prioridad más alta, ya que normalmente se crean durante las compilaciones de artefactos que tienen la información más completa.\n   * Si hay varias instantáneas manuales de diferentes detectores, se ordenan alfabéticamente por correlación y la primera usada.\n   * Si hay dos correladores con el mismo detector, se combinan las dependencias resueltas. Para obtener más información sobre los correladores y detectores, consulte [Puntos de conexión de la API de REST para el envío de dependencias](/es/enterprise-server@3.20/rest/dependency-graph/dependency-submission).\n2. **Los envíos automáticos** tienen la siguiente prioridad, ya que también se crean durante las compilaciones de artefactos, pero los usuarios no los envían.\n3. **Los resultados de análisis estáticos** se usan cuando no hay otros datos disponibles."}