lock-keyholeSeguridad de datos

circle-info

Seguridad de datos

Mondrian utiliza un modelo de seguridad basado en roles para restringir el acceso a los datos. Los usuarios se asignan a roles, y cada rol define qué datos pueden ver dentro del cubo OLAP. Esto permite que una única base de datos analítica atienda a múltiples tipos de usuarios mostrando a cada usuario únicamente los datos autorizados.

RBAC
circle-info

Roles

Mondrian utiliza un modelo de seguridad basado en roles para restringir el acceso a los datos. Los usuarios se asignan a roles, y cada rol define qué datos pueden ver dentro del cubo ROLAP. Considere un rol de gerente de ventas:

las personas en esta posición necesitan visibilidad de las métricas de rendimiento de su equipo, cifras de ventas por producto y cuentas clave de clientes. Para cumplir estas responsabilidades, el gerente de ventas requiere acceso a datos que abarcan productos, transacciones de ventas, información de clientes y dimensiones relacionadas.

Dentro de Mondrian, los roles deben definirse explícitamente en el esquema donde se aplicarán. Crear un rol es sencillo: simplemente declare un elemento Role y especifique su atributo name para identificarlo.

circle-info

La configuración de roles en Pentaho Mondrian requiere establecer una conexión entre el sistema de autenticación de Pentaho y la capa de seguridad de Mondrian. Esto se logra mediante un componente mapeador de roles.

Ubicación de la configuración:

  • Archivo: pentahoObjects.spring.xml

  • Ruta: pentaho-solutions/system directorio

  • ID del bean: Mondrian-UserRoleMapper

El mapeador de roles traduce los roles de usuario de Pentaho en roles correspondientes de Mondrian, permitiendo a Mondrian aplicar las concesiones de seguridad apropiadas definidas en su esquema.

triangle-exclamation

Pentaho incluye tres tipos de mapeadores de roles incorporados para adaptarse a diferentes requisitos de seguridad y estructuras organizativas:

circle-info

Mapeador de roles uno a uno

El mapeador uno a uno es el enfoque de mapeo más sencillo. Pasa directamente los roles de usuario de Pentaho a Mondrian sin ninguna transformación. Por ejemplo, si un usuario tiene el rol "Sales Manager" en Pentaho, Mondrian recibe exactamente ese mismo rol "Sales Manager".

Este mapeador es ampliamente utilizado porque funciona sin problemas con las estructuras de roles organizacionales existentes: no es necesario crear nombres de roles separados ni mantener lógica de mapeo compleja entre Pentaho y Mondrian.

Parámetro de seguridad: failOnEmptyRoleList

Este mapeador incluye un importante parámetro de seguridad que controla el comportamiento cuando un usuario no tiene roles de Mondrian coincidentes:

  • Valor predeterminado (recomendado): El mapeador lanza una excepción si no se encuentra ningún mapeo de roles, evitando el acceso no autorizado. Esta es la configuración segura.

  • Configuración alternativa: Si se establece en false, a los usuarios sin roles coincidentes se les concederán permisos completos sobre todos los datos—efectivamente lo mismo que no tener seguridad configurada. Esta configuración debe evitarse en entornos de producción.

Mejor práctica: Mantenga el comportamiento predeterminado habilitado para asegurar que solo los usuarios con roles definidos explícitamente puedan acceder a sus datos de Mondrian.

¿Te fue útil?