Otorgar el acceso necesario a Dataform

En este documento, se muestra cómo otorgar los roles de Identity and Access Management (IAM) que requieren las cuentas de servicio de Dataform para ejecutar flujos de trabajo en BigQuery.

Acerca de las cuentas de servicio en Dataform

Cuando creas tu primer repositorio de Dataform, esta genera automáticamente una cuenta de servicio predeterminada. Dataform usa la cuenta de servicio predeterminada para interactuar con BigQuery por ti.

El ID de tu cuenta de servicio predeterminado de Dataform tiene el siguiente formato:

service-YOUR_PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com

Reemplaza YOUR_PROJECT_NUMBER por el ID numérico del proyecto de Google Cloud. Puedes encontrar el ID del proyecto de Google Cloud en el panel de la consola de Google Cloud. Para obtener más información, consulta Identifica proyectos.

Además de la cuenta de servicio predeterminada de Dataform, puedes usar otras cuentas de servicio para ejecutar flujos de trabajo en tu nombre. Puedes configurar cuentas de servicio no predeterminadas:

Cuando creas un repositorio de Dataform o una configuración de flujo de trabajo, puedes seleccionar cualquier cuenta de servicio asociada con tu proyecto de Google Cloud al que tengas acceso. Debes configurar los permisos necesarios para todas las cuentas de servicio asociadas con tus recursos de Dataform.

Roles obligatorios para las cuentas de servicio de Dataform

Las cuentas de servicio predeterminadas y no predeterminadas que se usan en Dataform requieren las siguientes funciones de IAM de BigQuery para poder ejecutar flujos de trabajo en BigQuery:

Además, debes otorgar acceso al Creador de tokens de cuentas de servicio(roles/iam.serviceAccountTokenCreator) de la cuenta de servicio predeterminada de Dataform a cualquier cuenta de servicio no predeterminada que desees usar en Dataform.

Antes de comenzar

  1. En la consola de Google Cloud, ve a la página Dataform.

    Ir a la página Dataform

  2. Selecciona o crea un repositorio.

  3. Si usas los Controles del servicio de VPC, excluye los recursos de BigQuery de tu perímetro de los Controles del servicio de VPC para usar Dataform. En este momento, Dataform no admite los Controles del servicio de VPC.

    Como alternativa, puedes desarrollar flujos de trabajo de SQL de forma local con la CLI de Dataform.

Otorga los roles de BigQuery necesarios a una cuenta de servicio que se usa en Dataform

Para otorgar los roles de IAM de BigQuery necesarios a tu cuenta de servicio predeterminada de Dataform o a una cuenta de servicio no predeterminada que quieras usar en Dataform, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página IAM.

    Ve a la página IAM

  2. Haz clic en Otorgar acceso.

  3. En el campo Principales nuevas, ingresa el ID de la cuenta de servicio.

  4. En la lista desplegable Seleccionar una función, selecciona la función Usuario de trabajo de BigQuery.

  5. Haz clic en Agregar otro rol y, luego, en la lista desplegable Selecciona un rol, selecciona el rol Editor de datos de BigQuery.

  6. Haz clic en Agregar otro rol y, luego, en la lista desplegable Selecciona un rol, selecciona el rol Visualizador de datos de BigQuery.

  7. Haz clic en Guardar.

Otorga acceso de creación de tokens a una cuenta de servicio no predeterminada

Para usar una cuenta de servicio no predeterminada en Dataform, esta cuenta debe poder acceder a ella. Para otorgar este acceso, debes agregar la cuenta de servicio predeterminada de Dataform como principal a la cuenta de servicio no predeterminada con la función Creador de tokens de cuenta de servicio.

Para otorgar a la cuenta de servicio predeterminada de Dataform acceso a una cuenta de servicio no predeterminada, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página IAM.

    Ve a la página IAM

  2. Haz clic en Cuentas de servicio y selecciona una cuenta de servicio.

  3. Haz clic en Permisos > Otorgar acceso.

  4. En el campo Principales nuevas, ingresa el ID de tu cuenta de servicio predeterminado de Dataform.

  5. En la lista desplegable Seleccionar una función, selecciona la función Creador de tokens de cuenta de servicio.

  6. Haz clic en Guardar.

¿Qué sigue?