Filtros por formulario — Restringir el acceso a los registros

En los formularios que cargan o editan registros de direcciones o inmuebles (por ejemplo, «Editar dirección», «Editar inmueble», «Completar datos»), un usuario podría, en teoría, acceder a cualquier registro que el usuario de la API tenga permiso para ver en onOffice manipulando el parámetro UUID de la URL. El filtro por formulario restringe esto.


¿Cuándo es importante?

Es crítico para formularios de acceso público que modifican registros:

  • Autocuestionario del inquilino, que actualiza un registro de dirección
  • Formulario de entrega de inmueble, que escribe en un inmueble
  • Formularios de respuesta al propietario/comprador
  • Formularios de corrección de datos mediante enlace de correo electrónico

Sin filtros, alguien con la estructura de URL correcta (?address[ID]=<UUID>) podría cargar cualquier registro en el área de visualización de la cuenta del usuario de la API, incluso si no tiene nada que ver con él.


Configuración

1. Crear un filtro en onOffice

Los filtros son una función estándar de onOffice: Módulo Direcciones / Inmuebles → Gestión de filtros → nuevo filtro.

Ejemplos de filtros:

  • «Solo inmuebles activos» (Estado = activo)
  • «Solo perfiles de búsqueda de la región X»
  • «Solo direcciones con tipo de contacto = inquilino»
  • «Solo estado > 5» (para propiedades listas para la venta)

2. Activar el filtro en el formulario de propform

En el editor de formularios → Campos de direcciones o inmuebles → Configuración de filtros → seleccionar el filtro de onOffice en el menú desplegable.

3. Efecto

Ahora el formulario solo puede cargar/editar registros que estén incluidos en el filtro. Si alguien intenta acceder a un UUID fuera del filtro → el formulario rechaza la solicitud.


Buenas prácticas

  • Filtros lo más específicos posible: solo registros que el formulario específico deba realmente procesar
  • Un filtro propio por formulario: los diferentes formularios suelen necesitar restricciones diferentes
  • Revisar los filtros periódicamente: si se desea que los nuevos registros se incorporen automáticamente al filtro, las condiciones del filtro deben ser dinámicas en consecuencia
  • Probar: intentar acceder al formulario con un UUID fuera del filtro; debería ser rechazado

Combinación con otros mecanismos de protección

El filtro por formulario es una capa de protección de datos, no una protección de acceso para el propio formulario. Complementariamente:

  • Lista blanca de IP: quién puede acceder al formulario
  • Contraseña del formulario: acceso solo con contraseña
  • Clave del formulario mediante parámetro URL: protección dinámica con token

Más información en la documentación sobre protección de formularios.


Relacionado