Informationen zur Authentifizierung
GitHub Copilot CLI unterstützt drei Authentifizierungsmethoden. Die verwendete Methode hängt davon ab, ob Sie interaktiv oder in einer automatisierten Umgebung arbeiten.
-
**OAuth-Geräteflow**: Die standardmäßige und empfohlene Methode für die interaktive Nutzung. Wenn Sie `/login` in Copilot CLI ausführen, generiert die CLI einen einmaligen Code und fordert Sie zur Authentifizierung in Ihrem Browser auf. Dies ist die einfachste Möglichkeit, sich zu authentifizieren. -
**Environment-Variablen**: Empfohlen für CI/CD Pipelines, Container und nicht interaktive Umgebungen. Sie legen ein unterstütztes Token als Umgebungsvariable (`COPILOT_GITHUB_TOKEN`, `GH_TOKEN`oder `GITHUB_TOKEN`) fest, und die CLI verwendet es automatisch ohne Aufforderung. -
**GitHub CLI-Fallback**: Wenn Sie GitHub CLI (`gh`) (Hinweis: die `gh` CLI, nicht `copilot`) installiert und authentifiziert haben, kann Copilot CLI ihr Token automatisch verwenden. Dies ist die niedrigste Prioritätsmethode und wird nur aktiviert, wenn keine anderen Anmeldeinformationen gefunden werden.
Nach der Authentifizierung merkt sich Copilot CLI Ihre Anmeldung und verwendet automatisch das Token für alle Copilot API-Anforderungen. Sie können sich mit mehreren Konten anmelden, und die CLI merkt sich das zuletzt verwendete Konto. Die Lebensdauer und der Ablauf des Tokens hängen davon ab, wie das Token gemäß den Einstellungen Ihres Kontos oder Ihrer Organisation erstellt wurde.
Unterstützte Tokentypen
| Tokentyp | Präfix | Unterstützt | Hinweise |
|---|---|---|---|
| OAuth-Token (Geräteflow) | gho_ | Ja | Standardmethode über copilot login |
| Feinkörniger PAT | github_pat_ | Ja | Muss die erforderlichen Berechtigungen für Copilot-Anfragen enthalten |
| GitHub-App-Benutzer-zu-Server | ghu_ | Ja | Über eine Umgebungsvariable |
| Classic PAT | ghp_ | Nein | Nicht unterstützt von Copilot CLI |
Wie Copilot CLI Anmeldeinformationen speichert
Standardmäßig speichert die CLI Ihr OAuth-Token im Schlüsselbund Ihres Betriebssystems unter dem Dienstnamen copilot-cli:
| Plattform | Schlüsselbund |
|---|---|
| macOS | Schlüsselbundzugriff |
| Fenster | Anmeldeinformationsverwaltung |
| Linux | libsecret (GNOME-Schlüsselbund, KWallet) |
Wenn die Systemkeychain nicht verfügbar ist – z. B. auf einem Headless Linux-Server ohne installiertes libsecret – fordert die CLI Sie auf, das Token in einer Klartext-Konfigurationsdatei unter ~/.copilot/config.json zu speichern.
Wenn Sie einen Befehl ausführen, überprüft Copilot CLI die Anmeldeinformationen in der folgenden Reihenfolge:
- Umgebungsvariable
COPILOT_GITHUB_TOKEN - Umgebungsvariable
GH_TOKEN - Umgebungsvariable
GITHUB_TOKEN - OAuth-Token aus der Systemschlüsselkette
- GitHub CLI (
gh auth token) fallback
Hinweis
Eine Umgebungsvariable überschreibt unbemerkt ein gespeichertes OAuth-Token. Wenn Sie für ein anderes Tool festlegen GH_TOKEN , verwendet die CLI dieses Token anstelle des OAuth-Tokens von copilot login. Um unerwartetes Verhalten zu vermeiden, verwenden Sie nicht festgelegte Umgebungsvariablen, die von der CLI nicht verwendet werden sollen.
Authentifizieren mit OAuth
Der OAuth-Gerätefluss ist die Standardauthentifizierungsmethode für die interaktive Verwendung. Sie können sich authentifizieren, indem Sie /login von Copilot CLI oder copilot login von Ihrem Terminal aus ausführen.
Authentifizieren mit /login
-
Führen Sie in Copilot CLI
/loginaus.Bash /login
/login -
Wählen Sie das Konto aus, mit dem Sie sich authentifizieren möchten. Geben Sie für GitHub Enterprise Cloud mit Datenresidenz den Hostnamen Ihrer Instanz ein.
What account do you want to log into? 1. GitHub.com 2. GitHub Enterprise Cloud with data residency (*.ghe.com) -
Die CLI zeigt einen einmaligen Benutzercode an und kopiert ihn automatisch in die Zwischenablage und öffnet Ihren Browser.
Waiting for authorization... Enter one-time code: 1234-5678 at https://github.com/login/device Press any key to copy to clipboard and open browser... -
Navigieren Sie zu der Überprüfungs-URL unter
https://github.com/login/device, wenn Ihr Browser nicht automatisch geöffnet wurde. -
Fügen Sie den einmaligen Code in das Feld auf der Seite ein.
-
Wenn Ihre Organisation SAML-SSO verwendet, klicken Sie auf Authorize neben jeder Organisation, der Sie access erteilen möchten.
-
Überprüfen Sie die angeforderten Berechtigungen, und klicken Sie auf Authorize GitHub Copilot CLI.
-
Kehren Sie zu Ihrem Terminal zurück. Die CLI zeigt eine Erfolgsmeldung an, wenn die Authentifizierung abgeschlossen ist.
Signed in successfully as Octocat. You can now use Copilot.
Authentifizieren mit copilot login
-
Führen Sie vom Terminal aus
copilot login. Wenn Sie GitHub Enterprise Cloud mit Datenresidenz verwenden, übergeben Sie den Hostnamen Ihrer Instanz.Bash copilot login
copilot loginFür GitHub Enterprise Cloud:
Bash copilot login --host HOSTNAME
copilot login --host HOSTNAMEDie CLI zeigt einen einmaligen Benutzercode an und kopiert ihn automatisch in die Zwischenablage und öffnet Ihren Browser.
To authenticate, visit https://github.com/login/device and enter code 1234-5678. -
Navigieren Sie zu der Überprüfungs-URL unter
https://github.com/login/device, wenn Ihr Browser nicht automatisch geöffnet wurde. -
Fügen Sie den einmaligen Code in das Feld auf der Seite ein.
-
Wenn Ihre Organisation SAML-SSO verwendet, klicken Sie auf Authorize neben jeder Organisation, der Sie access erteilen möchten.
-
Überprüfen Sie die angeforderten Berechtigungen, und klicken Sie auf Authorize GitHub Copilot CLI.
-
Kehren Sie zu Ihrem Terminal zurück. Die CLI zeigt eine Erfolgsmeldung an, wenn die Authentifizierung abgeschlossen ist.
Signed in successfully as Octocat.
Authentifizieren mit Umgebungsvariablen
Bei nicht interaktiven Umgebungen können Sie sich authentifizieren, indem Sie eine Umgebungsvariable mit einem unterstützten Token festlegen. Dies ist ideal für CI/CD-pipelines, Container oder Headless-Server.
- Besuchen Sie Fine-grained personal access tokens.
- Klicken Sie unter "Berechtigungen" auf Berechtigungen hinzufügen und wählen Sie Copilot Anforderungen aus.
- Klicke dann auf Token generieren.
- Exportieren Sie das Token in Ihrer Terminal- oder Umgebungskonfiguration. Verwenden Sie die Umgebungsvariable
COPILOT_GITHUB_TOKEN,GH_TOKENoderGITHUB_TOKEN(in der Reihenfolge der Rangfolge).
Authentifizierung mit GitHub CLI
Wenn Sie GitHub CLI installiert und authentifiziert haben, kann Copilot CLI das Token als Fallback verwenden. Diese Methode hat die niedrigste Priorität und aktiviert nur, wenn keine Umgebungsvariablen festgelegt werden und kein gespeichertes Token gefunden wird.
-
Stellen Sie sicher, dass GitHub CLI authentifiziert sind.
Bash gh auth status
gh auth statusWenn Sie GitHub Enterprise Cloud mit Datenresidenz verwenden, prüfen Sie, ob der richtige Hostname authentifiziert ist.
Bash gh auth status --hostname HOSTNAME
gh auth status --hostname HOSTNAME -
Führen Sie
copilotaus. Die Copilot-CLI verwendet automatisch das Token für GitHub CLI. -
Führen Sie
/userin der CLI aus, um Ihr authentifiziertes Konto zu überprüfen.
Wechseln zwischen Konten
Copilot CLI unterstützt mehrere Konten. Sie können verfügbare Konten auflisten und zwischen ihnen innerhalb der CLI wechseln. Führen Sie /user list am Copilot CLI-Prompt aus, um die verfügbaren Konten aufzulisten. Um zu einem anderen Konto zu wechseln, geben Sie /user switch an der Eingabeaufforderung ein.
Um ein weiteres Konto hinzuzufügen, führen Sie copilot login aus einer neuen Terminalsitzung aus oder führen Sie den Anmeldebefehl in der CLI aus und melden Sie sich mit dem anderen Konto an.
Abmelden und Entfernen von Anmeldeinformationen
Um sich abzumelden, geben Sie /logout an der Copilot CLI Eingabeaufforderung ein. Dadurch wird das lokal gespeicherte Token entfernt, aber auf GitHub nicht widerrufen.
Führen Sie die folgenden Schritte aus, um die OAuth-App-Autorisierung für GitHub zu widerrufen und zu verhindern, dass sie an anderer Stelle verwendet wird.
- Navigieren Sie zu "Einstellungen > "-Anwendungen > , die für OAuth-Apps autorisiert sind.
- Navigieren Sie zu Ihrer Einstellungsseite:
- Klicke in der oberen rechten Ecke einer beliebigen Seite auf GitHub auf dein Profilfoto.
- Klicken Sie auf Einstellungen.
- Klicken Sie in der linken Randleiste auf "Anwendungen".
- Unter Authorized OAuth Apps, klicken Sie auf neben GitHub CLI, um das Menü zu erweitern und Revoke auszuwählen.