Seguridad
En inSpace CRM guardas los datos de tus clientes, así que te debemos una respuesta clara sobre qué los protege. Aquí está solo lo que el sistema hace hoy, revisado contra el código: primero en corto y, abajo, el detalle técnico para quien lo necesite.
- ¿Quién puede ver los datos de mi empresa?
- Las personas de tu equipo a quienes les das acceso, con el rol que tú eliges. Cada espacio de trabajo está separado de los demás: otra empresa que use inSpace CRM no puede ver tus contactos.
- ¿El personal de inSpace entra a mi cuenta?
- Solo cuando hace falta para darte soporte o corregir una falla, y cada vez queda registrado quién entró, cuándo y cuándo salió.
- ¿Y si alguien intenta adivinar mi contraseña?
- Después de cinco intentos fallidos en quince minutos, deja de aceptar contraseñas para ese correo hasta que pase ese tiempo. Además, tu contraseña no se guarda tal cual: se guarda de una forma que nadie puede leer, tampoco nosotros.
- ¿Mi información viaja protegida?
- Sí. El sitio funciona solo con conexión cifrada, y quien llega sin ella es enviado a la versión cifrada antes de ver nada.
- ¿Quién envía mis correos y cobra mis pagos?
- Tus propias cuentas. Los correos y los SMS salen por los servicios que tú conectas, nunca por una cuenta compartida con otras empresas. Los pagos se hacen en la página de Stripe, así que los datos de la tarjeta no pasan por nuestro servidor.
1. Separación entre empresas
Todas las empresas comparten la misma base de datos, y cada registro lleva el identificador del espacio de trabajo al que pertenece. Es el modelo habitual de un servicio en la nube; lo que importa es que la separación se cumpla en cada petición, y así se cumple:
- Antes de atender una petición, el sistema identifica a qué empresa
pertenece la dirección,
tuempresa.inspacecrm.com. Si llega una sesión iniciada en otra empresa, no se acepta: se cierra y se pide entrar de nuevo. - Las consultas a tablas con datos de clientes filtran por espacio de trabajo. Pedir un registro de otra empresa responde igual que pedir uno que no existe, para no confirmar siquiera que existe.
- La cookie de sesión pertenece solo a la dirección de tu empresa, y el navegador no la envía a la de otra.
Cómo lo comprobamos
- Una revisión automática lee el código y marca cualquier consulta a una tabla con datos de clientes que no diga de qué empresa es. Las pocas excepciones —la consola de administración, el inicio de sesión— están escritas junto con su razón.
- Pruebas contra el servidor crean un segundo espacio de trabajo. Con una llave de API de ese espacio intentan leer, editar y borrar un contacto del primero; con una sesión, editar, mover y borrar una de sus oportunidades. Cada intento tiene que ser rechazado.
2. Contraseñas y acceso
| Qué | Cómo |
|---|---|
| Contraseñas | Se guardan como hash bcrypt, nunca en claro. Nadie puede recuperarlas, solo restablecerlas. |
| Intentos de inicio de sesión | Con cinco intentos fallidos para el mismo correo en quince minutos, se rechazan los siguientes. Cada intento fallido queda registrado con su dirección IP. |
| Sesión | Al iniciar sesión se crea un identificador nuevo y el anterior deja de servir. |
| Enlaces para restablecer la contraseña e invitaciones | Se guarda solo su hash. La única copia legible es la del correo que recibes. |
| Roles y permisos | Cada persona entra con su propio usuario y un rol. El permiso se revisa en el servidor en cada petición: ocultar una opción del menú no es lo que protege. |
3. Conexión y navegador
| Qué | Cómo |
|---|---|
| Conexión | Solo HTTPS. Una petición por HTTP se redirige a HTTPS, y el servidor envía
Strict-Transport-Security para que el navegador no vuelva a
intentarlo sin cifrar. |
| Cookie de sesión | Secure, HttpOnly y SameSite=Lax,
sin dominio compartido: no viaja sin cifrar, JavaScript no puede leerla y
no se envía a otro subdominio. El servidor no acepta identificadores de
sesión que él no haya creado. |
| Falsificación de peticiones | Toda acción que cambia datos dentro de la cuenta exige un token CSRF ligado a tu sesión. |
| Encabezados | X-Content-Type-Options: nosniff,
X-Frame-Options: SAMEORIGIN —el CRM no se puede incrustar en
otro sitio; la única excepción son los formularios públicos, que están
hechos para ponerse en tu página y no muestran nada de la cuenta—,
Referrer-Policy: strict-origin-when-cross-origin
y Permissions-Policy sin acceso a ubicación, micrófono ni
cámara. |
4. API
- Una llave se muestra una sola vez, al crearla. Después solo guardamos su hash SHA-256 y un prefijo para que puedas distinguir tus llaves.
- Cada llave pertenece a un espacio de trabajo y solo alcanza ese espacio.
- Se revocan desde Configuración, y dejan de funcionar en cuanto se suspende la empresa o el espacio de trabajo.
- Las peticiones tienen un límite de frecuencia.
5. Servicios conectados y pagos
- Correo. Cada empresa envía con su propia cuenta, de Mailgun o de un servidor SMTP. Si no ha conectado una, el correo no sale: no hay una cuenta compartida de respaldo que mezcle tu reputación de envío con la de otras empresas.
- SMS. Igual, con la cuenta de Twilio de cada empresa.
- Pagos. Cada espacio de trabajo usa su propia llave de Stripe, y tu cliente paga en Stripe Checkout: los datos de la tarjeta se capturan en Stripe y no pasan por nuestro servidor. La llave no se vuelve a mostrar completa, solo sus últimos cuatro caracteres.
- Mensajes que llegan. Un correo o un SMS entrante solo se acepta si trae la firma válida del proveedor; en el correo, además, la firma tiene que tener menos de quince minutos.
- Enlaces para darse de baja. Van firmados, así que nadie puede fabricar uno para dar de baja a otra persona.
6. Acceso de nuestro personal
El personal autorizado de inSpace puede entrar a la cuenta de un cliente para dar soporte o resolver una falla. Así funciona:
- Solo puede hacerlo un administrador de la plataforma, y no sirve para entrar como otro administrador de la plataforma.
- El acceso usa un enlace de un solo uso que caduca a los sesenta segundos.
- Queda en la bitácora de auditoría al pedirlo, al entrar y al salir, junto con quién lo hizo.
- Mientras dura, la pantalla de quien entró muestra un aviso fijo de que está dentro de la cuenta de otra persona.
7. Si algo sale mal
Ningún sistema es infalible. Si ocurriera una vulneración que afecte tus datos de forma significativa, te lo comunicaremos sin dilación, como establece el Aviso de Privacidad.
Esta página cambia cuando cambia lo que hace el sistema. La fecha de arriba es la de su última revisión.