Skip to main content

Schutzmechanismen für die Workflow-Ausführung

Mit Schutzmechanismen für die Workflowausführung können Sie steuern, wer GitHub Actions Workflows auslösen darf und welche Ereignisse deren Ausführung in Ihrer gesamten Organisation auslösen dürfen.

Hinweis

Schutzmechanismen für die Workflow-Ausführung befinden sich in Öffentliche Vorschau und können sich ändern.

Informationen zu Schutzmechanismen für die Workflow-Ausführung

Mit Workflowausführungsschutz können Sie eine Zulassungsliste definieren, die steuert, wer Workflows auslösen GitHub Actions kann und welche Ereignisse sie ausführen dürfen. Zuvor wurde ein Workflow basierend auf der Workflowdatei im Commit ausgeführt, der ihn ausgelöst hat, und ein Angreifer mit Repositoryzugriff könnte diese Datei ändern, um bösartigen Code auszuführen. Schutzmechanismen bei der Workflow-Ausführung schließen diese Lücke. Administratoren definieren die Regeln und GitHub Actions wertet sie aus, bevor ein Workflow ausgeführt wird, sodass ein nicht autorisierter Akteur oder Ereignis niemals die Ausführung erreicht.

Workflowausführungsschutz ist auf Unternehmens-, Organisations- und Repositoryebene verfügbar.

Basierend auf Regelsätzen

Die Schutzmechanismen für die Workflowausführung basieren auf dem GitHub-Framework für rulesets, sodass das Targeting, das Sie bereits von rulesets kennen, auch hier funktioniert. Mithilfe von benutzerdefinierten Repositoryeigenschaften können Sie Schutzmaßnahmen mit Regelets anwenden und auf bestimmte Repositorys beschränken. Dies bedeutet, dass Sie umfassenden Schutz von einem Ort aus erzwingen können, anstatt jede Workflowdatei einzeln zu konfigurieren. Weitere Informationen zu Regelsätzen finden Sie unter Informationen zu Regelsätzen.

Sie können auch den Auswertungsmodus verwenden, um Ihre Regeln auszuführen, ohne sie zu erzwingen. Der Auswertungsmodus zeigt Ihnen genau, was eine Regel blockieren würde, bevor Sie sie erzwingen, sodass Sie Richtlinien bereitstellen können, ohne vorhandene Workflows zu unterbrechen.

Verfügbare Regeln

Ereignis und Akteur sind die ersten beiden Regeln und GitHub Pläne, im Laufe der Zeit weitere Regeln hinzuzufügen.

  • Akteurregeln steuern, wer Workflows auslösen kann, einschließlich einzelner Benutzer, Repositoryrollen wie "Lesen", "Verwalten" und "Administrator", GitHub Apps" Copilotund Dependabot".
  • Ereignisregeln steuern, welche Ereignisse zulässig sind, z. B. push, pull_request, pull_request_target und workflow_dispatch.

Standardmäßig kann jeder Benutzer mit Schreibzugriff auf ein Repository Workflows auslösen. Mit Akteurregeln können Sie trennen, wer Code beiträgt und wer Ihre CI ausführt, sodass Sie einem Mitwirkenden Schreibzugriff gewähren können, ohne ihm die Berechtigung zu erteilen, Workflows auszuführen.

Beenden gängiger Angreifertechniken

Workflowausführungsschutz stört mehrere reale Angriffsmuster:

  • Vergiftete Pipelineausführung durch Pull Requests. pull_request_target einschränken oder verbieten, auch in öffentlichen Repositorys, wo dies am häufigsten missbraucht wird.
  • Missbrauch der manuellen Auslösung. Beschränken Sie workflow_dispatch auf Maintainer, damit nicht vertrauenswürdige Identitäten keine Workflows starten können.
  • Ausführung durch nicht vertrauenswürdige Akteure. Verhindern Sie, dass Identitäten mit niedriger Vertrauensebene Workflows vollständig auslösen.
  • Falsch konfigurierte Ausbeutung. Wenden Sie eine zentrale Richtlinie an, die jede einzelne falsch konfigurierte Workflowdatei außer Kraft setzt.

Konfigurieren von Schutzmechanismen für die Workflow-Ausführung

Sie konfigurieren Workflowausführungsschutz im neuen Abschnitt "Richtlinien " Ihrer GitHub Actions Einstellungen. Dieser Abschnitt "Richtlinien " unterscheidet sich von den vorhandenen allgemeinen Einstellungen.

  1. Klicke in der rechten oberen Ecke von GitHub auf dein Profilbild und dann auf Your organizations.

  2. Wählen Sie eine Organisation aus, indem Sie darauf klicken.

  3. Klicke unter dem Organisationsnamen auf Settings. Wenn die Registerkarte „Einstellungen“ nicht angezeigt wird, wähle im Dropdownmenü die Option Einstellungen aus.

    Screenshot der Registerkarten im Profil einer Organisation. Die Registerkarte „Einstellungen“ ist dunkelorange umrandet.

  4. Klicken Sie in der linken Randleiste unter "Aktionen" auf "Richtlinien".

  5. Erstellen Sie ein Regelsatz, und fügen Sie dann Ihre Ereignis- und Akteurregeln hinzu.

  6. Wählen Sie, ob der Regelsatz aktiv ist oder sich im Auswertungsmodus befindet, und speichern Sie dann Ihre Änderungen.