Skip to main content

Error: 403 "Recurso no accesible por la integración"

Este error se puede ver en las solicitudes de incorporación de cambios creadas por Dependabot y se puede resolver de dos maneras diferentes.

Acerca de este error

403: Resource not accessible by integration

Es posible que veas este error al usar Dependabot.

Dependabot se considera que no es de confianza cuando activa una ejecución de flujo de trabajo, en caso de que este se ejecute con ámbitos de solo lectura.

Confirmación de la causa del error

Si usas Dependabot en el flujo de trabajo de code scanning, investiga el ámbito que usa.

Para cargar resultados de code scanning en una rama normalmente se necesita el ámbito security_events: write. Pero code scanning siempre permite que se carguen los resultados cuando el evento pull_request desencadena la ejecución de la acción. Por este motivo, para las ramas de Dependabot, se recomienda usar el evento pull_request en lugar del evento push.

Solución del problema

Puedes llevar a cabo la ejecución en inserciones en la rama predeterminada y cualquier otra rama de ejecución prolongada importante, así como solicitudes de incorporación de cambios abiertas respecto a este conjunto de ramas:

on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main

De forma alternativa, puedes llevar a cabo la ejecución en todas las inserciones a excepción de las ramas de Dependabot:

on:
  push:
    branches-ignore:
      - 'dependabot/**'
  pull_request:

Para más información sobre la edición del archivo de flujo de trabajo CodeQL, consulta "Personalizar la configuración avanzado de para el análisis de código".

Error persistente de análisis en la rama predeterminada

Si el Flujo de trabajo de análisis de CodeQL aún falla en una confirmación que se hizo en una rama predeterminada, debes verificar:

  • si el Dependabot fue el autor de la confirmación
  • si la solicitud de incorporación de cambios que incluye la confirmación se ha combinado mediante @dependabot squash and merge

Este tipo de confirmación por fusión tiene como autor al Dependabot y, por lo tanto, cualquier flujo de trabajo que se ejecute en la confirmación tendrá permisos de solo lectura. Si ha habilitado las actualizaciones de seguridad o de versión de code scanning y Dependabot en el repositorio, se recomienda evitar el uso del comando @dependabot squash and merge de Dependabot. En su lugar, puede habilitar la combinación automática para el repositorio. Esto significa que las solicitudes de incorporación de cambios se combinarán automáticamente cuando se cumplan todas las revisiones necesarias y se hayan superado las comprobaciones de estado. Para más información sobre cómo habilitar la combinación automática, consulta "Fusionar una solicitud de cambios automáticamente".