Cuentas de servicio

En esta guía, se explica cómo acceder a la API de Google Ads con cuentas de servicio.

Una cuenta de servicio es una cuenta que pertenece a tu app, en lugar de a un usuario final individual. Las cuentas de servicio permiten las interacciones de servidor a servidor entre una app web y un servicio de Google. Tu app llama a las APIs de Google en nombre de la cuenta de servicio, por lo que los usuarios no participan directamente.

Las cuentas de servicio utilizan un flujo de OAuth2 que no requiere autorización humana, que utiliza un archivo de claves al que solo puede acceder tu app.

El uso de cuentas de servicio proporciona dos beneficios clave:

  • La autorización para el acceso a la API de Google se realiza como un paso de configuración, que evita las complicaciones asociadas con otros flujos de OAuth2 que requieren interacciones del usuario.
  • El flujo de aserción de OAuth2 permite que tu app suplante la identidad de otros usuarios si es necesario.

Requisitos previos

  • Tener un dominio de Google Workspace de tu propiedad, como mydomain.com o mybusiness.com
  • Un token de desarrollador de la API de Google Ads y, opcionalmente, una cuenta de prueba.
  • La biblioteca cliente del lenguaje que usas.
  • Un proyecto de la Consola de APIs de Google que se configuró para la API de Google Ads
  • Debes tener un usuario de Google Ads con permisos en la cuenta de Google Ads a la que deseas acceder. Google Ads no admite el uso de cuentas de servicio sin suplantación de identidad.

Configuración de acceso a la cuenta de servicio

Dado que la suplantación de usuarios se controla solo a nivel del dominio, el uso de las cuentas de servicio y el flujo de aserción con Google OAuth2 requiere que tengas tu propio dominio registrado en Google Workspace. La app y sus usuarios pueden suplantar la identidad de cualquier usuario del dominio.

  1. Para comenzar, crea una cuenta de servicio y credenciales.

    Descarga la clave de la cuenta de servicio en formato JSON y anota el ID de la cuenta.

  2. Comparte el ID de la cuenta de servicio y el alcance de la API de Google Ads (https://www.googleapis.com/auth/adwords) con tu administrador de dominio.

    Solicita al administrador de dominio que delegue la autoridad de todo el dominio a tu cuenta de servicio.

  3. Si eres el administrador de dominio, completa las instrucciones del Centro de ayuda.

Ahora puedes usar la cuenta de servicio para acceder a tu cuenta de Google Ads con el flujo de aserción de OAuth2.

Configuración de la biblioteca cliente

Selecciona tu lenguaje a continuación para obtener instrucciones sobre cómo configurar la biblioteca cliente.

Medidas de seguridad

Debido a que la cuenta de servicio tiene control de delegación a nivel de dominio para tu dominio de Google Workspace, es importante proteger el archivo de claves que permite que una cuenta de servicio acceda a los servicios de Google para los cuales está autorizada. Esto es especialmente cierto, ya que esa cuenta de servicio tiene la capacidad de suplantar a cualquier usuario del dominio.

Otra práctica recomendada es permitir que las cuentas de servicio accedan solo al conjunto mínimo requerido de APIs. Esta es una medida preventiva para limitar la cantidad de datos a los que un atacante puede acceder si el archivo de claves de la cuenta de servicio está comprometido.