Modelo de integración
Gobierno activo
De forma general los DSA de Anjana Data se representan como roles con permisos predeterminados y los firmantes del DSA no tienen efecto en este plugin, su representación varía según donde se utilicen.
Anjana Data crea y elimina los roles de forma automática, al igual que aplica o elimina el uso de ese rol a usuarios afectados con el objetivo de materializar la adhesión o desadherencia de un usuario a un DSA.
Para gestionar los permisos y roles, el plugin se conecta a una instancia de Google IAM, la cual da acceso a una API que proporciona Google en su plataforma Cloud que gestiona el control de acceso e identidades sobre los recursos de la propia plataforma.
El contrato está representado por un rol custom con los permisos genéricos de acceso a la tecnología preconcedidos, los usuarios se asocian a dicho rol (adquieren dichos permisos) usando políticas en las cuales se termina de especificar el grano fino a nivel elemento en las tecnologías que lo permitan.
El nombre del rol (nombre del DSA y el prefijo configurado) debe de contener entre 3 y 64 caracteres y aplicar el siguiente patron [a-zA-Z0-9_\\.] (caracteres alfanuméricos, números y caracteres _ y .). Referencia: Naming resources | Google
Se pueden aplicar ciertas restricciones a la cantidad de usuarios relacionados con cada recurso. Estas limitaciones se pueden consultar en Quotas and limits | IAM Documentation | Google Cloud
Las acciones que se aplican sobre GCP son la siguientes:
-
Creación/eliminación de roles custom.
-
Asignación de roles a usuarios mediante políticas IAM con condiciones de aplicabilidad (para gestionar acceso a nivel elemento). En el plugin GCP IAM se recupera el nombre de los roles y es en otros plugins como el de GCP BigQuery y GCP Storage donde se asignan/eliminan dichos roles para los usuarios.
Credenciales requeridas
Las credenciales requeridas se deben configurar en el fichero yaml en la parte de “credentialsContent” de cada instancia configurada.
Creación de la cuenta de servicio
Para GCP es necesario crear una cuenta de servicio en IAM para cada plugin de forma individual y, tras eso, asignarle los permisos necesarios para la ejecución de las tareas específicas de cada plugin.

Para personalizar los permisos de forma adecuada es necesaria la creación de roles personalizados en los cuáles se engloban los permisos que luego son asociados a las cuentas de servicio.

Gobierno activo
Los permisos utilizados para el gobierno activo:
-
iam.roles.create
-
iam.roles.delete
-
iam.roles.list
Apis requeridas en proyecto:
-
Identity and Access Management (IAM) API
-
Admin API SDK
En resumen los permisos utilizados para el rol personalizado serán los siguientes:

Para asignar los permisos a la cuenta de servicio de BigQuery es necesario asignar el rol con los permisos al usuario:

Configuración
En la Configuración técnica y en Tot despliegue de plugins hay algunas directrices.
Existe un YAML de ejemplo para facilitar la configuración en Nexus / com / anjana / documentation (necesario login previo) 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 el YAML de ejemplo.