En esta página, se describe el caso de uso en el que controlas el acceso a los recursos de Google Cloud a nivel del espacio de nombres cuando migras datos de Cloud Storage a BigQuery.
Para controlar el acceso a los recursos de Google Cloud, los espacios de nombres de Cloud Data Fusion usan el Agente de servicio de la API de Cloud Data Fusion de forma predeterminada.
Para un mejor aislamiento de los datos, puedes asociar un IAM personalizado (conocida como cuenta de servicio por espacio de nombres) con cada espacio de nombres. La cuenta de servicio de IAM personalizada, que se puede diferente para los diferentes espacios de nombres, te permite controlar el acceso a Recursos de Google Cloud entre espacios de nombres para el tiempo de diseño de la canalización operaciones en Cloud Data Fusion, como la vista previa de la canalización, Wrangler y la validación de la canalización.
Para obtener más información, consulta Control de acceso con cuentas de servicio de espacio de nombres.
Situación
En este caso de uso, tu departamento de marketing migra datos de Cloud Storage a BigQuery con Cloud Data Fusion.
El departamento de marketing tiene tres equipos: A, B y C. Tu objetivo es establecer un enfoque estructurado para controlar el acceso a los datos correspondientes a los espacios de nombres de Cloud Storage a través de Cloud Data Fusion a cada equipo: A, B y C, respectivamente.
Solución
En los siguientes pasos, se muestra cómo controlar el acceso a los recursos de Google Cloud con cuentas de servicio de espacio de nombres, lo que evita el acceso no autorizado entre los almacenes de datos de diferentes equipos.
Asocia una cuenta de servicio de Identity and Access Management a cada espacio de nombres
Configura una cuenta de servicio de IAM en el espacio de nombres para cada equipo (consulta Configura una cuenta de servicio de espacio de nombres):
Configura el control de acceso agregando una cuenta de servicio personalizada para El Equipo A, por ejemplo,
team-a@pipeline-design-time-project.iam.gserviceaccount.com
Repite los pasos de configuración para los equipos B y C para configurar el control de acceso con cuentas de servicio personalizadas similares.
Limita el acceso a los buckets de Cloud Storage
Otorga los permisos adecuados para limitar el acceso a los buckets de Cloud Storage:
- Otorga a la cuenta de servicio de IAM el permiso
storage.buckets.list
, que es necesario para mostrar una lista de los buckets de Cloud Storage en el proyecto. Para obtener más información, consulta Crea una lista de buckets. Otorga permiso a la cuenta de servicio de IAM para acceder a los objetos en buckets específicos.
Por ejemplo, otorga el rol de Visualizador de objetos de almacenamiento a la cuenta de servicio de IAM asociada con el espacio de nombres
team_A
en el bucketteam_a1
. Este permiso permite que el equipo A vea y enumere objetos y carpetas administradas, junto con sus metadatos, en ese bucket en un entorno de tiempo de diseño aislado.
Crea la conexión de Cloud Storage en los espacios de nombres correspondientes
Crea una conexión de Cloud Storage en el espacio de nombres de cada equipo:
En la consola de Google Cloud, ve a la página Instancias de Cloud Data Fusion y abre una instancia en la interfaz web de Cloud Data Fusion.
Haz clic en Administrador del sistema > Configuración > Espacios de nombres.
Haz clic en el espacio de nombres que deseas usar, por ejemplo, el del Equipo A.
Haz clic en la pestaña Conexiones y, luego, en Agregar conexión.
Selecciona GCS y configura la conexión.
Para crear una conexión de Cloud Storage para cada espacio de nombres, repite los pasos anteriores. Cada equipo puede interactuar con un grupo de ese recurso para sus operaciones de diseño.
Valida el aislamiento del tiempo de diseño para cada espacio de nombres
El equipo A puede validar el aislamiento en el diseño si accede a los buckets de Cloud Storage en sus respectivos espacios de nombres:
En la consola de Google Cloud, ve a la página Instancias de Cloud Data Fusion y abre una instancia en la interfaz web de Cloud Data Fusion.
Haz clic en Administrador del sistema > Configuración > Espacios de nombres.
Selecciona un espacio de nombres, por ejemplo, el espacio de nombres del Equipo A,
team_A
.Haz clic en > Wrangler.
. MenúHaz clic en GCS.
En la lista de bucket s, haz clic en el bucket
team_a1
.Puedes ver la lista de buckets porque el espacio de nombres del equipo A tiene permiso
storage.buckets.list
.Cuando haces clic en el bucket, puedes ver su contenido, ya que el Equipo A tiene el rol Visualizador de objetos de Storage.
Vuelve a la lista de bucket s y haz clic en el bucket
team_b1
oteam_c1
. El acceso está restringido, ya que aislaste este recurso de tiempo de diseño para el equipo A con su cuenta de servicio de espacio de nombres.
¿Qué sigue?
- Obtén más información sobre las funciones de seguridad en Cloud Data Fusion.