Usar cuentas de servicio

Puedes usar cuentas de servicio en los conectores comunitarios para gestionar de forma centralizada el acceso a los recursos. Un caso práctico común sería delegar el acceso a aquellos datos a los que los usuarios no pueden acceder con sus propias credenciales.

Consulta el documento de conceptos básicos sobre las cuentas de servicio para familiarizarte con este tema.

Ventajas

  • Puedes consolidar la facturación para el acceso a los datos.
  • Puedes implementar tu propia capa de control de acceso en el conector.
  • Puedes delegar el acceso a los datos o los recursos a los que no se puede acceder con las credenciales de los usuarios.

Pasos de la implementación

  1. Crea una cuenta de servicio para la plataforma desde la que obtienes datos.
  2. Proporciona los permisos necesarios a la cuenta de servicio para que pueda acceder a los recursos necesarios.
  3. Almacena las credenciales de la cuenta de servicio en las propiedades de la secuencia de comandos de tu conector.
  4. Durante la ejecución del conector, usa las credenciales almacenadas para obtener los datos solicitados.
  5. Opcional: Implementa la lógica de control de acceso para filtrar los datos.

Ejemplo: Acceder a BigQuery con los servicios avanzados de Data Studio y una cuenta de servicio

En este ejemplo, se creará una solución en la que tus usuarios generarán paneles a partir de una tabla de BigQuery. Si tus usuarios utilizan el conector de BigQuery de Data Studio, necesitarán acceso de lectura a la tabla, así como una cuenta de facturación de Google Cloud Platform (GCP). En los pasos que se incluyen a continuación se explica cómo usar una cuenta de servicio para consolidar la facturación y delegar el acceso a los datos de BigQuery.

  1. Crea una cuenta de servicio en el proyecto de GCP que quieras.
  2. Asegúrate de que desde esta cuenta es posible crear trabajos de BigQuery y ver los datos de la tabla solicitada. Consulta la información sobre el control de acceso en BigQuery para obtener más detalles.
  3. Crea una clave para la cuenta de servicio y almacena las credenciales en las propiedades de la secuencia de comandos de tu conector.
  4. Incluye la biblioteca OAuth2 de Apps Script en tu proyecto de Apps Script.
  5. En el caso de la función getData, autentica la cuenta de servicio y genera un token de acceso. Define el alcance de OAuth2 en https://www.googleapis.com/auth/bigquery.readonly.
  6. Devuelve el token de acceso con otros elementos de configuración en la respuesta getData.