Inicialización De Auth Y Token
Objetivo: obtener tokens Bearer por cuenta antes de llamar rutas autenticadas de jsonlog.
Nota de alcance:
- Este flujo llama endpoints de
auth.jsonlog.com. - Esas rutas no forman parte del OpenAPI de jsonlog.
Precondiciones
- El servicio JsonLog es alcanzable (para uso local, por defecto
http://localhost:3002). - El entorno de auth está configurado para tu origen y cliente.
node,curlyjqestán disponibles si usas scripts de inicialización.
Flujo De UI
- El usuario inicia sesión en el cliente auth configurado para jsonlog.
- El cliente recibe un access token con claim de cuenta (
acc). - El cliente envía
Authorization: Bearer <token>para rutas protegidas de jsonlog.
Flujo De API/Script
Usa el helper de inicialización para aprovisionar identidades de prueba y emitir un manifiesto de token por cuenta.
cd jsonlog
set -a && source .env && set +a
TEST_EMAIL_DOMAIN="example.com" npm run auth:bootstrap
Extrae account_access_token generado desde la salida del manifiesto para llamadas a /query.
Flujo HTTP/curl
AUTH_BASE_URL="https://auth.jsonlog.com"
JSONLOG_BASE_URL="http://localhost:3002"
ACCESS_TOKEN="<account_scoped_token>"
curl -sS "${AUTH_BASE_URL}/.well-known/jwks.json?client_id=cid_jsonlog"
curl -sS -X POST "${JSONLOG_BASE_URL}/query" \
-H "authorization: Bearer ${ACCESS_TOKEN}" \
-H "content-type: application/json" \
--data '{"start_ts": 1700000000000, "end_ts": 1700000600000}'
Validación
- Un token faltante/inválido en
/querydevuelve401. - Un token válido con claim de cuenta devuelve
200y un sobre de respuesta de consulta.