Seguridad y custodia
Credenciales
| Credencial | Ubicación y alcance |
|---|---|
| Bearer BC | Backend y almacenamiento seguro de la integración; la extensión PAdES lo cifra en Isolated Storage por empresa |
| Token tablet | Sesión local de la PWA; backend almacena su hash |
| Código activación | Temporal y de un solo uso; emitir otro invalida el token anterior |
| Certificado privado | Almacén estándar de BC; no se monta en servidor |
| Credenciales GHCR | Docker del usuario SSH que usa Coolify; independientes del bearer API |
El bearer actual autoriza al cliente técnico del entorno. El backend no autentica personas BC; la extensión autoriza alias mediante empresa y User Security ID.
La tablet no incluye un secreto fijo en el bundle. Su token no tiene expiración temporal automática. Para cortar acceso, revoca o emite un código nuevo. La rotación del bearer también es manual: actualiza backend y configuración BC de forma coordinada.
Certificados
BC importa el PFX/P12 mediante su gestión estándar. La API recibe DER público y una firma RSA; nunca contraseña o clave privada. Valida formato, RSA ≥2048, vigencia y uso de clave.
El perfil PAdES B-B no consulta confianza/revocación ni incluye TSA. Que el PDF tenga firma criptográfica verificable no garantiza la confianza de su certificado. Comprueba el resultado y la política del hotel con un lector/validador independiente.
Configuración y renovación: Certificados en BC.
Perímetro de red
Publica API y PWA por HTTPS y mantén PostgreSQL privado. El proxy termina TLS; los contenedores sirven HTTP interno. Limita la entrada directa a la API porque el código acepta cabeceras proxy sin una lista explícita de proxies confiables.
ALLOWED_ORIGINS configura CORS, pero el código añade también orígenes locales y https://tabletfirma.jdmarquez.dev. No describe una lista exclusiva de producción. La autenticación sigue siendo necesaria; CORS no protege llamadas servidor a servidor.
Documentos y auditoría
Los PDFs se guardan en filesystem persistente con retención limitada. La auditoría registra creación, reserva, inicio, firma, descargas, cancelación, dispositivos, expiraciones e incidencias.
Registra identificadores y traceId, evitando Base64 de documentos, tokens, contraseñas, DTBS y firmas. Mantén acceso controlado a backups y volúmenes; no existe una política de archivado permanente del resultado en la API. BC debe descargar y archivar.
Responder a un incidente
Revoca el dispositivo comprometido y verifica que su token ya no accede. Revisa auditoría y solicitudes abiertas. Emite un código nuevo cuando proceda; la revocación no cancela las solicitudes.
Ante pérdida o corrupción de un resultado, comprueba retención, volumen y backup antes de iniciar otra firma. Guías: Operación de tablets, Configuración y Errores.