1

Ich habe 2 Anwendungen, die alte Anwendung verwendet Oauth2 für den Zugriff auf die Google Analytics API. Alle aktuellen Benutzer haben Zugriff auf eine E-Mail von meiner Domain gewährt.Wie kann ich die client_email für die Dienstkonto-Schlüsselberechtigung auf meine eigene E-Mail ändern?

Die zweite Anwendung verwendet Anmeldeinformationen mit Authentifizierung des Dienstkontos. Das Problem ist, dass die E-Mail für das Dienstkonto Schlüssel ist eine andere Domain mit:

"client_email": "[email protected]",

Ich brauche Es verwendet meine alte E-Mail von meiner Domain, die bereits Berechtigungen von Clients haben.

Wie kann ich das tun, ich habe bereits die JSON-Datei für die Service-Account-Schlüssel heruntergeladen.

Antwort

1

Es gibt einen Unterschied zwischen Oauth2 und Dienstkonten.

Beginnen wir mit der alten App mit Oauth2. Wenn ein Benutzer anfängt, die Anwendung zu verwenden, wird ihm das Authentifizierungsformular angezeigt, das ihn auffordert, der Anwendung X Zugriff auf ihre Daten zu gewähren. Unter der Annahme, dass sie es akzeptieren, kann die Anwendung X nun ihre Daten lesen. Anwendung X erhält ein Refresh-Token, mit dem auf die Daten zu einem späteren Zeitpunkt zugegriffen werden kann.

Im Hintergrund registrierte der Entwickler von Application X seine Anwendung in der Google Developer Console und erhielt eine Client-ID und ein Client-Secret. Wenn der Benutzer bei der Anwendung authentifiziert wurde, wird das Refresh-Token mit der Client-ID und dem Client-Secret erstellt. Sie können keine andere Client-ID und kein anderes Client-Geheimnis verwenden und sie mit dem Aktualisierungstoken aus einer anderen Anwendung verwenden, die nicht austauschbar ist.

Dienstkonten unterscheiden sich darin, dass sie vorautorisiert sind. Wenn Sie die E-Mail-Adresse des Dienstkontos verwenden, die Sie haben, und fügen Sie sie als Nutzer in den Admin-Bereich der Google Analytics-Website ein. Das Dienstkonto hat Zugriff auf die Informationen wie jeder andere Benutzer.

Klarstellungen/Antworten.

  1. Sie können die E-Mail-Adresse des Dienstkontos nicht auswählen, die von Google generiert wird.
  2. Sie können mit einem Dienstkonto nicht auf Daten zugreifen, die Oathh2 für eine Anwendung erteilt wurden. Sie sind nicht austauschbar.
  3. Wenn Sie mit Oauth2 Zugriff auf die Benutzerdaten haben, sollten Sie Ihre Refresh-Token verwenden, um auf ihre Daten zuzugreifen. Sie benötigen kein Dienstkonto.
Verwandte Themen