Autenticación OAuth 2.0
Visión general
OAuth 2.0 es una alternativa a la autenticación con clave API disponible para todos los usuarios del servidor axe MCP. Utiliza el flujo de código de autorización con PKCE y almacena los tokens de manera segura en el llavero de su sistema operativo, por lo que se autentica una vez y la CLI se encarga de la renovación del token automáticamente.
La autenticación es gestionada por @deque/axe-auth, una CLI independiente que se instala por separado en su máquina host.
Requisitos previos
- Node.js 22 LTS o posterior
- Docker instalado y ejecutándose
Paso 1: Autenticarse
Ejecute el comando de inicio de sesión:
npx @deque/axe-auth loginLa CLI hará lo siguiente:
- Abrirá su navegador predeterminado en la página de inicio de sesión
- Le pedirá que inicie sesión con sus credenciales de Cuenta axe
- Almacenará los tokens resultantes de forma segura en el llavero de su sistema
Su sistema operativo puede pedirle que conceda acceso al llavero la primera vez que se almacenan tokens.
Cuando se complete, el terminal confirmará:
✓ Authenticated.Solo necesita ejecutar login una vez por máquina. En invocaciones posteriores, npx @deque/axe-auth token renueva su token de acceso de manera silenciosa utilizando el token de actualización almacenado.
Nube privada, regiones fuera de EE.UU. o instalaciones en las instalaciones
Si su organización utiliza una nube privada o instancia axe en las instalaciones, indique la URL de su instancia con --server (o establezca AXE_SERVER_URL variable de entorno):
npx @deque/axe-auth login --server https://your-axe-instance.example.comPaso 2: Configure su IDE
Utilice @deque/axe-auth token en la configuración de su cliente MCP para inyectar un token de acceso válido en el contenedor Docker cada vez que el servidor se inicia. Envuelva el comando Docker con sh -c para que la shell pueda sustituir el token — los archivos de configuración MCP son JSON y no expanden $(...) directamente:
Establezca ya sea AXE_API_KEY o AXE_ACCESS_TOKEN — no ambos. El servidor fallará al iniciar si ambas variables están establecidas.
Elija su IDE para obtener instrucciones específicas de configuración:
Cada página de configuración incluye una sección de configuración OAuth junto con las instrucciones de la clave API.
Gestión de sesiones
Duración del token
Los tokens de acceso OAuth tienen una vida útil corta. Si una sesión dura más que la vida útil del token, el servidor devolverá errores de autenticación.
Solución alternativa: Reinicie la conexión del servidor MCP en su IDE. La configuración vuelve a ejecutar @deque/axe-auth token en cada inicio del servidor, lo que obtiene automáticamente un token nuevo.
Cerrar sesión
Para revocar sus tokens del lado del servidor y borrarlos del llavero del sistema:
npx @deque/axe-auth logoutSi falla la revocación del lado del servidor (por ejemplo, debido a un error de red), los tokens locales aún se eliminan y se imprime una advertencia.
Re-autenticación
Si su token de actualización ha expirado o ha sido revocado, @deque/axe-auth token sale con el código 1 y le indica que inicie sesión nuevamente. Ejecute npx @deque/axe-auth login otra vez. Pase --force para omitir el aviso de confirmación de reautenticación:
npx @deque/axe-auth login --forceReferencia de comandos
login
Abre un navegador, completa el flujo de Código de Autorización OAuth 2.0 + PKCE y guarda los tokens en el llavero del sistema operativo.
npx @deque/axe-auth login [options]| Bandera | Descripción |
|---|---|
--server <url> |
URL base de su instancia de axe. Por defecto es https://axe.deque.com. Solo se requiere para la nube privada, regiones fuera de EE. UU. o instalaciones locales. |
--force |
Omitir la confirmación de reautenticación cuando ya se ha iniciado sesión. |
--allow-insecure-issuer |
Permitir URLs http no loopback (el valor predeterminado es solo https; el http loopback siempre está permitido). Se aplica a login únicamente; token y logout usan la política guardada al iniciar sesión. |
--no-allow-insecure-issuer |
Forzar allowInsecureIssuer=false para el nuevo login (y la entrada que guarda). Mutuamente excluyente con --allow-insecure-issuer. token y logout ignoran esta bandera. |
token
Imprime un token de acceso actualmente válido en stdout. Se actualiza en silencio si el token almacenado ha expirado. Salida con código 1 si no está autenticado.
npx @deque/axe-auth tokenlogout
Revoca el token de actualización almacenado en el servidor y borra la entrada del llavero local.
npx @deque/axe-auth logout--help
Muestra información de ayuda para @deque/axe-auth y sus comandos.
npx @deque/axe-auth --help
npx @deque/axe-auth <command> --helpCompatibilidad de la plataforma
| Plataforma | Almacenamiento de tokens |
|---|---|
| macOS | Llavero de macOS |
| Windows | Administrador de credenciales de Windows |
| Linux | Servicio secreto de D-Bus (GNOME Keyring, KWallet, etc.) |
Linux: @deque/axe-auth requiere un Servicio secreto de D-Bus en funcionamiento. Los entornos minimalistas o sin interfaz gráfica pueden no tener uno disponible. Si ve un error como:
System keychain load failed: <details>. On Linux this usually means no D-Bus Secret Service is running (e.g. GNOME Keyring or KWallet).pida a su administrador del sistema que configure GNOME Keyring o un proveedor de Servicio secreto compatible.
Resolución de problemas
El navegador no se abre automáticamente
Si login no puede abrir un navegador, imprime la URL de autorización en la terminal. Copie la URL y ábrala manualmente para completar la autenticación.
Expiración del token durante sesiones largas
Vea Tiempo de vida del token arriba. Reinicie la conexión del servidor MCP en su IDE para obtener un nuevo token.
Error de "No autenticado" de token
Su sesión ha expirado o los tokens se borraron. Ejecute npx @deque/axe-auth login nuevamente para reautenticarse.
Errores de autenticación del servidor MCP
- Confirme que solo
AXE_ACCESS_TOKENesté configurado (noAXE_API_KEY) - Confirme
AXE_SERVER_URLque coincide con la URL de su instancia de axe; esta debería ser la misma URL usada con--serverdurante el inicio de sesión (ohttps://axe.deque.comsi usó la predeterminada) - Ejecute
npx @deque/axe-auth tokendirectamente en su terminal para confirmar que tiene un token válido - Si finaliza con el código
1, reautentíquese connpx @deque/axe-auth login
Linux keychain no disponible
Consulte el Soporte de Plataforma llamado anteriormente.
