Perfilado a nivel de atributo de Ontología
Disponible desde versión 2.2.0-hyperblast
Introducción
Esta funcionalidad aporta a las capacidades de Data Governance de Plataforma y permite que sobre los datos almacenados en una misma ontología se puedan establecer permisos personalizados a un usuario o rol.
De esta forma, como ejemplo podríamos decir que un cierto rol sólo tiene acceso a los datos de una ontología cuyo atributo ESTADO sea PUBLICADO, o cuyo atributo REGION sea CENTRO, o bien que un usuario determinado sólo puede acceder a datos pertenecientes a una determinada EMPRESA definida en un atributo de la ontología.
¿Cómo se usa?
Esta seguridad se configura en una nueva sección DATA ACCESS SETTINGS que aparece en la gestión de Ontologías. Una vez que la ontología se ha dado de alta, se puede acceder a la pestaña indicada:
Se podrá incluir restricciones a nivel de usuario y a nivel de rol dentro de Realm.
En caso de tratarse de un usuario, se podrá construir la restricción que se aplicará sobre todas las consultas que se efectúen sobre la ontología (en lenguaje SQL). Podrá aplicarse sobre todos los atributos que se considere necesario añadiendo los conectores OR y AND:
Al ir introduciendo atributos y valores de los mismos, se irá construyendo la restricción que se aplicará cuando el usuario recupere los datos:
Se construirá añadiendo la nueva condición a la anterior introducida (dependiendo del control AND u OR). Estas restricciones por usuario se mostrarán en la tabla de la derecha:
En el caso de querer eliminar una restricción, bastará con pulsar sobre el botón Remove. Además, la regla es editable para el caso de que la restricción a utilizar sea más compleja. Una vez introducidas las modificaciones habrá que pulsar sobre el control Update de la restricción para que los cambios tengan efecto.
Si se quieren definir restricciones para más usuarios, basta con ir seleccionando usuarios e ir añadiendolas:
Sólo existirá una restricción por usuario y ontología, por lo que habrá que introducir todas las condiciones en la misma regla (aunque apliquen a atributos diferentes).
Cuando el usuario realice una consulta sobre la ontología (en el ejemplo Restaurants), se aplicarán las restricciones de forma transparente al usuario:
Esta funcionalidad permite igualmente aplicar restricciones a nivel de ROL dentro de un Realm.
Para ello se seleccionará el Realm y a continuación el rol dentro de este al que se le aplicará las restricciones.
La restricción aparecerá en la lista, asociada al rol del realm seleccionado:
Se podrá añadir restricciones a distintos Roles de Realm, componiendolas de forma similar a las de usuario. Si se desean eliminar, se utilizará el control Remove y serán editables y actualizables mediante el botón Update.
Una vez asociadas al Rol, estas restricciones se aplicarán a todos los usuarios que estén asociados al Realm que se haya definido, con el rol seleccionado para la restricción.
Estos dos niveles de restricciones pueden combinarse, lo que permitirá establecer una mayor granularidad en el nivel de acceso. Además estas restricciones pueden aplicarse sobre todas las ontologías que se desee, pudiendo combinarlas en consultas complejas que realicen operaciones JOIN, UNION,…