Administración de identidades y acceso
En este artículo se describen las consideraciones de diseño y las recomendaciones para la administración de identidades y acceso. Se centra en la implementación de una plataforma de análisis a escala en la nube en Microsoft Azure. Dado que el análisis a escala en la nube es un componente crítico, debe seguir las instrucciones sobre las áreas de diseño de la zona de aterrizaje de Azure al diseñar la solución.
Este artículo se basa en consideraciones y recomendaciones sobre las zonas de aterrizaje de Azure. Para obtener más información, consulte el área de diseño de administración de identidades y acceso .
Diseño de zona de aterrizaje de datos
El análisis a escala en la nube admite un modelo de control de acceso mediante identidades de Microsoft Entra. El modelo usa el control de acceso basado en rol de Azure (RBAC de Azure) y las listas de control de acceso.
Revisa las actividades de administración y gestión de Azure que realizan tus equipos. Evalúe el análisis a escala de la nube en Azure. Determine la mejor distribución posible de responsabilidades dentro de su organización.
Asignaciones de roles
Para desarrollar, entregar y servir productos de datos de forma autónoma dentro de la plataforma de datos, los equipos de aplicaciones de datos requieren varios derechos de acceso dentro del entorno de Azure. Es importante tener en cuenta que debe usar diferentes modelos de acceso para entornos de desarrollo y superiores. Use grupos de seguridad siempre que sea posible para reducir el número de asignaciones de roles y para simplificar el proceso de administración y revisión de los derechos RBAC. Este paso es fundamental debido al número limitado de asignaciones de roles que puede crear para cada suscripción.
El entorno de desarrollo debe ser accesible para el equipo de desarrollo y sus respectivas identidades de usuario. Este acceso les permite iterar más rápidamente, obtener información sobre ciertas funcionalidades dentro de los servicios de Azure y solucionar problemas de forma eficaz. El acceso a un entorno de desarrollo puede ayudarle a desarrollar o mejorar la infraestructura como código y otros artefactos de código.
Después de confirmar que una implementación funciona según lo previsto en el entorno de desarrollo, se puede implementar continuamente en entornos superiores. Los entornos superiores, como la prueba y la producción, deben estar restringidos al equipo de la aplicación de datos. Solo una entidad de servicio debe tener acceso a estos entornos. Por lo tanto, todas las implementaciones deben ejecutarse a través de la identidad principal del servicio utilizando canalizaciones de integración continua y entrega continua (CI/CD). En el entorno de desarrollo, proporcione derechos de acceso tanto a una entidad de servicio como a las identidades de usuario. En entornos superiores, restrinja los derechos de acceso solo a la identidad de la entidad de servicio.
Para crear recursos y asignaciones de roles entre recursos en los grupos de recursos de la aplicación de datos, debe proporcionar derechos de Contributor
y User Access Administrator
. Estos derechos permiten a los equipos crear y controlar servicios en su entorno dentro de los límites de de Azure Policy.
Para reducir el riesgo de filtración de datos, es una mejor práctica en el análisis en la nube utilizar endpoints privados. El equipo de la plataforma Azure bloquea otras opciones de conectividad a través de directivas, por lo que los equipos de aplicaciones de datos necesitan derechos de acceso a la red virtual compartida de una zona de aterrizaje de datos. Este acceso es esencial para configurar la conectividad de red necesaria para los servicios que planean usar.
Para seguir el principio de privilegios mínimos, evite conflictos entre distintos equipos de aplicaciones de datos y tenga una separación clara de los equipos. Se trata de procedimientos recomendados de análisis a escala en la nube para crear una subred dedicada para cada equipo de aplicaciones de datos y crear una asignación de roles Network Contributor
para esa subred o ámbito de recursos secundarios. Esta asignación de roles permite a los equipos unirse a la subred mediante puntos de conexión privados.
Estas dos primeras asignaciones de roles permiten la implementación de autoservicio de servicios de datos dentro de estos entornos. Para abordar el problema de administración de costos, las organizaciones deben agregar la etiqueta del centro de costo a los grupos de recursos para habilitar la distribución y el reparto de los costos. Este enfoque genera conciencia en los equipos y ayuda a garantizar que toman decisiones fundamentadas sobre las SKU y los niveles de servicio necesarios.
Para habilitar el uso de autoservicio de otros recursos compartidos dentro de la zona de aterrizaje de datos, se requieren algunas asignaciones de roles adicionales. Si se requiere acceso a un entorno de Azure Databricks, las organizaciones deben usar SCIM Sync desde Microsoft Entra ID para proporcionar acceso. Este mecanismo de sincronización es importante porque sincroniza automáticamente usuarios y grupos de Microsoft Entra ID con el plano de datos de Azure Databricks. También quita automáticamente los derechos de acceso cuando un individuo abandona la organización o la empresa. En Azure Databricks, asigne a los equipos de aplicaciones de datos derechos de acceso Can Restart
a un clúster predefinido para que puedan ejecutar cargas de trabajo dentro del área de trabajo.
Los equipos individuales requieren acceso a la cuenta de Microsoft Purview para detectar recursos de datos dentro de sus respectivas zonas de aterrizaje de datos. A menudo, los equipos necesitan editar los recursos de datos catalogados que poseen para proporcionar detalles adicionales, como la información de contacto de los propietarios y expertos de datos. Teams también requieren la capacidad de proporcionar información más detallada sobre lo que cada columna de un conjunto de datos describe e incluye.
Resumen de los requisitos de RBAC
Para automatizar la implementación de zonas de aterrizaje de datos, se requieren los siguientes roles:
Nombre del rol
Descripción
Alcance
Implemente todas las zonas DNS privadas para todos los servicios de datos en una sola suscripción y grupo de recursos. La entidad de servicio debe ser Private DNS Zone Contributor
en el grupo de recursos DNS global que se creó durante la implementación de la zona de aterrizaje de administración de datos. Este rol es necesario para implementar registros A para los puntos de conexión privados.
(Ámbito del grupo de recursos) /subscriptions/{{dataManagement}subscriptionId}/resourceGroups/{resourceGroupName}
Para configurar el emparejamiento de red virtual entre la red de zona de aterrizaje de datos y la red de zona de aterrizaje de administración de datos, la entidad de servicio necesita derechos de acceso Network Contributor
en el grupo de recursos de la red virtual remota.
(Ámbito del grupo de recursos) /subscriptions/{{dataManagement}subscriptionId}/resourceGroups/{resourceGroupName}
Este permiso es necesario para compartir el entorno de ejecución de integración autohospedado que se implementa en el grupo de recursos integration-rg
con otras factorías de datos. También es necesario asignar el acceso a las identidades administradas de Azure Data Factory y Azure Synapse Analytics en los sistemas de archivos de la cuenta de almacenamiento correspondientes.
(Ámbito de recursos) /subscriptions/{{dataLandingZone}subscriptionId}
Nota
En un escenario de producción, puede reducir el número de asignaciones de roles. El rol Network Contributor
solo es necesario para configurar el emparejamiento de red virtual entre la zona de aterrizaje de administración de datos y la zona de aterrizaje de datos. Sin este rol, la resolución de DNS falla. Además, el tráfico entrante y saliente se bloquea debido a la falta de línea de visión hacia Azure Firewall.
El rol de Private DNS Zone Contributor
no es necesario si la implementación de registros A de DNS para los puntos de conexión privados se automatiza mediante directivas de Azure con el efecto deployIfNotExists
. Lo mismo sucede con el rol de User Access Administrator
porque se puede automatizar el despliegue mediante directivas de deployIfNotExists
.
Asignaciones de roles para productos de datos
Las siguientes asignaciones de roles son necesarias para implementar un producto de datos dentro de una zona de aterrizaje de datos:
Nombre del rol
Descripción
Alcance
Implemente todas las zonas DNS privadas para todos los servicios de datos en una sola suscripción y grupo de recursos. La entidad de servicio debe ser Private DNS Zone Contributor
en el grupo de recursos DNS global que se creó durante la implementación de la zona de aterrizaje de administración de datos. Este rol es necesario para implementar registros A para los puntos de conexión privados respectivos.
(Ámbito del grupo de recursos) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}
Implemente todos los servicios de streaming de integración de datos en un único grupo de recursos dentro de la suscripción de la zona de aterrizaje de datos. La entidad de servicio requiere una asignación de roles Contributor
en ese grupo de recursos.
(Ámbito del grupo de recursos) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}
Para implementar puntos de conexión privados en la subred de Azure Private Link especificada, que se creó durante la implementación de la zona de aterrizaje de datos, la entidad de servicio requiere acceso Network Contributor
en esa subred.
(Ámbito de grupo de recursos) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName} /providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}"
Acceso a otros recursos
Fuera de Azure, los equipos de aplicaciones de datos requieren acceso a un repositorio para almacenar artefactos de código, colaborar de forma eficaz e implementar actualizaciones y cambios de forma coherente en entornos superiores a través de CI/CD. Debe proporcionar un panel de proyecto para permitir el desarrollo ágil, el planeamiento de sprints, el seguimiento de tareas y la administración de comentarios y solicitudes de características de los usuarios.
Para automatizar CI/CD, establezca una conexión a Azure. Este proceso se realiza en la mayoría de los servicios a través de entidades de servicio. Debido a este requisito, los equipos deben tener acceso a una entidad de servicio para lograr la automatización en su proyecto.
Administrar el acceso a los datos
Administrar el acceso a los datos mediante grupos de Microsoft Entra. Agregue nombres principales de usuario o nombres principales de servicio a los grupos de Microsoft Entra. A continuación, agregue esos grupos a los servicios y conceda permisos al grupo. Este enfoque permite un control de acceso específico.
Para más información sobre cómo fortalecer la seguridad en zonas de aterrizaje para la administración de datos y zonas de aterrizaje de datos que gestionan su entorno de datos, consulte Autenticación para el análisis a escala en la nube en Azure.