Saltar a contenido

Seguridad sobre los datos#

Empowerment Center protege los datos en dos direcciones: los universos deciden qué filas ve cada usuario y los privilegios de acceso de las dimensiones y las métricas deciden qué columnas ve. Esta página explica las dos para quien diseña los permisos. Cómo se crean los privilegios de datos y los universos en el editor se explica en Administración del metadata.

Antes de empezar#

  • Para crear privilegios de datos, asignarlos a dimensiones y métricas y definir universos: Administración del Metadata.
  • Para dar esos privilegios a los usuarios, por sus roles: Administración de Usuarios.

Las dos reglas se aplican igual en todos los caminos: los libros y sus documentos, el portal, las suscripciones y las alertas, los marcadores, la incrustación, la API de consulta y el MCP. No hay que configurar nada aparte para cada uno.

Filas y columnas que ve un usuario Tabla de facturas de ejemplo: el universo «Zona Norte» deja ver solo las filas de la zona Norte y el privilegio «Datos confidenciales», que no tiene, oculta la columna Margen; lo que ve comercial.norte es la combinación de los dos. Universo «Zona Norte»: filas que ve Privilegio «Datos confidenciales»: columna que no ve Zona Cliente Importe neto Margen Norte Distribuciones Cantábrico 12 450 2180 Este Levante Suministros 8920 1340 Norte Talleres Ebro 5310 960 Sur Almacenes Guadalquivir 15 780 3020 Norte Comercial Bierzo 7640 1410 Este Ferretería Mediterránea 4260 720 Lo que ve comercial.norte
Filas y columnas que ve un usuario Tabla de facturas de ejemplo: el universo «Zona Norte» deja ver solo las filas de la zona Norte y el privilegio «Datos confidenciales», que no tiene, oculta la columna Margen; lo que ve comercial.norte es la combinación de los dos. Universo «Zona Norte»: filas que ve Privilegio «Datos confidenciales»: columna que no ve Zona Cliente Importe neto Margen Norte Distribuciones Cantábrico 12 450 2180 Este Levante Suministros 8920 1340 Norte Talleres Ebro 5310 960 Sur Almacenes Guadalquivir 15 780 3020 Norte Comercial Bierzo 7640 1410 Este Ferretería Mediterránea 4260 720 Lo que ve comercial.norte
Filas y columnas que ve un usuario Ver a tamaño completo Ver a tamaño completo

Universos: qué filas ve cada usuario#

Un universo asocia a una tabla de hechos una condición y un privilegio: quien tiene ese privilegio solo ve las filas de la tabla que cumplen la condición. La condición se escribe en el SQL del motor, sin WHERE, sobre las columnas de la tabla («la zona del cliente es la Norte»). Los universos son de cada conexión.

Reglas#

  1. Un universo restringe a quien tiene su privilegio. Quien no tiene ninguno de los privilegios con universo de una tabla ve todas sus filas.
  2. Los universos de un usuario se suman. Con dos privilegios que tienen universo en la misma tabla, el usuario ve las filas que cumplen cualquiera de las dos condiciones.
  3. Se propagan hacia el detalle. El universo de una tabla maestra limita también las tablas que dependen de ella por las relaciones del metadata, aunque la consulta no use la maestra: si un comercial solo ve sus clientes, solo ve también las facturas de esos clientes.
  4. Se aplican también al escribir. Un formulario solo modifica o elimina registros que el usuario puede ver, y no deja dar de alta ni dejar un registro fuera de sus universos.
  5. Administración del Sistema no los salta. Un administrador ve las filas que le dejen sus privilegios de datos, como cualquier otro usuario.

Las reglas 1 y 2 tienen una consecuencia que conviene tener presente al diseñar: dar un privilegio con universo restringe, pero dar un segundo amplía, y quitar el último privilegio con universo de una tabla abre todas sus filas.

Ejemplo#

En la demostración, cada zona comercial tiene su privilegio («Zona Norte», «Zona Este»…) con universos en las tablas de clientes, facturas, incidencias, vendedores y objetivos:

Usuario Privilegios de zona Ve
comercial.norte Zona Norte Solo los clientes, facturas y vendedores de la zona Norte
jefe.noreste Zona Norte y Zona Este Los de las dos zonas
direccion Ninguno Todos
El libro Ventas por zona abierto por comercial.norte, con solo los datos de la zona NorteEl libro Ventas por zona abierto por comercial.norte, con solo los datos de la zona Norte
El libro Ventas por zona abierto por comercial.norte, con solo los datos de la zona Norte

Diseñar los universos#

  • Cree un privilegio por cada «trozo» de datos que se asigne a alguien (una zona, una delegación, una empresa del grupo) y póngale un universo en cada tabla que haya que limitar.
  • Cuando una tabla de detalle ya depende de una maestra limitada por el metadata, no le hace falta su propio universo: se propaga. Revise que las relaciones existen.
  • Pruebe cada universo con un usuario que solo tenga ese privilegio de datos (y los de función).
  • Tenga en cuenta la regla 1 con los usuarios nuevos: si alguien no recibe ningún privilegio de zona, ve todas las zonas.

Atención

No se puede eliminar un privilegio que usa un universo: ECenter lo impide. Si quita antes el universo, quien tenga el privilegio verá todas las filas de esa tabla. Haga esos cambios sabiendo a quién afectan.

Seguridad por columnas: qué dimensiones y métricas ve#

Cada dimensión y cada métrica tiene un privilegio de acceso. Por defecto es Sin nivel definido, que tienen casi todos los usuarios; para proteger una, quien diseña el metadata le pone otro («Datos confidenciales»).

Reglas#

  • Una dimensión o una métrica se ve si el usuario tiene su privilegio de acceso.
  • Una métrica calculada (una fórmula sobre otras métricas) se ve si el usuario tiene su privilegio y ve todas las métricas que usa.
  • Un nivel de una jerarquía que se ve con el nivel superior oculto aparece como raíz.
  • Lo que el usuario no ve no se consulta ni se le envía: no sale en los árboles para elegir, ni en los datos, ni en la información del documento, ni en el SQL.
  • Administración del Sistema no ve por serlo lo protegido con un privilegio de datos.

Qué ve un usuario en un documento que usa algo que no ve#

Un documento guardado por otra persona puede usar una métrica o una dimensión que el usuario no ve. ECenter no falla: lo calcula sin ello y lo avisa.

Documento Qué se quita Deja de servir si
Cubo y listado Las dimensiones de los ejes y las métricas ocultas, con sus columnas No queda ninguna métrica (cubo) o dimensión (listado)
Gráfico Las métricas ocultas y las series que las usan; el profundizar se corta en el primer paso oculto Su dimensión de valores está oculta o no queda ninguna métrica
Mapa Las temáticas que usan algo oculto Nunca: queda el mapa de capas
Formulario Los campos ocultos No queda ningún campo

Bajo la cabecera del documento aparece el aviso «Este documento se muestra sin 2 métricas a las que usted no tiene acceso.». Se dicen siempre cuántas, nunca cuáles: los nombres de lo protegido no se revelan. En un bloque del portal, una insignia dice cuántos elementos faltan; en una suscripción, «2 columnas ocultas por sus permisos».

El cubo Margen por zona abierto por analista, sin las métricas de margen y con el aviso de lo ocultoEl cubo Margen por zona abierto por analista, sin las métricas de margen y con el aviso de lo oculto
El cubo Margen por zona abierto por analista, sin las métricas de margen y con el aviso de lo oculto

Si el documento deja de servir para ese usuario, o si la segmentación de su sección usa una dimensión que no ve, no se calcula para él: el documento dice «El documento se basa en datos a los que usted no tiene acceso» o «La segmentación de la sección usa 1 dimensión a la que usted no tiene acceso». Esos fallos llevan el código COLUMNS_HIDDEN.

Solo lectura#

Lo que usa algo que el usuario no ve es de solo lectura para él: puede consultarlo, pero no modificarlo. Al intentar guardar un documento o una segmentación así, ECenter lo rechaza («… usa datos a los que usted no tiene acceso: puede consultarlo, pero no modificarlo»; código HIDDEN_COLUMNS_NOT_EDITABLE), y los botones de modificar aparecen desactivados con el motivo «Usa datos a los que usted no tiene acceso». Lo demás del libro (otras secciones, otros documentos, el nombre) sí lo puede cambiar.

En un formulario solo es de solo lectura el diseño: los datos que el usuario ve se siguen editando, y nunca se escribe en una columna que no ve.

Peticiones que nombran algo oculto#

Una petición que pide expresamente algo que el usuario no ve (desde la API de consulta, el MCP, un recálculo con otra definición, un valor para una alerta…) se rechaza con un 403 y el código COLUMNS_HIDDEN («La petición usa 1 métrica a la que usted no tiene acceso»), con los identificadores que envió y nunca los nombres. Así no se puede averiguar lo protegido probando peticiones. Cada rechazo queda en la auditoría.

El portal y los datos conservados#

  • Publicar congela lo que ve quien publica: si no ve algo, se publica sin ello.
  • Quien abre un documento publicado lo ve sin las columnas que él no ve, aunque las viera quien lo publicó. Las filas congeladas son las de quien publicó; los documentos dinámicos se calculan con los universos de quien los abre.
  • Los datos conservados de un documento solo los recibe quien tiene exactamente los mismos privilegios que quien los calculó. Los demás reciben un cálculo propio.

Borrar un privilegio no abre nada#

Al eliminar un privilegio de datos, nada de lo que protegía queda abierto (vea Roles y privilegios):

Lo que usaba el privilegio Qué pasa
Acceso de dimensiones, métricas y listas Pasa a Administración del Metadata: solo lo ve quien administra el metadata, que le pondrá otro privilegio.
Edición de tablas y dimensiones Pasa a los privilegios genéricos de edición.
Edición de los valores de una tabla auxiliar No la puede hacer nadie.
Libros, páginas del portal y datos externos Quedan cerrados para quien no los administre.
Universos Impiden eliminarlo.

Avisos al diseñar el metadata#

  • El editor del metadata avisa, sin impedir guardar, cuando una métrica calcula con columnas protegidas con otro privilegio: quien ve la métrica podría deducir algo de esas columnas.
  • Antes de cambiar el privilegio de una dimensión o una métrica, mire con «¿Quién usa…?» del editor qué documentos la usan: quien deje de verla los verá sin ella.

Véase también#