Significado | Concepto | Definición:

Una jerarquía de funciones es un término organizativo que se utiliza con mayor frecuencia en bases de datos y sistemas de seguridad informática. Los usuarios poseen roles en aumento que se ramifican hacia arriba como las ramas de un árbol. Como usuarios del sistema se asciende a través de estos roles. Heredan los atributos, deberes y variables relacionadas adicionales del rol que adoptan, sin perder ninguno de sus atributos de sus roles anteriores. La ventaja de esto es que permite un estándar organizacional simple para diseñar bases de datos y permisos de seguridad. Las desventajas provienen del hecho de que, a menudo, los roles individuales no se mezclan perfectamente entre sí, lo que obliga a construcciones incómodas o inadecuadas en el diseño del sistema.

Mujer haciendo el pino con una computadora

Imagínese una bola de nieve rodando cuesta abajo. A medida que avanza, acumula cada vez más tamaño sin perder nada de su contenido original. Cuando llega al final de la colina, o al nivel superior de la base de datos, se ha expandido mucho más allá de su tamaño original. Este es el concepto básico de una jerarquía de roles.

Por ejemplo, considere una jerarquía de funciones de una base de datos de empleados. El nivel más elemental de la base de datos será la tabla Empleados, que naturalmente contiene todos los registros de todas las personas que trabajan en la empresa, ya que todos son empleados. Arriba Empleados podría estar la tabla Gerentes, que podría agregar atributos adicionales como listas de los empleados que supervisa cada gerente . Sin embargo, la mesa de Gerentes será naturalmente más exclusiva; ya que todo gerente es un empleado, pero no todos los empleados lo son. La tabla de jerarquía de roles continuará “goteando” en forma de pirámide, posiblemente agregando una tabla para gerentes de sucursal, gerentes corporativos, vicepresidentes, etc.

Desde una perspectiva de seguridad, la cima de la jerarquía sería un administrador de sistema sin restricciones, que puede realizar cualquier modificación o cambio en un sistema informático. Mientras que el nivel más bajo sería un usuario simple, que solo podría acceder a un puñado de programas sin que se le permita realizar cambios sustanciales. En ambos casos, ya sea en una base de datos o en una situación de seguridad, el esquema de jerarquía de roles permite un “sangrado hacia arriba” efectivo, lo que permite a los usuarios del sistema migrar de una posición a la siguiente en un formato bastante lineal.

La desventaja de esto proviene de organizaciones complejas, en las que los atributos de una entidad no necesariamente se mezclan suavemente con otra. Considere un caso en el que los empleados ascienden a un puesto de dirección después de desempeñar un papel como programadores o trabajadores de recursos humanos . Suponga que las reglas de la empresa prohíben que las personas trabajen como programadores y como trabajadores de recursos humanos. Ahora, de acuerdo con la estructura de la jerarquía de roles, todos en la tabla Gerentes deben heredar tanto los atributos de un programador como los de alguien que trabaja en recursos humanos. Esto da como resultado espacio desperdiciado y atributos nulos dentro de la base de datos, ya que ningún administrador poseerá los atributos de un programador y de alguien en recursos humanos.