Dienstkonten

In diesem Leitfaden wird erläutert, wie der Zugriff auf die Google Ads API mithilfe von Dienstkonten erfolgt.

Ein Dienstkonto ist ein Konto, das zu Ihrer Anwendung und nicht zu einem bestimmten Endnutzer gehört. Dienstkonten ermöglichen Server-zu-Server-Interaktionen zwischen einer Webanwendung und einem Google-Dienst. Ihre Anwendung ruft Google APIs im Namen des Dienstkontos auf, sodass Nutzer nicht direkt beteiligt sind.

Dienstkonten nutzen einen OAuth2-Ablauf, der keine menschliche Autorisierung erfordert. Es wird stattdessen eine Schlüsseldatei verwendet, auf die nur Ihre Anwendung zugreifen kann.

Dienstkonten haben zwei wesentliche Vorteile:

  • Die Autorisierung für den Google API-Zugriff erfolgt als Konfigurationsschritt. Dadurch werden Komplikationen vermieden, die mit anderen OAuth2-Abläufen verbunden sind, die Nutzerinteraktionen erfordern.
  • Beim OAuth2-Assertion-Vorgang kann Ihre Anwendung bei Bedarf die Identität anderer Nutzer übernehmen.

Voraussetzungen

  • Eine Google Workspace-Domain, deren Inhaber Sie sind, z. B. mydomain.com oder mybusiness.com.
  • Google Ads API-Entwickler-Token und optional ein Testkonto
  • Clientbibliothek für die von Ihnen verwendete Sprache
  • Ein Google API Console-Projekt, das für die Google Ads API konfiguriert wurde.
  • Sie benötigen ein Google Ads-Konto mit Berechtigungen für das Google Ads-Konto, auf das Sie zugreifen möchten. Die Verwendung von Dienstkonten ohne Identitätsdiebstahl wird in Google Ads nicht unterstützt.

Dienstkontozugriff einrichten

Da die Nutzeridentität nur auf Domainebene gesteuert wird, muss bei der Verwendung von Dienstkonten und dem Assertion-Workflow mit Google OAuth2 Ihre eigene Domain bei Google Workspace registriert sein. Ihre Anwendung und ihre Nutzer können dann die Identität eines beliebigen anderen Nutzers in der Domain annehmen.

  1. Erstellen Sie zuerst ein Dienstkonto und Anmeldedaten.

    Laden Sie den Dienstkontoschlüssel im JSON-Format herunter und notieren Sie sich die Dienstkonto-ID.

  2. Geben Sie die Dienstkonto-ID und den Google Ads API-Bereich (https://www.googleapis.com/auth/adwords) an Ihren Domainadministrator weiter.

    Bitten Sie den Domainadministrator, die domainweiten Befugnisse an Ihr Dienstkonto zu delegieren.

  3. Wenn Sie der Domainadministrator sind, folgen Sie der Anleitung in der Hilfe.

Sie können jetzt das Dienstkonto verwenden, um mit dem OAuth2-Assertion-Ablauf auf Ihr Google Ads-Konto zuzugreifen.

Konfiguration der Clientbibliothek

Wählen Sie unten die zu Ihrer Programmiersprache passende Anleitung aus, um Ihre Clientbibliothek zu konfigurieren.

Sicherheitsbedenken

Da das Dienstkonto eine Delegierung auf Domainebene für Ihre Google Workspace-Domain hat, ist es wichtig, die Schlüsseldatei zu schützen, mit der ein Dienstkonto auf die Google-Dienste zugreifen kann, für die es autorisiert ist. Dies gilt insbesondere, da dieses Dienstkonto die Möglichkeit hat, die Identität eines beliebigen Nutzers in der Domain zu übernehmen.

Eine weitere bewährte Methode besteht darin, Dienstkonten den Zugriff auf die mindestens erforderliche Gruppe von APIs zu erlauben. Dies ist eine vorbeugende Maßnahme, um die Datenmenge zu begrenzen, auf die ein Angreifer zugreifen kann, wenn die Schlüsseldatei des Dienstkontos manipuliert wurde.