OAuth 2.0-Authentifizierung
Übersicht
OAuth 2.0 ist eine Alternative zur API-Schlüssel-Authentifizierung, die allen Benutzern des axe MCP Servers zur Verfügung steht. Es verwendet den Authorization Code Flow mit PKCE und speichert Tokens sicher in Ihrem OS-Schlüsselbund, sodass Sie sich einmal authentifizieren und das CLI die Token-Aktualisierung automatisch verwaltet.
Die Authentifizierung wird verwaltet durch @deque/axe-auth, ein eigenständiges CLI, das Sie separat auf Ihrem Host-Rechner installieren.
Voraussetzungen
- Node.js 22 LTS oder neuer
- Docker installiert und läuft
Schritt 1: Authentifizieren
Führen Sie den Login-Befehl aus:
npx @deque/axe-auth loginDas CLI wird:
- Ihren Standardbrowser zur Login-Seite öffnen
- Sie auffordern, sich mit Ihren axe Account-Anmeldeinformationen anzumelden
- Die resultierenden Tokens sicher in Ihrem System-Schlüsselbund speichern
Ihr Betriebssystem kann Sie beim ersten Speichern von Tokens auffordern, den Zugriff auf den Schlüsselbund zu gewähren.
Wenn fertig, bestätigt das Terminal:
✓ Authenticated.Sie müssen nur login einmal pro Rechner ausführen. Bei späteren Aufrufen npx @deque/axe-auth token aktualisiert Ihr Zugriffstoken leise mithilfe des gespeicherten Auffrischungstokens.
Private Cloud, Nicht-US-Regionen oder vor Ort Installationen
Wenn Ihre Organisation eine Private Cloud oder eine lokale axe-Instanz verwendet, geben Sie Ihre Instanz-URL mit --server (oder setzen Sie AXE_SERVER_URL Umgebungsvariable):
npx @deque/axe-auth login --server https://your-axe-instance.example.comSchritt 2: Konfigurieren Sie Ihre IDE
Verwenden Sie @deque/axe-auth token in Ihrer MCP-Client-Konfiguration, um bei jedem Start des Servers ein gültiges Zugriffstoken in den Docker-Container einzufügen. Umwickeln Sie den Docker-Befehl mit sh -c , damit die Shell das Token ersetzen kann — MCP-Konfigurationsdateien sind JSON und expandieren $(...) nicht direkt:
Setzen Sie entweder AXE_API_KEY oder AXE_ACCESS_TOKEN — nicht beides. Der Server schlägt beim Start fehl, wenn beide Variablen gesetzt sind.
Wählen Sie Ihre IDE für spezifische Anweisungen zur Einrichtung:
Jede Einrichtungsseite enthält einen OAuth-Konfigurationsabschnitt neben den API-Schlüssel-Anweisungen.
Sitzungen verwalten
Token-Lebensdauer
OAuth-Zugriffstokens sind kurzlebig. Wenn eine Sitzung länger dauert als die Lebensdauer des Tokens, gibt der Server Authentifizierungsfehler zurück.
Lösung: Starten Sie die MCP-Serververbindung in Ihrer IDE neu. Die Konfiguration wird bei jedem Serverstart neu ausgeführt, was automatisch ein frisches Token holt. @deque/axe-auth token .
Abmelden
Um Ihre Tokens serverseitig zu widerrufen und sie aus dem System-Schlüsselbund zu löschen:
npx @deque/axe-auth logoutWenn das serverseitige Widerrufen fehlschlägt (zum Beispiel aufgrund eines Netzwerkfehlers), werden lokale Tokens dennoch gelöscht und eine Warnung wird ausgegeben.
Erneut authentifizieren
Wenn Ihr Auffrischungstoken abgelaufen oder widerrufen wurde, @deque/axe-auth token beendet mit Code 1 und fordert Sie auf, sich erneut anzumelden. Führen Sie npx @deque/axe-auth login erneut aus. Übergeben Sie --force um die Bestätigungsaufforderung zur erneuten Authentifizierung zu überspringen:
npx @deque/axe-auth login --forceBefehlsreferenz
login
Öffnet einen Browser, führt den OAuth 2.0 Authorization Code + PKCE Flow aus und speichert Tokens im OS-Schlüsselbund.
npx @deque/axe-auth login [options]| Flag | Beschreibung |
|---|---|
--server <url> |
Basis-URL Ihrer Axe-Instanz. Standard ist https://axe.deque.com. Nur erforderlich für Private-Cloud, Nicht-US-Regionen oder lokale Installationen. |
--force |
Überspringen der Bestätigungsaufforderung zur erneuten Authentifizierung, wenn Sie bereits angemeldet sind. |
--allow-insecure-issuer |
Erlauben von Nicht-Loopback-HTTP-URLs (Standard ist nur HTTPS; Loopback-HTTP ist immer erlaubt). Gilt nur für login ; token und logout verwenden die beim Login gespeicherte Richtlinie. |
--no-allow-insecure-issuer |
Erzwingt allowInsecureIssuer=false für den neuen login (und den gespeicherten Eintrag). Schließt sich gegenseitig mit --allow-insecure-issueraus. token und logout ignorieren diese Kennung. |
token
Gibt ein derzeit gültiges Zugriffstoken an stdout aus. Aktualisiert es stillschweigend, wenn das gespeicherte Token abgelaufen ist. Beendet sich mit dem Code 1 , wenn nicht authentifiziert.
npx @deque/axe-auth tokenlogout
Widerruft das gespeicherte Aktualisierungstoken serverseitig und löscht den lokalen Schlüsselbund-Eintrag.
npx @deque/axe-auth logout--help
Zeigt Hilfeinformationen für @deque/axe-auth und dessen Befehle an.
npx @deque/axe-auth --help
npx @deque/axe-auth <command> --helpPlattformunterstützung
| Plattform | Token-Speicherung |
|---|---|
| macOS | macOS-Schlüsselbund |
| Windows | Windows-Anmeldeinformationsmanager |
| Linux | D-Bus-Geheimnisdienst (GNOME-Keyring, KWallet, etc.) |
Linux: @deque/axe-auth erfordert einen funktionierenden D-Bus-Geheimnisdienst. Kopflose oder minimal-desktop Umgebungen haben möglicherweise keinen verfügbar. Wenn Sie eine Fehlermeldung wie diese sehen:
System keychain load failed: <details>. On Linux this usually means no D-Bus Secret Service is running (e.g. GNOME Keyring or KWallet).bitten Sie Ihren Systemadministrator, GNOME-Keyring oder einen kompatiblen Geheimnisdienst-Anbieter zu konfigurieren.
Fehlerbehebung
Browser wird nicht automatisch geöffnet
Wenn login keinen Browser öffnen kann, druckt es die Autorisierungs-URL auf das Terminal. Kopieren Sie die URL und öffnen Sie sie manuell, um die Authentifizierung abzuschließen.
Token-Ablauf bei langen Sitzungen
Siehe Token-Lebensdauer oben. Starten Sie die MCP-Serververbindung in Ihrer IDE neu, um ein frisches Token zu erhalten.
„Nicht authentifiziert“-Fehler von token
Ihre Sitzung ist abgelaufen oder Tokens wurden gelöscht. Führen Sie npx @deque/axe-auth login erneut aus, um sich erneut zu authentifizieren.
MCP-Server-Authentifizierungsfehler
- Bestätigen Sie nur, dass
AXE_ACCESS_TOKENgesetzt ist (nichtAXE_API_KEY). - Bestätigen Sie, dass
AXE_SERVER_URLmit Ihrer Axe-Instanz-URL übereinstimmt — dies sollte die gleiche URL sein, die bei--serverwährend der Anmeldung verwendet wurde (oderhttps://axe.deque.comwenn Sie die Standardeinstellungen verwendet haben). - Führen Sie
npx @deque/axe-auth tokendirekt in Ihrem Terminal aus, um zu bestätigen, dass Sie ein gültiges Token haben. - Wenn er mit dem Code
1beendet wird, authentifizieren Sie sich erneut mitnpx @deque/axe-auth login
Linux-Schlüsselbund nicht verfügbar
Siehe den Plattform-Support -Hinweis oben.
