Note
Dieser Artikel zur Problembehandlung ist nur relevant, wenn dieser Fehler mit Dependabot angezeigt wird. Wenn dieser Fehler mit anderen GitHub-Produkten angezeigt wird und Probleme bei der Problembehandlung auftreten, können Sie sich an GitHub-Support wenden. Weitere Informationen finden Sie unter Kontaktieren des GitHub-Supports.
Informationen zu diesem Fehler
403: Resource not accessible by integration
Dependabot wird als nicht vertrauenswürdig betrachtet, wenn eine Workflowausführung ausgelöst wird, wenn der Workflow mit schreibgeschützten Bereichen ausgeführt wird.
Bestätigen der Fehlerursache
Wenn Sie Dependabot in Ihrem code scanning-Workflow verwenden, untersuchen Sie den verwendeten Bereich.
Das Hochladen von code scanning-Ergebnissen für einen Branch erfordert in der Regel den security-events: write
-Bereich. Das code scanning ermöglicht jedoch immer das Hochladen von Ergebnissen, wenn das pull_request
-Ereignis die Aktionsausführung auslöst. Aus diesem Grund wird für Dependabot-Branches empfohlen, das pull_request
-Ereignis anstelle des push
-Ereignisses zu verwenden.
Beheben des Problems
Ein einfacher Ansatz besteht in der Ausführung von Pushvorgängen in den Standardbranch und alle anderen wichtigen zeitintensiven Branches sowie in Pull Requests, die für diese Gruppe von Branches geöffnet werden:
on:
push:
branches:
- main
pull_request:
branches:
- main
Ein alternativer Ansatz besteht darin, alle Pushvorgänge mit Ausnahme von Dependabot-Branches auszuführen:
on:
push:
branches-ignore:
- 'dependabot/**'
pull_request:
Weitere Informationen zum Bearbeiten der CodeQL-Workflowdatei findest du unter Anpassen des erweiterten Setups für das Codescanning.
Analyse schlägt im Standardbranch immer noch fehl
Wenn der CodeQL-Analyseworkflow für einen Commit, der für den Standardbranch ausgeführt wird, weiterhin ein Fehler auftritt, musst du Folgendes überprüfen:
- Wurde der Commit von Dependabot erstellt?
- Wurde der Pull Request, der den Commit enthält, mithilfe von
@dependabot squash and merge
gemergt?
Diese Art von Mergecommit wird von Dependabot erstellt, weshalb alle Workflows, die für den Commit ausgeführt werden, über schreibgeschützte Berechtigungen verfügen. Wenn du das code scanning und Dependabot-Sicherheitsupdates bzw. Versionsupdates in deinem Repository aktiviert hast, solltest du die Verwendung des Dependabot-Befehls @dependabot squash and merge
vermeiden. Stattdessen kannst du automatisches Mergen für dein Repository aktivieren. Dies bedeutet, dass Pull Requests automatisch gemergt werden, wenn alle erforderlichen Überprüfungen erfüllt sind und Statusprüfungen bestanden wurden. Weitere Informationen zum Aktivieren der Funktion für das automatische Mergen findest du unter Automatisches Zusammenführen eines Pull Requests.