Seguridad y confiabilidad
FacilityOS está diseñado para sitios donde un comando equivocado o una lectura perdida tienen consecuencias reales. La plataforma hace cumplir las reglas siguientes; no se dejan a los procedimientos.
Todo cambio pasa por 8 pasos
- Solicitud
- Validación
- Aprobación
- Verificación previa
- Ejecución
- Lectura de retorno
- Verificación
- Cierre
- Quien solicita un cambio no puede aprobarlo.
- Las escrituras se bloquean mientras el equipo está en manual o en falla, o cuando los datos no son confiables.
- El éxito lo decide la lectura de retorno. Sin lectura de retorno, el resultado se marca como "incierto", nunca como "hecho".
- Paro de emergencia: cualquier rol puede presionarlo para detener todas las escrituras de inmediato; solo un gerente puede liberarlo.
La seguridad de vida se monitorea, nunca se controla
La alarma contra incendios, los cortes del sistema de monitoreo de gases, el corte automático del gabinete de gases y la transferencia de energía de emergencia los realizan siempre los propios sistemas listados o certificados. FacilityOS los monitorea, verifica que el enlace esperado realmente ocurrió dentro de su plazo y notifica a las personas correspondientes. Nunca los reemplaza y nunca les envía comandos. Los relés de protección eléctrica también son de solo lectura.
Diseño de seguridad
- Contraseñas almacenadas con bcrypt; las cuentas se bloquean tras inicios de sesión fallidos y las solicitudes tienen límite de frecuencia por IP; inicio de sesión único con Microsoft Entra ID; cada permiso se verifica en el servidor.
- De la plataforma a la pasarela: solo TLS, una cuenta por pasarela; cada comando enviado a una pasarela lleva una firma Ed25519 y una época de arrendamiento (lease epoch), lo que impide la reproducción y el control por un nodo obsoleto.
- Credenciales de dispositivos y secretos de notificación cifrados (X25519 + HKDF + AES-GCM); la API nunca los devuelve y nunca aparecen en los registros.
- El registro de auditoría es una cadena de hash que puede verificarse contra alteraciones; la tabla de auditoría es de solo anexado.
- Content Security Policy y encabezados de seguridad en la aplicación web; las notificaciones salientes no pueden llegar a redes internas ni a direcciones de metadatos de la nube (protección SSRF).
- Las sesiones se cierran tras 2 horas sin actividad.
- Se han completado varias rondas de revisión de seguridad, con sus hallazgos y correcciones registrados.
Confiabilidad
- El control se queda en campo: los PLC y DDC siguen operando los equipos si la plataforma se desconecta.
- Las pasarelas solo se conectan hacia afuera, por lo que no hay que abrir ningún puerto de entrada en el sitio.
- Almacenamiento y reenvío: durante una interrupción, la pasarela guarda cada lectura en un diario duradero en disco (de forma predeterminada hasta 30 días o 2 GB) y envía el rezago en su orden original; no se pierde nada ni se almacena dos veces, y cualquier desbordamiento se reporta y se muestra como un vacío.
- Los datos obsoletos se marcan como obsoletos y se muestran como un vacío en las tendencias; nunca se inventan valores.
- Alta disponibilidad con operación multinodo primario/en espera o activo-activo y toma de control automática; respaldo y restauración; métricas Prometheus.
IA con barreras de protección
El asistente de IA está desactivado de forma predeterminada y requiere que la plataforma, el cliente y el sitio lo activen. Lo que envía se depura primero y no contiene credenciales ni datos personales; la clave de API está cifrada y es de solo escritura, y cada solicitud se audita. La demo pública usa únicamente una simulación local.