Authentifizierung
Anmeldung, Sitzungen und Authentifizierung der Jamdesk CLI – mit Token-Speicherung, Sitzungsaktualisierung, Teamkonten und CI/CD.
Die CLI verwendet eine browserbasierte Authentifizierung, um eine Verbindung zu Ihrem Jamdesk-Konto herzustellen. Sie müssen sich vor dem Bereitstellen anmelden.
Anmeldung
jamdesk login
Dadurch wird das Jamdesk Dashboard in Ihrem Browser zur Authentifizierung geöffnet. Im Hintergrund geschieht Folgendes:
- Die CLI startet einen lokalen HTTP-Server auf
127.0.0.1:9876(verwendet einen vom Betriebssystem zugewiesenen Port, falls 9876 belegt ist) - Ihr Browser öffnet
dashboard.jamdesk.com/cli-auth - Sie authentifizieren sich mit einer beliebigen Dashboard-Anmeldemethode (E-Mail/Passwort, Google, GitHub)
- Das Dashboard sendet Ihre Anmeldedaten an den lokalen Server der CLI zurück
- Die Anmeldedaten werden in
~/.jamdeskrcgespeichert
Beim Callback wird ein state-Parameter überprüft, um standortübergreifende Request-Fälschungen zu verhindern. Der Anmeldevorgang läuft nach 2 Minuten ab.
$ jamdesk login
ℹ Open this URL in your browser to log in:
https://dashboard.jamdesk.com/cli-auth?port=9876&state=abc123...
ℹ Waiting for authentication...
✔ Logged in as you@example.comHeadless- und SSH-Umgebungen: Die URL wird immer im Terminal ausgegeben, auch wenn der Browser nicht geöffnet werden kann. Kopieren Sie sie und fügen Sie sie in einen beliebigen Browser ein.
Abmelden
jamdesk logout
Löscht die gespeicherten Anmeldedaten aus ~/.jamdeskrc. Hat keine Wirkung, wenn Sie nicht angemeldet sind.
$ jamdesk logout
✔ Logged out (you@example.com)Whoami
jamdesk whoami
Zeigt Ihre authentifizierte E-Mail-Adresse an und validiert die Sitzung durch Aktualisieren des Tokens. Dies ist eine Live-Prüfung und kein Auslesen eines lokalen Caches.
Es gibt drei mögliche Zustände:
$ jamdesk whoami
✔ Logged in as you@example.com$ jamdesk whoami
⚠ Logged in as you@example.com (session expired)
Run `jamdesk login` to re-authenticate.$ jamdesk whoami
ℹ Not logged in. Run `jamdesk login` to authenticate.Funktionsweise von Sitzungen
Anmeldedaten werden in ~/.jamdeskrc als JSON mit den Berechtigungen 0600 gespeichert (Lesen und Schreiben nur für den Eigentümer):
{
"auth": {
"refreshToken": "AGK...",
"email": "you@example.com",
"uid": "abc123",
"expiresAt": 1700000000000
}
}Die CLI verwendet eine Architektur mit Refresh-Token und ID-Token:
- ID-Tokens laufen nach etwa 1 Stunde ab und werden für API-Aufrufe verwendet
- Die CLI aktualisiert ID-Tokens automatisch mit dem gespeicherten Refresh-Token und einem Puffer von 5 Minuten vor dem Ablauf
- Refresh-Tokens sind langlebig, können aber widerrufen werden (Passwortänderung, Kontolöschung)
- Wenn der Refresh-Token dauerhaft ungültig ist (
TOKEN_EXPIRED,USER_NOT_FOUND,INVALID_REFRESH_TOKEN), werden die gespeicherten Authentifizierungsdaten automatisch gelöscht
Sie müssen Tokens nicht manuell verwalten. Die CLI übernimmt die Aktualisierung bei jedem authentifizierten Befehl transparent.
Fehlerbehebung
Der lokale Callback-Server der CLI wird möglicherweise durch eine Firewall blockiert. Kopieren Sie die ausgegebene URL und öffnen Sie sie manuell in Ihrem Browser.
Wenn Port 9876 von einem anderen Prozess verwendet wird, wählt die CLI automatisch einen anderen Port. Überprüfen Sie die URL in der Terminalausgabe.
Ihr Refresh-Token ist nicht mehr gültig. Dies geschieht nach Passwortänderungen oder längeren Zeiträumen ohne Aktivität.
Führen Sie jamdesk login aus, um eine neue Sitzung zu erhalten.
Dies ist in Headless-Umgebungen (SSH, Docker, CI) zu erwarten. Kopieren Sie die URL aus dem Terminal und öffnen Sie sie in einem beliebigen Browser, der den Callback-Port Ihres Computers erreichen kann.
Überprüfen Sie, ob ~/.jamdeskrc vorhanden ist und einen auth-Schlüssel enthält:
cat ~/.jamdeskrcDie Dateiberechtigungen sollten 0600 sein. Wenn die Datei fehlt, gibt es möglicherweise Berechtigungsprobleme in Ihrem Home-Verzeichnis. Überprüfen Sie dies mit ls -la ~.
Weitere Informationen zur Fehlerbehebung der CLI finden Sie im CLI-Leitfaden des Help Centers.
