Ein Token, das einmal in eine Variable oder ein Skript kopiert wurde, kann nach Ablauf seiner Gültigkeit nicht mehr funktionieren. Am 21. Oktober 2026 kündigte GitHub eine öffentliche Vorschau für ablaufende OAuth-Zugangsdaten mit automatischer Erneuerung in GitHub CLI an. Die Funktion ist optional und für Arbeitsabläufe gedacht, in denen die CLI die Authentifizierung verwaltet.

Erneuerbare Zugangsdaten aktivieren
Erforderlich ist GitHub CLI in Version 2.103.0 oder neuer. Fügen Sie für eine einzelne Anmeldung das Flag --expiring hinzu:
gh auth login --expiring
Um bei künftigen Anmeldungen standardmäßig erneuerbare Zugangsdaten anzufordern, führen Sie Folgendes aus:
gh config set expiring_credentials enabled
Die CLI speichert das ablaufende Access-Token zusammen mit einem rotierenden Refresh-Token und erneuert die Zugangsdaten bei Bedarf. Den Authentifizierungsstatus und die Gültigkeitsdauer des aktuellen Tokens zeigt der Befehl gh auth status an. Das Flag fordert erneuerbare Zugangsdaten an; ob sie ausgegeben werden, hängt von den Funktionen des Hosts und der Konfiguration der OAuth-Anwendung ab. Unterstützt der Server sie nicht, verwendet die CLI ein herkömmliches Token ohne Ablaufdatum.
Git als Verbraucher der Zugangsdaten einrichten
Richten Sie GitHub CLI für Repositories mit HTTPS als Git Credential Helper ein:
gh auth setup-git
Git fragt dann gh nach Zugangsdaten, die vor der Verwendung erneuert werden können. GitHub empfiehlt Git ab Version 2.46: Damit kann die CLI ablaufende Zugangsdaten kennzeichnen, sodass Git sie nach Ablauf nicht weiter zwischenspeichert. Mit einer älteren Git-Version funktioniert GitHub CLI ebenfalls, fordert jedoch einmalig zu einem Update auf.
Testen Sie nach der Einrichtung einen gewöhnlichen Git-Vorgang über HTTPS, etwa das Abrufen des Status des Remote-Repositories. Vergewissern Sie sich, dass Git die Zugangsdaten über den Helper bezieht: So prüfen Sie den gesamten Authentifizierungsweg und nicht nur die Anmeldung bei der CLI.
Skripte und externe Anwendungen überprüfen
Eine Schwachstelle kann ein Skript oder eine Erweiterung sein, die einmal gh auth token ausführt, die ausgegebene Zeichenfolge speichert und später erneut verwendet: Ein solches Access-Token kann ablaufen. Wenn ein externer Prozess ein Token benötigt, fordern Sie bei jedem Start über gh auth token ein aktuelles an. Der Verbraucher muss den aktuellen Wert verwenden können und den Ablauf des Tokens berücksichtigen.
Prüfen Sie vor der Aktivierung in einer Arbeitsumgebung CI-Aufgaben, lokale Skripte, Editor-Erweiterungen und Tools, die ein Token aus einer Umgebungsvariablen oder einer Konfigurationsdatei beziehen. Klären Sie, ob sie bei jedem Start einen aktuellen Wert abrufen oder sich auf eine gespeicherte Kopie verlassen. Behalten Sie für Prozesse, die ein langlebiges Token benötigen, das bisherige Authentifizierungsverfahren bei.
Verfügbarkeit der Funktion
GitHub hat die Unterstützung für github.com und ghe.com angekündigt. GitHub Enterprise Server stellt solche Zugangsdaten ab Version 3.23 aus; bei älteren Versionen führt die Anforderung erneuerbarer Daten zu einem herkömmlichen Token ohne Ablaufdatum. Die Funktion ist derzeit optional; GitHub plant, sie mit der Zeit für neue Anmeldungen zum Standard zu machen.
Empfohlene Reihenfolge: GitHub CLI aktualisieren, erneuerbare Zugangsdaten anfordern, Git mit gh auth setup-git einrichten und externe Prozesse daraufhin prüfen, ob sie Tokens speichern. So lassen sich inkompatible Abläufe vor der Umstellung erkennen.
Weitere Einzelheiten veröffentlichte GitHub in der Ankündigung der Vorschau und in der Dokumentation zum Befehl gh auth login.