Diese Version von GitHub Enterprise wurde eingestellt am 2021-09-23. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. Für eine bessere Leistung, verbesserte Sicherheit und neue Features nimm ein Upgrade auf die neueste Version von GitHub Enterprise vor. Wende Dich an den GitHub Enterprise-Support, um Hilfe beim Upgrade zu erhalten.

Authentication in a workflow

GitHub stellt ein Token zur Verfügung, mit dem Du Dich im Namen von GitHub Actions authentifizieren kannst.

GitHub Actions ist verfügbar mit GitHub Free, GitHub Pro, GitHub Free für Organisationen, GitHub Team, GitHub Enterprise Cloud, und GitHub AE. GitHub Actions ist nicht verfügbar für private Repositorys, die im Besitz von Konten mit älteren Pro-Repository-Plänen sind.

Note: GitHub Actions was available for GitHub Enterprise Server 2.22 as a limited beta. The beta has ended. GitHub Actions is now generally available in GitHub Enterprise Server 3.0 or later. For more information, see the GitHub Enterprise Server 3.0 release notes.


Note: GitHub-hosted runners are not currently supported on GitHub Enterprise Server. You can see more information about planned future support on the GitHub public roadmap.

Informationen zum GITHUB_TOKEN-Geheimnis

GitHub erstellt automatisch ein GITHUB_TOKEN-Geheimnis für Deinen Workflow. Du kannst den GITHUB_TOKEN verwenden, um Dich in einem Workflow zu authentifizieren.

Wenn Du GitHub Actions aktivierst, installiert GitHub eine GitHub App in Deinem Repository. Das GITHUB_TOKEN-Geheimnis ist ein GitHub App-Token für Installations-Zugriff. Du kannst das Installationszugriffs-Token verwenden, um Dich im Namen der auf Deinem Repository installierten GitHub App zu authentifizieren. Die Berechtigungen des Tokens sind auf das Repository beschränkt, in dem sich der Workflow befindet. Weitere Informationen findest Du unter "Berechtigungen für das GITHUB_TOKEN."

Before each job begins, GitHub fetches an installation access token for the job. Das Token läuft ab, wenn der Auftrag abgeschlossen ist.

Das Token ist auch im github.token-Kontext verfügbar. Weitere Informationen findest Du unter "Kontext- und Ausdrucks-Syntax für GitHub Actions".

Das GITHUB_TOKEN in einem Workflow verwenden

You can use the GITHUB_TOKEN by using the standard syntax for referencing secrets: ${{ secrets.GITHUB_TOKEN }}. Examples of using the GITHUB_TOKEN include passing the token as an input to an action, or using it to make an authenticated GitHub API request.

Wenn Du den GITHUB_TOKEN des Repository verwendest, um Aufgaben im Auftrag der GitHub Actions App auszuführen, werden die vom GITHUB_TOKEN ausgelösten Ereignisse keine neue Workflow-Ausführung bereitstellen. Dadurch wird verhindert, dass Du versehentlich rekursive Workflow-Ausführung erstellst. Wenn z. B. eine Workflow-Ausführung Code mit dem GITHUB_TOKEN des Repository pusht, wird kein neuer Workflow ausgeführt, auch wenn das Repository einen Workflow enthält, welcher konfiguriert ist zur Ausführung wenn push Ereignisse auftreten.

Example 1: passing the GITHUB_TOKEN as an input

Dieser Beispielworkflow verwendet die Labeler-Aktion, wofür das GITHUB_TOKEN als Wert für den Eingabeparameter repo-token benötigt wird:

name: Pull request labeler

on: [ pull_request_target ]

jobs:
  triage:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/labeler@v2
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}

Example 2: calling the REST API

Du kannst das GITHUB_TOKEN verwenden, um authentifizierte API-Aufrufe durchzuführen. Dieser Beispiel-Workflow erzeugt eine Lieferung („issue“) mittels der GitHub-REST-API:

name: Create issue on commit

on: [ push ]

jobs:
  create_commit:
    runs-on: ubuntu-latest 
    steps:
      - name: Create issue using REST API
        run: 
          curl --request POST \
          --url https://api.github.com/repos/${{ github.repository }}/issues \
          --header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' \
          --header 'content-type: application/json' \
          --data '{
            "title": "Automated issue for commit: ${{ github.sha }}",
            "body": "This issue was automatically created by the GitHub Action workflow **${{ github.workflow }}**. \n\n Der Commit-Hash lautete: _'{{ github.sha }}_."
            }' \
          --fail

Berechtigungen für das GITHUB_TOKEN

For information about the API endpoints GitHub Apps can access with each permission, see "GitHub App Permissions."

ScopeZugriffstypZugriff durch geforktes Repository
actionsLesen/SchreibenLesen
checks (Prüfungen)Lesen/SchreibenLesen
contents (Inhalte)Lesen/SchreibenLesen
deploymentsLesen/SchreibenLesen
Issues (Lieferungen)Lesen/SchreibenLesen
MetadatenLesenLesen
PaketeLesen/SchreibenLesen
pull requestsLesen/SchreibenLesen
repository projectsLesen/SchreibenLesen
statuses (Statusangaben)Lesen/SchreibenLesen

Wenn Du ein Token benötigst, für das Berechtigungen erforderlich sind, die nicht im GITHUB_TOKEN-Geheimnis vorhanden sind, kannst Du ein persönliches Zugangstoken erstellen und als Geheimnis im Repository festlegen:

  1. Verwende oder erstelle ein Token mit den entsprechenden Berechtigungen für dieses Repository. Weitere Informationen finden Sie unter "Erstellen eines persönlichen Zugriffstokens."
  2. Füge das Token als Geheimnis in das Repository Deines Workflows ein, und verweise darauf mit der Syntax ${{ secrets.SECRET_NAME }}. Weitere Informationen findest Du unter "Verschlüsselte Geheimnisse erstellen und verwenden".