La confusion entre permisos y reglas: un caso real
Imagina que en tu empresa, un vendedor entra a Odoo y ve todos los pedidos de venta, incluso las comisiones de sus companeros. Al mismo tiempo, alguien borro un pedido importante y nadie sabe como ocurrio. Ambas situaciones tienen la misma raiz: ?quien puede ver y hacer que en Odoo? Esto no viene resuelto de fabrica, lo configuras tu. Y se configura con dos mecanismos que todo el mundo confunde: los permisos de acceso y las reglas de registro. En este articulo vas a dominarlos desde cero, paso a paso y con ejemplos reales de empresa. Al terminar, podras decidir con precision quien ve que y quien puede hacer que en cualquier Odoo.
Modelo, registro y campo: los tres pilares de la seguridad
Antes de tocar los candados de seguridad, hay que saber que estamos protegiendo. En Odoo, absolutamente todo se reduce a tres palabras: modelo, registro y campo.
Modelo es un tipo de cosa que Odoo puede manejar. Por ejemplo, contactos, pedidos de venta, facturas, productos. Cada modelo tiene un nombre interno, como product.product o account.move. Cuando haces clic en un menu, usualmente te lleva a un modelo.
Ejemplo practico: En una empresa de muebles, el modelo "Productos" contiene todos los articulos que venden. Si entras al menu Productos, estas viendo el modelo de productos. Un gerente de ventas necesita acceso al modelo de pedidos de venta, mientras que el almacenero solo necesita el modelo de productos y stock. Con Ganemo, implementamos estos permisos de forma precisa para que cada rol vea solo lo necesario.
Registro es una instancia especifica de un modelo. Por ejemplo, el contacto "Abigail Peterson" es un registro en el modelo de contactos. El pedido "S0026" es un registro en el modelo de pedidos de venta.
Ejemplo practico: Si un vendedor solo debe ver sus propios pedidos, estamos hablando de restringir registros dentro del modelo de pedidos. No todos los pedidos, solo aquellos donde el vendedor sea el usuario actual. En Ganemo, configuramos reglas de registro para que cada vendedor vea unicamente sus pedidos, evitando la exposicion de comisiones ajenas.
Campo es cada dato dentro de un registro. Por ejemplo, en el pedido S0026, el campo "Vendedor" o "Fecha". Los campos son las columnas de la tabla.
Ejemplo practico: Imagina que en el registro de un pedido, el campo "Comision" solo debe ser visible para el gerente. Con reglas de campo, podemos ocultar ese campo para vendedores. Ganemo te ayuda a definir que campos mostrar segun el perfil del usuario.
Las cuatro operaciones basicas: CRUD
Con cualquier registro solo puedes hacer cuatro cosas: Crear, Leer, Actualizar (editar) y Eliminar. En ingles Create, Read, Update, Delete (CRUD). Toda la seguridad de Odoo gira alrededor de estas cuatro operaciones.
Crear: cuando das clic en "Nuevo" para agregar un registro.
Ejemplo practico: Solo los usuarios del grupo "Ventas" pueden crear nuevos pedidos. Si un usuario de almacen intenta crear un pedido, Odoo se lo impide. Configuramos los permisos de acceso en el modelo de pedidos para que solo ciertos grupos tengan permiso de crear.
Leer: ver registros existentes. Es la operacion mas comun.
Ejemplo practico: Un vendedor solo puede leer sus propios pedidos, no los de otros. Esto se logra con una regla de registro que filtra por el campo "Vendedor" igual al usuario actual. Ganemo implementa estas reglas facilmente.
Actualizar: modificar un registro existente.
Ejemplo practico: Un vendedor puede editar el precio de un pedido, pero no modificar el descuento maximo. Configuramos permisos de acceso a nivel de campo para restringir la actualizacion de ciertos campos.
Eliminar: borrar un registro.
Ejemplo practico: Solo los gerentes pueden eliminar pedidos. Si un vendedor intenta borrar un pedido, Odoo lo bloquea. Con reglas de registro, podemos evitar que usuarios no autorizados eliminen registros.
Piensa conmigo: ?Es modelo o registro?
Refuerza tu aprendizaje: "Productos" en general es un modelo. "Silla Conference" es un registro dentro de ese modelo. "Categoria Office Furniture" es un campo dentro de ese registro. Comprender esta diferencia es clave para configurar permisos. Si quieres que todos vean la lista de productos, configuras permisos a nivel de modelo. Si quieres que solo vean productos activos, usas una regla de registro.
En Ganemo, nuestros expertos te guian en la configuracion de estos conceptos para que tu equipo trabaje con la informacion justa y necesaria, sin riesgos de seguridad.
?Como sabe Odoo quien es quien?
La pregunta real de cualquier empresa es: ?Como sabe Odoo que Ana, la vendedora, puede tocar los pedidos y el del almacen no? Esto se responde con usuarios y grupos. En el proximo articulo veremos como los managers siempre acaban pidiendo "que cada quien vea lo suyo". Con Ganemo, esa peticion se vuelve realidad.