Introducción
Este plugin se usa en coordinación con los plugins de tecnologías de almacenamiento conectadas a LDAP para provisionar los grupos que representan a los DSA y adicionalmente gestiona las membresías que representan la aceptación de los DSA por parte de los usuarios.
Servicios disponibles en el plugin
-
Crear grupos: Permite crear grupos con usuarios.
-
Asignar/desasignar usuarios: Sirve para añadir o eliminar usuarios en los grupos creados por el plugin.
-
Eliminar grupos: Eliminar grupos previamente creados.
Modelo de integración
Gobierno activo de permisos de acceso
De forma general, los DSA (Data Sharing Agreements) de Anjana Data Platform se representan en AD/LDAP como grupos, y los usuarios firmantes de cada acuerdo se gestionan como miembros de dichos grupos. De este modo, la pertenencia al grupo materializa el acceso efectivo a los datos gobernados por el DSA.
Anjana Data Platform crea, actualiza y elimina estos grupos de forma automática, incluyendo o excluyendo usuarios en función de los procesos de adherencia y desadherencia definidos en la plataforma.
Los grupos creados por Anjana Data Platform siguen la siguiente nomenclatura:
<prefijo configurable>_<nombre lógico del DSA>_v<nº de versión del DSA>
Donde:
-
<prefijo configurable>: prefijo definido por la organización para identificar los grupos gestionados por Anjana Data Platform. Configurable en el YAML del plugin. -
<nombre lógico del DSA>: nombre funcional del acuerdo tal y como figura en Anjana. -
v<nº de versión del DSA>: número de versión del DSA, que permite distinguir versiones activas e históricas.
Anjana Data Platform interactúa con el gestor de identidades corporativo mediante el protocolo LDAP, a través del cual ejecuta las operaciones descritas para la provisión de grupos y la gestión de sus miembros.
Credenciales requeridas
El plugin requiere de una credencial con los siguiente permisos:
-
Creación, modificación y eliminación de grupos (
groupOfNames o groups) dentro de la OU seleccionada -
Modificación de miembros de grupos
Si se usa como instancia de plugin complemento para otra instancia de otro plugin diferente hay que tener en cuenta que cada tecnología es diferente, por lo tanto, la configuración de cada uno de ellos puede variar.
Limitaciones
-
El nombre del DSA con el que se va a crear el grupo no debe superar los 60 caracteres, aunque se deberá revisar las limitaciones de la implementación AD en particular que se tiene implementado en caso de que varíe.
-
En la ruta de la rama generada con la configuración de base + baseUser no deben existir usuarios con el mismo valor de username, aunque estén en sub ramas distintas.
-
El nombre de la clase con la que se crean por defecto los grupos es groupOfNames. Como se explica más adelante, ese tipo de clase no permite crear grupos sin usuarios por lo que si, debido a la configuración, no hay usuarios asignados como owners en el DSA, la creación del grupo en LDAP fallará.
No obstante, existen otros tipos de clases que sí permiten crear el grupo en LDAP sin incluir usuarios como el tipo group.
Configuración
En la https://wiki.anjanadata.com/es/configuracion/25.1/configuracion-tecnica y en https://wiki.anjanadata.com/es/configuracion/25.1/tot-despliegue-de-plugins hay algunas directrices.
Existe un YAML de ejemplo para facilitar la configuración en https://wiki.portal.anjanadata.com/wiki/x/OwC5D con explicaciones de las propiedades y valores por defecto.
Este plugin puede conectarse a varias instancias de la misma tecnología, también se puede ver en el YAML de ejemplo.
TLS
Disponibilidad de configuración, si se requiere, bajo conexión ldaps://
Windows AD
Cuando se trabaje con Windows AD será obligatorio incluir las propiedades de sAMAccountName y groupParam.instanceType (ver en la configuración de ejemplo) para que servidores como SQLServer puedan entender los nombres de los grupos del AD.
Plugin de Ranger
En el caso de que se utilice el plugin de Tot LDAP en conjunto con Ranger y Active Directory, se debe tener en cuenta que se necesita un mecanismo para sincronizar los cambios realizados en los grupos de Active Directory y grupos que usa HDFS, por ejemplo SSSD.
Para ese caso que se requiera tener el identificador del grupo (el common name) en más de un sitio (por ejemplo el sAMAccountName porque el mecanismo para sincronizar los cambios realizados en los grupos de Active Directory y grupos que usa HDFS lea ese atributo para la sincronización) se puede usar el extraGroupCn como se detalla en el ejemplo de configuración de arriba.
Es decir, si el usuario X se ha adherido a un DSA D, el resultado que se observará en Active Directory es la creación de un grupo D con un miembro, X.
Del mismo modo en Ranger se creará de una política con el grupo D y en HDFS al ejecutar por ejemplo “hdfs groups X” debe aparecer el grupo D.