35 lines
1.7 KiB
Markdown
35 lines
1.7 KiB
Markdown
Archivos generados por la validación de LiveKit
|
|
|
|
Contenido:
|
|
- token.txt: token JWT completo (línea única)
|
|
- payload.json: payload (claims) decodificado del token
|
|
- curl_strict.txt: resultado del curl estricto a /rtc/validate (HTTP 200 + body: success)
|
|
|
|
Comandos listos para usar (zsh)
|
|
|
|
# exportar token
|
|
export TOKEN='eyJhbGciOiJIUzI1NiJ9.eyJuYW1lIjoidGVzdF91c2VyIiwidmlkZW8iOnsicm9vbSI6InRlc3Rfcm9vbSIsInJvb21Kb2luIjp0cnVlLCJjYW5QdWJsaXNoIjp0cnVlLCJjYW5TdWJzY3JpYmUiOnRydWV9LCJpc3MiOiJBUElCVHFUR3hmOWh0TUsiLCJleHAiOjE3NjM3OTg3MjgsIm5iZiI6MCwic3ViIjoidGVzdF91c2VyIn0.gyu2VR1jAFlbrbJIpsAeocrUSHTWWszED7KfM3lAwZU'
|
|
|
|
# validar con curl (estricto TLS)
|
|
curl -i -v -H "Authorization: Bearer $TOKEN" "https://livekit-server.bfzqqk.easypanel.host/rtc/validate"
|
|
|
|
# validar (ignorar verificación TLS) - solo para diagnóstico
|
|
echo "(no recomendado en producción)"
|
|
curl -i -v -k -H "Authorization: Bearer $TOKEN" "https://livekit-server.bfzqqk.easypanel.host/rtc/validate"
|
|
|
|
# probar WebSocket con wscat (instalar: npm i -g wscat)
|
|
# timeout 6s wscat -c "wss://livekit-server.bfzqqk.easypanel.host/rtc?access_token=$TOKEN" || true
|
|
|
|
# ejemplo cliente JS (browser) - usar livekit-client
|
|
# import { connect } from 'livekit-client';
|
|
# const serverUrl = 'wss://livekit-server.bfzqqk.easypanel.host';
|
|
# const token = '...el token completo...';
|
|
# (async () => { const room = await connect(serverUrl, token); console.log('Conectado a room:', room.name); })();
|
|
|
|
Recomendaciones de seguridad:
|
|
- No subir tokens ni secretos a repositorios públicos.
|
|
- Generar tokens en backend y entregar tokens cortos al cliente.
|
|
- Usar TTL corto en producción (10-30 min) y permisos mínimos por rol.
|
|
- Guardar LIVEKIT_API_SECRET en un gestor de secretos.
|
|
|