Una plataforma de administración y análisis de datos empresariales proporciona un enclave en el que puedes almacenar, analizar y manipular información sensible mientras mantienes los controles de seguridad. Puedes usar la arquitectura de malla de datos empresarial para implementar una plataforma en Google Cloud para la administración y el análisis de datos. La arquitectura está diseñada para funcionar en un entorno híbrido, en el que los componentes de Google Cloud interactúan con tus componentes y procesos operativos existentes.
La arquitectura de la malla de datos empresarial incluye lo siguiente:
- Un repositorio de GitHub que contiene un conjunto de opciones de configuración, secuencias de comandos y código de Terraform para compilar lo siguiente:
- Un proyecto de gobernanza que te permite usar la implementación de Google del framework de controles clave de Cloud Data Management Capabilities (CDMS).
- Ejemplo de una plataforma de datos que admite flujos de trabajo interactivos y de producción.
- Un entorno de productor dentro de la plataforma de datos que admite varios dominios de datos Los dominios de datos son agrupaciones lógicas de elementos de datos.
- Un entorno de consumidor dentro de la plataforma de datos que admite varios proyectos de consumidores.
- Un servicio de transferencia de datos que usa Workload Identity Federation y la biblioteca de encriptación Tink para ayudarte a transferir datos a Google Cloud de forma segura.
- Ejemplo de un dominio de datos que contiene proyectos de transferencia, no confidenciales y confidenciales.
- Un ejemplo de un sistema de acceso a los datos que permite que los consumidores de datos soliciten acceso a los conjuntos de datos y que los propietarios de los datos otorguen acceso a esos conjuntos de datos. El ejemplo también incluye un administrador de flujos de trabajo que cambia los permisos de IAM de esos conjuntos de datos según corresponda.
- Una guía sobre la arquitectura, el diseño, los controles de seguridad y los procesos operativos que usas con esta arquitectura para implementar (este documento).
La arquitectura de malla de datos empresarial está diseñada para ser compatible con el plano de bases empresariales. El plano de base empresarial proporciona una serie de servicios de nivel base que esta arquitectura utiliza, como las redes de VPC y el registro. Puedes implementar esta arquitectura sin implementar el modelo de bases empresariales si tu entorno deGoogle Cloud proporciona la funcionalidad necesaria.
Este documento está dirigido a arquitectos de la nube, científicos de datos, ingenieros de datos y arquitectos de seguridad que pueden usar la arquitectura para compilar e implementar servicios de datos integrales en Google Cloud. En este documento,se supone que estás familiarizado con los conceptos de mallas de datos, Google Cloudservicios de datos y Google Cloud implementación del marco de trabajo de CDMC.
Arquitectura
La arquitectura de la malla de datos empresarial adopta un enfoque en capas para proporcionar las funciones que permiten la transferencia, el procesamiento y la administración de datos. La arquitectura está diseñada para implementarse y controlarse a través de un flujo de trabajo de CI/CD. En el siguiente diagrama, se muestra cómo la capa de datos que implementa esta arquitectura se relaciona con otras capas de tu entorno.
En este diagrama, se incluye lo siguiente:
- La infraestructura deGoogle Cloud proporciona funciones de seguridad, como la encriptación en reposo y la encriptación en tránsito, así como componentes básicos, como el procesamiento y el almacenamiento.
- La base empresarial te proporciona un modelo de referencia de recursos, como los sistemas de identidad, herramientas de redes, registro, implementación y supervisión que te permiten adoptar Google Cloud para tus cargas de trabajo de datos.
- La capa de datos proporciona varias capacidades, como la transferencia de datos, el almacenamiento de datos, el control de acceso a los datos y la administración de datos, la supervisión y el uso compartido de datos.
- La capa de aplicación representa varias aplicaciones diferentes que usan los recursos de la capa de datos.
- La CI/CD proporciona las herramientas para automatizar el aprovisionamiento, la configuración, la administración y la implementación de infraestructura, flujos de trabajo y componentes de software. Estos componentes te ayudan a garantizar implementaciones coherentes, confiables y auditables, a minimizar los errores manuales y a acelerar el ciclo de desarrollo general.
Para mostrar cómo se usa el entorno de datos, la arquitectura incluye un flujo de trabajo de datos de muestra. El flujo de trabajo de datos de muestra te guía a través de los siguientes procesos: gobernanza de datos, transferencia de datos, procesamiento de datos, uso compartido de datos y consumo de datos.
Decisiones arquitectónicas clave
En la siguiente tabla, se resumen las decisiones de alto nivel de la arquitectura.
Área de decisión | Decisión |
---|---|
Google Cloud arquitectura | |
Jerarquía de recursos |
La arquitectura usa la jerarquía de recursos del plano de bases empresariales. |
Redes |
La arquitectura incluye un servicio de transferencia de datos de ejemplo que usa la federación de identidades para cargas de trabajo y una biblioteca de Tink. |
Roles y permisos de IAM |
La arquitectura incluye roles segmentados de productores de datos, consumidores de datos, roles de administración de datos y roles de plataforma de datos. |
Servicios de datos comunes | |
Metadatos |
La arquitectura usa Data Catalog para administrar los metadatos de los datos. |
Administración de políticas central |
Para administrar las políticas, la arquitectura usa la implementación de Google Clouddel framework de CDMC. |
Administración de acceso a los datos |
Para controlar el acceso a los datos, la arquitectura incluye un proceso independiente que requiere que los consumidores de datos soliciten acceso a los recursos de datos al propietario de los datos. |
Calidad de los datos |
La arquitectura usa Cloud Data Quality Engine para definir y ejecutar reglas de calidad de los datos en columnas de tablas especificadas, y medir la calidad de los datos en función de métricas como la exactitud y la finalización. |
Seguridad de los datos |
La arquitectura usa etiquetado, encriptación, enmascaramiento, asignación de tokens y controles de IAM para proporcionar seguridad de los datos. |
Dominio de datos | |
Entornos de datos |
La arquitectura incluye tres entornos. Dos entornos (el de no producción y el de producción) son entornos operativos que se basan en canalización. Un entorno (de desarrollo) es un entorno interactivo. |
Propietarios de datos |
Los propietarios de los datos transfieren, procesan, exponen y otorgan acceso a los activos de datos. |
Consumidores de datos |
Los consumidores de datos solicitan acceso a los recursos de datos. |
Integración y operaciones | |
Canalizaciones |
La arquitectura usa las siguientes canalizaciones para implementar recursos:
|
Repositorios |
Cada canalización usa un repositorio independiente para permitir la separación de responsabilidades. |
Flujo del proceso |
El proceso requiere que los cambios en el entorno de producción incluyan a un remitente y a un revisor. |
Operaciones en la nube | |
Cuadros de evaluación de productos de datos |
El motor de informes genera cuadros de evaluación de productos de datos. |
Cloud Logging |
La arquitectura usa la infraestructura de registro del plano de bases empresariales. |
Cloud Monitoring |
La arquitectura usa la infraestructura de supervisión del plano de bases de la empresa. |
Identidad: Asigna roles a grupos
La malla de datos aprovecha la arquitectura existente de administración de ciclo de vida de identidad, autorización y autenticación del esquema de fundamentos empresariales. A los usuarios no se les asignan roles directamente. En su lugar, los grupos son el método principal de asignación de roles y permisos en IAM. Los roles y los permisos de IAM se asignan durante la creación del proyecto a través de la canalización de base.
La malla de datos asocia los grupos con una de las cuatro áreas clave: infraestructura, administración de datos, productores de datos basados en dominios y consumidores basados en dominios.
Los permisos de estos grupos son los siguientes:
- El permiso del grupo de infraestructura es la malla de datos en su totalidad.
- El alcance de los permisos de los grupos de administración de datos es el proyecto de administración de datos.
- Los permisos de productores y consumidores basados en dominios se limitan a su dominio de datos.
En las siguientes tablas, se muestran los diversos roles que se usan en esta implementación de malla de datos y sus permisos asociados.
Infraestructura
Grupo | Descripción | Funciones |
---|---|---|
|
Administradores generales de la malla de datos |
|
Administración de datos
Grupo | Descripción | Funciones |
---|---|---|
|
Administradores del proyecto de administración de datos |
|
|
Desarrolladores que crean y mantienen los componentes de administración de datos |
Varios roles en el proyecto de administración de datos, incluidos |
|
Lectores de información sobre la administración de datos |
|
|
Administradores de seguridad del proyecto de administración |
|
|
Grupo con permiso para usar plantillas de etiquetas |
|
|
Grupo con permiso para usar plantillas de etiquetas y agregar etiquetas |
|
|
Grupo de cuentas de servicio para las notificaciones de Security Command Center |
Ninguno Este es un grupo para la membresía, y se crea una cuenta de servicio con este nombre, que tiene los permisos necesarios. |
Productores de datos basados en dominios
Grupo | Descripción | Funciones |
---|---|---|
|
Administradores de un dominio de datos específico |
|
|
Desarrolladores que compilan y mantienen productos de datos dentro de un dominio de datos |
Varios roles en el proyecto de dominio de datos, incluidos los roles de |
|
Los lectores de la información del dominio de datos |
|
|
Editores de entradas de Data Catalog |
Roles para editar entradas de Data Catalog |
|
Administradores de datos del dominio de datos |
Roles para administrar aspectos de metadatos y administración de datos |
Consumidores de datos basados en dominios
Grupo | Descripción | Funciones |
---|---|---|
|
Administradores de un proyecto de consumidor específico |
|
|
Desarrolladores que trabajan en un proyecto de consumidor |
Varios roles en el proyecto de consumidor, incluidos los roles de |
|
Los lectores de la información del proyecto de consumidor |
|
Estructura organizativa
Para diferenciar entre las operaciones y los datos de producción, la arquitectura usa diferentes entornos para desarrollar y lanzar flujos de trabajo. Las operaciones de producción incluyen la gobernanza, la trazabilidad y la repetibilidad de un flujo de trabajo, así como la auditabilidad de los resultados del flujo de trabajo. Los datos de producción se refieren a datos posiblemente sensibles que necesitas para administrar tu organización. Todos los entornos están diseñados para tener controles de seguridad que te permitan transferir y operar tus datos.
Para ayudar a los científicos de datos y a los ingenieros, la arquitectura incluye un entorno interactivo, en el que los desarrolladores pueden trabajar directamente con el entorno y agregar servicios a través de un catálogo seleccionado de soluciones. Los entornos operativos se impulsan a través de canalizaciones que tienen una arquitectura y una configuración codificadas.
Esta arquitectura usa la estructura organizativa del plano de bases empresariales como base para implementar cargas de trabajo de datos. En el siguiente diagrama, se muestran las carpetas y los proyectos de nivel superior que se usan en la arquitectura de malla de datos empresarial.
En la siguiente tabla, se describen las carpetas y los proyectos de nivel superior que forman parte de la arquitectura.
Carpeta | Componente | Descripción |
---|---|---|
|
|
Contiene la canalización de implementación que se usa para compilar los artefactos de código de la arquitectura. |
|
Contiene la infraestructura que usa el catálogo de servicios para implementar recursos en el entorno interactivo. |
|
|
Contiene todos los recursos que usa la implementación de Google Clouddel framework de CDMC. |
|
|
|
Contiene los proyectos y recursos de la plataforma de datos para desarrollar casos de uso en modo interactivo. |
|
|
Contiene los proyectos y recursos de la plataforma de datos para probar los casos de uso que deseas implementar en un entorno operativo. |
|
|
Contiene los proyectos y recursos de la plataforma de datos para la implementación en producción. |
Carpeta de la plataforma de datos
La carpeta de la plataforma de datos contiene todos los componentes del plano de datos y algunos de los recursos de CDMC. Además, la carpeta de la plataforma de datos y el proyecto de administración de datos contienen los recursos de CDMC. En el siguiente diagrama, se muestran las carpetas y los proyectos que se implementan en la carpeta de la plataforma de datos.
Cada carpeta de la plataforma de datos incluye una carpeta de entorno (producción, no producción y desarrollo). En la siguiente tabla, se describen las carpetas dentro de cada carpeta de la plataforma de datos.
Carpetas | Descripción |
---|---|
Productores |
Contiene los dominios de datos. |
Consumidores |
Contiene los proyectos de consumidor. |
Dominio de datos |
Contiene los proyectos asociados con un dominio en particular. |
Carpeta de productores
Cada carpeta de productores incluye uno o más dominios de datos. Un dominio de datos hace referencia a una agrupación lógica de elementos de datos que comparten un significado, un propósito o un contexto comercial comunes. Los dominios de datos te permiten categorizar y organizar los recursos de datos dentro de una organización. En el siguiente diagrama, se muestra la estructura de un dominio de datos. La arquitectura implementa proyectos en la carpeta de la plataforma de datos para cada entorno.
En la siguiente tabla, se describen los proyectos que se implementan en la carpeta de la plataforma de datos para cada entorno.
Proyecto | Descripción |
---|---|
Transferencia |
El proyecto de transferencia transfiere datos al dominio de datos. La arquitectura proporciona ejemplos de cómo puedes transmitir datos a BigQuery, Cloud Storage y Pub/Sub. El proyecto de transferencia también contiene ejemplos de Dataflow y Cloud Composer que puedes usar para organizar la transformación y el movimiento de los datos transferidos. |
No confidencial |
El proyecto no confidencial contiene datos que se desidentificaron. Puedes enmascarar, contener, encriptar, asignar tokens o ofuscar datos. Usa etiquetas de políticas para controlar cómo se presentan los datos. |
Confidencial |
El proyecto confidencial contiene datos de texto simple. Puedes controlar el acceso a través de los permisos de IAM. |
Carpeta de consumidor
La carpeta de consumidor contiene proyectos de consumidor. Los proyectos de consumidores proporcionan un mecanismo para segmentar a los usuarios de datos según su límite de confianza requerido. Cada proyecto se asigna a un grupo de usuarios independiente y a este se le asigna acceso a los recursos de datos necesarios por proyecto. Puedes usar el proyecto para consumidores para recopilar, analizar y aumentar los datos del grupo.
Carpeta común
La carpeta común contiene los servicios que usan diferentes entornos y proyectos. En esta sección, se describen las funciones que se agregan a la carpeta común para habilitar la malla de datos empresarial.
Arquitectura de CDMC
La arquitectura usa la arquitectura de CDMC para la administración de datos. Las funciones de administración de datos residen en el proyecto de administración de datos de la carpeta común. En el siguiente diagrama, se muestran los componentes de la arquitectura de CDMC. Los números en el diagrama representan los controles clave que se abordan con los servicios de Google Cloud.
En la siguiente tabla, se describen los componentes de la arquitectura de CDMC que usa la arquitectura de malla de datos empresarial.
Componente de CDMC | servicioGoogle Cloud | Descripción |
---|---|---|
Componentes de acceso y ciclo de vida | ||
Administración de claves |
Cloud KMS |
Un servicio que administra de forma segura las claves de encriptación que protegen los datos sensibles. |
Administrador de registros |
Cloud Run |
Una aplicación que mantiene registros y registros completos de las actividades de procesamiento de datos, lo que garantiza que las organizaciones puedan hacer un seguimiento y auditar el uso de los datos. |
Política de archivo |
BigQuery |
Una tabla de BigQuery que contiene la política de almacenamiento de los datos |
Autorizaciones |
BigQuery |
Una tabla de BigQuery que almacena información sobre quién puede acceder a los datos sensibles. Esta tabla garantiza que solo los usuarios autorizados puedan acceder a datos específicos según sus roles y privilegios. |
Componentes de análisis | ||
Pérdida de datos |
Protección de datos sensibles |
Es un servicio que se usa para inspeccionar los recursos en busca de datos sensibles. |
Hallazgos de DLP |
BigQuery |
Una tabla de BigQuery que cataloga las clasificaciones de datos dentro de la plataforma de datos. |
Políticas |
BigQuery |
Una tabla de BigQuery que contiene prácticas de administración de datos coherentes (por ejemplo, tipos de acceso a los datos). |
Exportación de la facturación |
BigQuery |
Es una tabla que almacena la información de costos que se exporta de la Facturación de Cloud para permitir el análisis de las métricas de costos asociadas con los activos de datos. |
Cloud Data Quality Engine |
Cloud Run |
Una aplicación que ejecuta verificaciones de calidad de los datos para las tablas y las columnas. |
Hallazgos de la calidad de los datos |
BigQuery |
Es una tabla de BigQuery que registra las discrepancias identificadas entre las reglas de calidad de los datos definidas y la calidad real de los activos de datos. |
Componentes de los informes | ||
Programador |
Cloud Scheduler |
Un servicio que controla cuándo se ejecuta Cloud Data Quality Engine y cuándo ocurre la inspección de la protección de datos sensibles. |
Motor de informes |
Cloud Run |
Una aplicación que genera informes que ayudan a hacer un seguimiento y medir el cumplimiento de los controles del marco de trabajo de la CDMC |
Hallazgos y recursos |
BigQuery y Pub/Sub |
Un informe de BigQuery sobre discrepancias o inconsistencias en los controles de administración de datos, como etiquetas faltantes, clasificaciones incorrectas o ubicaciones de almacenamiento que no cumplen con los requisitos |
Exportaciones de etiquetas |
BigQuery |
Una tabla de BigQuery que contiene información de etiquetas extraída de Data Catalog |
Otros componentes | ||
Administración de políticas |
Servicio de políticas de la organización |
Es un servicio que define y aplica restricciones sobre dónde se pueden almacenar los datos geográficamente. |
Políticas de acceso basadas en atributos |
Access Context Manager |
Es un servicio que define y aplica políticas de acceso detalladas basadas en atributos para que solo los usuarios autorizados de ubicaciones y dispositivos permitidos puedan acceder a información sensible. |
Metadatos |
Data Catalog |
Un servicio que almacena información de metadatos sobre las tablas que se usan en la malla de datos. |
Tag Engine |
Cloud Run |
Una aplicación que agrega etiquetas a los datos en las tablas de BigQuery. |
Informes de CDMC |
Looker Studio |
Paneles que permiten que tus analistas vean los informes que generaron los motores de arquitectura de CDMC. |
Implementación de CDMC
En la siguiente tabla, se describe cómo la arquitectura implementa los controles de claves en el framework de CDMC.
Requisito del control de CDMC | Implementación |
---|---|
El motor de informes detecta los recursos de datos que no cumplen con los requisitos y publica los resultados en un tema de Pub/Sub. Estos resultados también se cargan en BigQuery para generar informes con Looker Studio. |
|
Se establece la propiedad de los datos migrados y generados por la nube |
Data Catalog captura automáticamente los metadatos técnicos de BigQuery. Tag Engine aplica etiquetas de metadatos empresariales, como el nombre del propietario y el nivel de sensibilidad, desde una tabla de referencia, lo que ayuda a garantizar que todos los datos sensibles estén etiquetados con la información del propietario para garantizar el cumplimiento. Este proceso de etiquetado automatizado ayuda a proporcionar administración de datos y cumplimiento, ya que identifica y etiqueta los datos sensibles con la información del propietario adecuada. |
La automatización y la obtención y el consumo de datos se rigen por la automatización. |
Data Catalog clasifica los activos de datos etiquetándolos con una marca |
Se administra la soberanía de los datos y el movimiento de datos entre límites |
El servicio de políticas de la organización define las regiones de almacenamiento permitidas para los recursos de datos, y Access Context Manager restringe el acceso según la ubicación del usuario. Data Catalog almacena las ubicaciones de almacenamiento aprobadas como etiquetas de metadatos. El motor de informes compara estas etiquetas con la ubicación real de los recursos de datos en BigQuery y publica las discrepancias como hallazgos con Pub/Sub. Security Command Center proporciona una capa adicional de supervisión, ya que genera resultados de vulnerabilidades si se almacenan datos o se accede a ellos fuera de las políticas definidas. |
Data Catalog almacena y actualiza los metadatos técnicos de todos los recursos de datos de BigQuery, lo que crea, de manera efectiva, un Data Catalog sincronizado de forma continua. Data Catalog garantiza que las tablas y vistas nuevas o modificadas se agreguen de inmediato al catálogo, lo que mantiene un inventario actualizado de los activos de datos. |
|
La protección de datos sensibles inspecciona los datos de BigQuery y identifica los tipos de información sensible. Luego, estos resultados se clasifican en función de una tabla de referencia de clasificación, y el nivel de sensibilidad más alto se asigna como una etiqueta en Data Catalog a nivel de la columna y la tabla. Tag Engine administra este proceso actualizando Data Catalog con etiquetas de sensibilidad cada vez que se agregan recursos de datos nuevos o se modifican los existentes. Este proceso garantiza una clasificación de datos actualizada constantemente en función de la sensibilidad, que puedes supervisar y generar informes sobre ella con Pub/Sub y herramientas de informes integrados. |
|
Los derechos de datos se administran, se aplican y se hace un seguimiento de ellas |
Las etiquetas de política de BigQuery controlan el acceso a los datos sensibles a nivel de la columna, lo que garantiza que solo los usuarios autorizados puedan acceder a datos específicos según la etiqueta de política asignada. IAM administra el acceso general al almacén de datos, mientras que Data Catalog almacena las clasificaciones de sensibilidad. Se realizan verificaciones periódicas para garantizar que todos los datos sensibles tengan las etiquetas de política correspondientes, y se informan las discrepancias con Pub/Sub para su solución. |
Se administra el acceso, el uso y los resultados éticos de los datos |
Los acuerdos de uso compartido de datos para proveedores y consumidores se almacenan en un almacén de datos de BigQuery dedicado para controlar los fines de consumo. Data Catalog etiqueta los recursos de datos con la información del acuerdo del proveedor, mientras que los acuerdos de consumidores están vinculados a las vinculaciones de IAM para el control de acceso. Las etiquetas de consulta aplican los propósitos de consumo, lo que requiere que los consumidores especifiquen un propósito válido cuando consulten datos sensibles, que se validan en función de sus derechos en BigQuery. Un registro de auditoría en BigQuery realiza un seguimiento de todo el acceso a los datos y garantiza el cumplimiento de los acuerdos de uso compartido de datos. |
La encriptación en reposo predeterminada de Google ayuda a proteger los datos almacenados en el disco. Cloud KMS admite claves de encriptación administradas por el cliente (CMEK) para una administración de claves mejorada. BigQuery implementa el enmascaramiento de datos dinámico a nivel de la columna para la desidentificación y admite la desidentificación a nivel de la aplicación durante la transferencia de datos. Data Catalog almacena etiquetas de metadatos para las técnicas de encriptación y desidentificación que se aplican a los recursos de datos. Las verificaciones automatizadas garantizan que los métodos de encriptación y desidentificación se alineen con las políticas de seguridad predefinidas, y las discrepancias se informen como hallazgos con Pub/Sub. |
|
Hay un marco de trabajo de privacidad de datos definido y operativo |
Data Catalog etiqueta los recursos de datos sensibles con información relevante para la evaluación del impacto, como la ubicación del sujeto y los vínculos a los informes de evaluación. Tag Engine aplica estas etiquetas en función de la sensibilidad de los datos y una tabla de políticas en BigQuery, que define los requisitos de evaluación en función de los datos y la residencia del sujeto. Este proceso de etiquetado automatizado permite la supervisión y la generación de informes continuos del cumplimiento de los requisitos de evaluación de impacto, lo que garantiza que se realicen evaluaciones del impacto de la protección de datos (DPIA) o de la protección de la privacidad (PIA) cuando sea necesario. |
El ciclo de vida de los datos está planificado y administrado |
Data Catalog etiqueta los recursos de datos con políticas de retención, en las que se especifican los períodos de retención y las acciones de vencimiento (como el archivo o la purga). El Administrador de registros automatiza la aplicación de estas políticas mediante la eliminación o el archivo de tablas de BigQuery según las etiquetas definidas. Esta aplicación forzosa garantiza el cumplimiento de las políticas del ciclo de vida de los datos y mantiene el cumplimiento de los requisitos de retención de datos, con cualquier discrepancia detectada y denunciada a través de Pub/Sub. |
Cloud Data Quality Engine define y ejecuta reglas de calidad de los datos en columnas de tablas especificadas y mide la calidad de los datos en función de métricas como la exactitud y la integridad. Los resultados de estas verificaciones, incluidos los porcentajes de éxito y los umbrales, se almacenan como etiquetas en Data Catalog. El almacenamiento de estos resultados permite la supervisión y la generación de informes continuos de la calidad de los datos, y cualquier problema o desviación de los umbrales aceptables se publica como hallazgos con Pub/Sub. |
|
Se establecen y aplican principios de administración de costos |
Data Catalog almacena métricas relacionadas con los costos de los activos de datos, como los costos de consulta, los costos de almacenamiento y los costos de salida de datos, que se calculan con la información de facturación exportada de la Facturación de Cloud a BigQuery. El almacenamiento de métricas relacionadas con los costos permite un seguimiento y un análisis de costos integrales, lo que garantiza el cumplimiento de las políticas de costos y el uso eficiente de los recursos, con las anomalías que se informan a través de Pub/Sub. |
Las funciones de linaje de datos integradas de Data Catalog hacen un seguimiento de la procedencia y el linaje de los recursos de datos, y representan visualmente el flujo de datos. Además, las secuencias de comandos de transferencia de datos identifican y etiquetan la fuente original de los datos en Data Catalog, lo que mejora la trazabilidad de los datos hasta su origen. |
Administración de acceso a los datos
El acceso de la arquitectura a los datos se controla a través de un proceso independiente que separa el control operativo (por ejemplo, la ejecución de trabajos de Dataflow) del control de acceso a los datos. El acceso de un usuario a un Google Cloud servicio se define por una inquietud ambiental o operativa, y un grupo de ingeniería de la nube lo aprovisiona y aprueba. El acceso de un usuario a los Google Cloud activos de datos (por ejemplo, una tabla de BigQuery) es una inquietud de privacidad, regulatoria o de gobernanza, y está sujeto a un acuerdo de acceso entre las partes productoras y consumidoras, y se controla a través de los siguientes procesos. En el siguiente diagrama, se muestra cómo se aprovisiona el acceso a los datos a través de la interacción de diferentes componentes de software.
Como se muestra en el diagrama anterior, los siguientes procesos controlan la integración de los accesos a los datos:
- Data Catalog recopila y registra los activos de datos de la nube.
- El administrador de flujos de trabajo recupera los recursos de datos de Data Catalog.
- Los propietarios de los datos se incorporan al administrador de flujos de trabajo.
El funcionamiento de la administración de acceso a los datos es el siguiente:
- Un consumidor de datos realiza una solicitud de un recurso específico.
- Se le avisa al propietario de los datos del activo sobre la solicitud.
- El propietario de los datos aprueba o rechaza la solicitud.
- Si se aprueba la solicitud, el administrador de flujos de trabajo pasa el grupo, el activo y la etiqueta asociada al asignador de IAM.
- El asignador de IAM traduce las etiquetas del administrador de flujos de trabajo en permisos de IAM y le otorga al grupo especificado permisos de IAM para el activo de datos.
- Cuando un usuario desea acceder al activo de datos, IAM evalúa el acceso al activo Google Cloud en función de los permisos del grupo.
- Si se permite, el usuario accede al activo de datos.
Redes
El proceso de seguridad de los datos se inicia en la aplicación de origen, que puede residir de forma local o en otro entorno externo al proyectoGoogle Cloud de destino. Antes de que se produzca cualquier transferencia de red, esta aplicación usa la federación de identidades para cargas de trabajo para autenticarse de forma segura en las APIs de Google Cloud. Con estas credenciales, interactúa con Cloud KMS para obtener o unir las claves necesarias y, luego, emplea la biblioteca de Tink para realizar la encriptación inicial y la desidentificación en la carga útil de datos sensibles según plantillas predefinidas.
Después de proteger la carga útil de datos, esta se debe transferir de forma segura al proyecto de transferencia de Google Cloud . En el caso de las aplicaciones locales, puedes usar Cloud Interconnect o, posiblemente, Cloud VPN. Dentro de la redGoogle Cloud , usa Private Service Connect para enrutar los datos hacia el extremo de transferencia dentro de la red de VPC del proyecto de destino. Private Service Connect permite que la aplicación de origen se conecte a las APIs de Google con direcciones IP privadas, lo que garantiza que el tráfico no esté expuesto a Internet.
Toda la ruta de red y los servicios de transferencia de datos de destino (Cloud Storage, BigQuery y Pub/Sub) dentro del proyecto de transferencia de datos están protegidos por un perímetro de Controles del servicio de VPC. Este perímetro aplica un límite de seguridad que garantiza que los datos protegidos que provienen de la fuente solo se puedan transferir a los serviciosGoogle Cloud autorizados dentro de ese proyecto específico.
Logging
Esta arquitectura usa las capacidades de Cloud Logging que proporciona el plano de base empresarial.
Canalizaciones
La arquitectura de malla de datos empresarial usa una serie de canalizaciones para aprovisionar la infraestructura, la orquestación, los conjuntos de datos, las canalizaciones de datos y los componentes de la aplicación. Las canalizaciones de implementación de recursos de la arquitectura usan Terraform como la herramienta de infraestructura como código (IaC) y Cloud Build como el servicio de CI/CD para implementar las configuraciones de Terraform en el entorno de la arquitectura. En el siguiente diagrama, se muestra la relación entre las canalizaciones.
La canalización de base y la canalización de infraestructura forman parte del plano de bases de la empresa. En la siguiente tabla, se describe el propósito de las canalización y los recursos que aprovisionan.
Canalización | Aprovisionado por | Recursos |
---|---|---|
Canalización base |
Arranque |
|
Canalización de infraestructura |
Canalización base |
|
Canalización del Catálogo de servicios |
Canalización de infraestructura |
|
Canalizaciones de artefactos |
Canalización de infraestructura |
Las canalizaciones de artefactos producen los diversos contenedores y otros componentes de la base de código que usa la malla de datos. |
Cada canalización tiene su propio conjunto de repositorios de los que extrae código y archivos de configuración. Cada repositorio tiene una separación de deberes en la que los remitentes y las aprobaciones de las implementaciones de código operativo son responsabilidades de diferentes grupos.
Implementación interactiva a través del catálogo de servicios
Los entornos interactivos son el entorno de desarrollo dentro de la arquitectura y existen en la carpeta de desarrollo. La interfaz principal del entorno interactivo es el catálogo de servicios, que permite a los desarrolladores usar plantillas preconfiguradas para crear instancias de los servicios de Google. Estas plantillas preconfiguradas se conocen como plantillas de servicio. Las plantillas de servicio te ayudan a hacer cumplir tu postura de seguridad, como hacer que la encriptación de CMEK sea obligatoria, y también evitan que tus usuarios tengan acceso directo a las APIs de Google.
En el siguiente diagrama, se muestran los componentes del entorno interactivo y cómo los científicos de datos implementan recursos.
Para implementar recursos con el catálogo de servicios, se realizan los siguientes pasos:
- El ingeniero de operaciones de MDE coloca una plantilla de recursos de Terraform para Google Clouden un repositorio de Git.
- El comando Git Commit activa una canalización de Cloud Build.
- Cloud Build copia la plantilla y los archivos de configuración asociados en Cloud Storage.
- El ingeniero de operaciones de MLOps configura el catálogo de servicios y las soluciones de este de forma manual. Luego, el ingeniero comparte el catálogo de servicios con un proyecto de servicio en el entorno interactivo.
- El científico de datos selecciona un recurso del catálogo de servicios.
- El catálogo de servicios implementa la plantilla en el entorno interactivo.
- El recurso extrae todas las secuencias de comandos de configuración necesarias.
- El científico de datos interactúa con los recursos.
Canalizaciones de artefactos
El proceso de transferencia de datos usa Cloud Composer y Dataflow para organizar el movimiento y la transformación de datos dentro del dominio de datos. La canalización de artefactos compila todos los recursos necesarios para la transferencia de datos y los mueve a la ubicación adecuada para que los servicios accedan a ellos. La canalización de artefactos crea los artefactos de contenedor que usa el orquestador.
Controles de seguridad
La arquitectura de malla de datos empresarial usa un modelo de seguridad de defensa en profundidad en capas que incluye las funciones Google Cloud , Google Cloudlos servicios y las capacidades de seguridad predeterminadas que se configuran a través del esquema de bases empresariales. En el siguiente diagrama, se muestran las capas de los diversos controles de seguridad de la arquitectura.
En la siguiente tabla, se describen los controles de seguridad asociados con los recursos de cada capa.
Capa | Recurso | Control de seguridad |
---|---|---|
Marco de trabajo de CDMC |
Google Cloud Implementación de CDMC |
Proporciona un marco de gobierno que ayuda a proteger, administrar y controlar tus activos de datos. Consulta el framework de controles clave de CDMC para obtener más información. |
Implementación |
Canalización de infraestructura |
Proporciona una serie de canalizaciones que implementan infraestructura, compilan contenedores y crean canalizaciones de datos. El uso de canalizaciones permite la auditabilidad, la trazabilidad y la repetibilidad. |
Canalización de artefactos |
Implementa varios componentes que no implementa la canalización de infraestructura. |
|
Plantillas de Terraform |
Compila la infraestructura del sistema. |
|
Open Policy Agent |
Ayuda a garantizar que la plataforma cumpla con las políticas seleccionadas. |
|
Red |
Private Service Connect |
Proporciona protecciones contra el robo de datos en torno a los recursos de la arquitectura en la capa de la API y la capa de IP. Te permite comunicarte con las APIs de Google Cloud mediante direcciones IP privadas para que puedas evitar exponer el tráfico a Internet. |
Red de VPC con direcciones IP privadas |
Ayuda a eliminar la exposición a amenazas de Internet. |
|
Controles del servicio de VPC |
Ayuda a proteger los recursos sensibles contra el robo de datos. |
|
Firewall |
Ayuda a proteger la red de VPC contra el acceso no autorizado. |
|
Administración de acceso |
Access Context Manager |
Controla quién puede acceder a qué recursos y ayuda a evitar el uso no autorizado de los recursos. |
Federación de identidades para cargas de trabajo |
Quita la necesidad de credenciales externas para transferir datos a la plataforma desde entornos locales. |
|
Data Catalog |
Proporciona un índice de los recursos disponibles para los usuarios. |
|
IAM |
Proporciona acceso detallado. |
|
Encriptación |
Cloud KMS |
Te permite administrar tus claves de encriptación y secretos, y ayudar a proteger tus datos a través de la encriptación en reposo y en tránsito. |
Secret Manager |
Proporciona un almacén de secretos para las canalizaciones que controla IAM. |
|
Encriptación en reposo |
De forma predeterminada, Google Cloud encripta los datos en reposo. |
|
Encriptación en tránsito |
De forma predeterminada, Google Cloud encripta los datos en tránsito. |
|
De detección |
Security Command Center |
Te ayuda a detectar parámetros de configuración incorrectos y actividad maliciosa en tu organización Google Cloud. |
Arquitectura continua |
Verifica de forma continua tu Google Cloud organización en función de una serie de políticas de OPA que hayas definido. |
|
Recomendador de IAM |
Analiza los permisos del usuario y proporciona sugerencias sobre la reducción de permisos para ayudar a aplicar el principio de privilegio mínimo. |
|
Estadísticas de firewall |
Analiza las reglas de firewall, identifica reglas de firewall demasiado permisivas y sugiere firewalls más restrictivos para ayudarte a fortalecer tu postura de seguridad general. |
|
Cloud Logging |
Proporciona visibilidad de la actividad del sistema y ayuda a habilitar la detección de anomalías y actividad maliciosa. |
|
Cloud Monitoring |
Realiza un seguimiento de los indicadores y eventos clave que pueden ayudar a identificar actividad sospechosa. |
|
Preventivo |
Política de la organización |
Te permite controlar y restringir acciones dentro de tu Google Cloud organización. |
Workflows
En las siguientes secciones, se describen el flujo de trabajo del productor de datos y el flujo de trabajo del consumidor de datos, lo que garantiza controles de acceso adecuados en función de la sensibilidad de los datos y los roles de los usuarios.
Flujo de trabajo del productor de datos
En el siguiente diagrama, se muestra cómo se protegen los datos a medida que se transfieren a BigQuery.
El flujo de trabajo para la transferencia de datos es el siguiente:
- Una aplicación integrada en la federación de identidades para cargas de trabajo usa Cloud KMS para desencriptar una clave de encriptación unida.
- La aplicación usa la biblioteca de Tink para desenmascarar o encriptar los datos con una plantilla.
- La aplicación transfiere datos al proyecto de transferencia en Google Cloud.
- Los datos llegan a Cloud Storage, BigQuery o Pub/Sub.
- En el proyecto de transferencia, los datos se desencriptan o se vuelven a identificar con una plantilla.
- Los datos desencriptados se encriptan o enmascaran según otra plantilla de desidentificación y, luego, se colocan en el proyecto no confidencial. El motor de etiquetado aplica las etiquetas según corresponda.
- Los datos del proyecto no confidencial se transfieren al proyecto confidencial y se vuelven a identificar.
Se permite el siguiente acceso a los datos:
- Los usuarios que tienen acceso al proyecto confidencial pueden acceder a todos los datos de texto sin formato sin procesar.
- Los usuarios que tienen acceso al proyecto no confidencial pueden acceder a datos enmascarados, tokenizados o encriptados según las etiquetas asociadas con los datos y sus permisos.
Flujo de trabajo del consumidor de datos
En los siguientes pasos, se describe cómo un consumidor puede acceder a los datos almacenados en BigQuery.
- El consumidor de datos busca recursos de datos con Data Catalog.
- Después de que el consumidor encuentra los recursos que busca, solicita acceso a los recursos de datos.
- El propietario de los datos decide si proporcionar acceso a los recursos.
- Si el consumidor obtiene acceso, puede usar un notebook y el catálogo de soluciones para crear un entorno en el que pueda analizar y transformar los recursos de datos.
reunir todo en un solo lugar
El repositorio de GitHub te proporciona instrucciones detalladas para implementar el entramado de datos enGoogle Cloud después de implementar la base empresarial. El proceso para implementar la arquitectura implica modificar los repositorios de infraestructura existentes y, luego, implementar nuevos componentes específicos de la malla de datos.
Completa lo siguiente:
- Completa todos los requisitos previos, incluidos los siguientes:
- Instala Google Cloud CLI, Terraform, Tink, Java y Go.
- Implementa el plano de bases empresarial (v4.1).
- Mantén los siguientes repositorios locales:
gcp-data-mesh-foundations
gcp-bootstrap
gcp-environments
gcp-networks
gcp-org
gcp-projects
- Modifica el modelo de base existente y, luego, implementa las aplicaciones de malla de datos. Para cada elemento, completa lo siguiente:
- En tu repositorio de destino, revisa la rama
Plan
. - Para agregar componentes de malla de datos, copia los archivos y directorios relevantes de
gcp-data-mesh-foundations
en el directorio de la fundación correspondiente. Reemplaza los archivos cuando sea necesario. - Actualiza las variables, los roles y la configuración de la malla de datos en los archivos de Terraform (por ejemplo,
*.tfvars
y*.tf
). Establece los tokens de GitHub como variables de entorno. - Realiza las operaciones de inicialización, planificación y aplicación de Terraform en cada repositorio.
- Confirma los cambios, envía el código a tu repositorio remoto, crea solicitudes de extracción y combínalos con tus entornos de desarrollo, no producción y producción.
- En tu repositorio de destino, revisa la rama
¿Qué sigue?
- Obtén información sobre la arquitectura y las funciones en una malla de datos.
- Importa datos de Google Cloud a un almacén de datos seguro de BigQuery.
- Implementa el framework de controles clave de CDMC en un almacén de datos de BigQuery.
- Lee sobre el plano de bases empresariales.