Informationen zu Workflowausführungen über öffentliche Forks
Jede Person kann ein öffentliches Repository forken und dann einen Pull Request übermitteln, um Änderungen an den GitHub Actions-Workflows des Repositorys vorzuschlagen. Workflows von Forks haben zwar keinen Zugriff auf vertrauliche Daten wie Geheimnisse, können aber für die Verwalter störend sein, wenn sie zu missbräuchlichen Zwecken geändert werden.
Um dies zu verhindern, werden Workflows in Pull Requests an öffentliche Repositorys von einigen externen Mitwirkenden nicht automatisch ausgeführt, sondern müssen möglicherweise zuerst genehmigt werden. Je nach der Einstellung „Genehmigung für die Ausführung von Fork-Pull-Request-Workflows von Mitwirkenden“ werden Workflows für Pull Requests für öffentliche Repositorys nicht automatisch ausgeführt und müssen möglicherweise genehmigt werden, wenn Folgendes zutrifft:
- Der Pull Request wurde von einem Benutzer erstellt, der gemäß der ausgewählten Richtlinie eine Genehmigung benötigt.
- Das Pull Request-Ereignis wurde von einem Benutzer ausgelöst, der gemäß der ausgewählten Richtlinie eine Genehmigung benötigt.
Standardmäßig ist bei allen erstmaligen Mitwirkenden eine Genehmigung zum Ausführen von Workflows erforderlich.
Workflows, die durch pull_request_target
-Ereignisse ausgelöst wurden, werden im Kontext des Basisbranch ausgeführt. Da der Basisbranch als vertrauenswürdig betrachtet wird, werden die von diesen Ereignissen ausgelösten Workflows immer ausgeführt, unabhängig von den Genehmigungseinstellungen. Weitere Informationen zum pull_request_target
-Ereignis findest du unter Ereignisse zum Auslösen von Workflows.
Warning
Durch diese Richtlinien zur Genehmigung von Workflows soll der Kreis der Benutzer eingeschränkt werden, die Workflows in GitHub Actions-Runnern ausführen können, die bei der Verwendung von auf GitHub Runnern zu unerwartetem Ressourcen- und Computeverbrauch führen können. Wenn du selbstgehostete Runner verwendest und der Benutzer die Genehmigung in der festgelegten Genehmigungsrichtlinie umgehen darf oder der Pull Request genehmigt wird, wird potenziell bösartiger, vom Benutzer gesteuerter Workflowcode automatisch ausgeführt. Du musst das Risiko der Ausführung dieses Codes in deiner Infrastruktur berücksichtigen und solltest die Sicherheitsempfehlungen für selbstgehostete Runner unabhängig von den verwendeten Genehmigungseinstellungen lesen und befolgen. Weitere Informationen finden Sie unter „Sicherheitshärtung für GitHub Actions“.
Du kannst Workflowgenehmigungsanforderungen für ein Repository, eine Organisation oder ein Unternehmen konfigurieren.
Workflowausführungen, die mehr als 30 Tage lang auf eine Genehmigung warten, werden automatisch gelöscht.
Genehmigen von Workflowausführungen für einen Pull Request über einen öffentlichen Fork
Betreuer mit Schreibzugriff auf ein Repository können mithilfe des folgenden Verfahrens Workflows für Pull Requests von Mitwirkenden überprüfen und ausführen, die eine Genehmigung erfordern.
-
Klicke unter dem Namen deines Repositorys auf -Pull Requests.
-
Klicke in der Liste der Pull Requests auf den Pull Request, den Du überprüfen möchtest.
-
Klicke für den Pull Request auf Dateien geändert.
-
Überprüfe die vorgeschlagenen Änderungen im Pull Request, und stelle sicher, dass dir die Ausführung deiner Workflows im Pull Request-Branch zusagt. Du solltest besonders auf vorgeschlagene Änderungen im
.github/workflows/
-Verzeichnis achten, die sich auf Workflowdateien auswirken. -
Wenn du mit der Ausführung der Workflows im Pull-Request-Branch zufrieden bist, kehre zur Registerkarte Unterhaltung zurück, und klicke unter „Auf Genehmigung wartende Workflows“ auf Genehmigen und ausführen.