Ich habe eine Desktop-Anwendung zum Lesen von Mail mit GMAIL API über REST-Schnittstelle. Ich möchte Dienstkonto verwenden, damit wir die E-Mails mithilfe der Domäneneinstellung herunterladen können und die Benutzerinteraktion null ist. Ich bin erfolgreich in der Lage, Gmail Service-Instanz zu erstellen, aber wenn ich versuche, auf eine Gmail-API-Methode wie das Abrufen von Mail-Liste oder andere zuzugreifen, bekomme ich eine Ausnahme mit dem Hinweis
Google.Apis.Auth.OAuth2.Responses.TokenResponseException: Fehler: "access_denied", Beschreibung: "Angeforderter Client nicht autorisiert. "
Ich bin mit allen Einstellungen in der Entwicklerkonsole fertig und habe meiner gapps-Domäne Bereiche hinzugefügt.
Unterstützt Gmail API Dienstkonto? Mit der gleichen Einstellung und dem gleichen Dienstkonto kann ich eine Liste aller Dateien in Google Drive mit dem Drive-Dienst und der API abrufen.
Wenn Sie "E-Mails lesen" möchten, benötigen Sie die neuere Google Mail-API (nicht das ältere API für die Administratoreinstellungen, das "in Binärdateien verloren gegangen ist"). Ja, Sie können dies mit oauth2 und der neueren Google Mail-API tun. Sie müssen den Entwickler in Cpanel auf die weiße Liste setzen und einen Schlüssel erstellen, mit dem Sie Ihre Anforderungen unterschreiben können. Ссылка
Ja, Sie können ... die Delegierungseinstellungen überprüfen ...
Bearbeiten: Verwenden Sie den Link Eric DeFriez geteilt.
Sie können mit der neuen Google Mail-API auf alle E-Mails / Labels / Threads von Benutzer@YOUR_DOMAIN.COM zugreifen:
über Dienstkonto mit Identitätswechsel (Dienstkonto greift auf api zu, als ob es ein bestimmter Benutzer aus Ihrer Domäne wäre).
Einzelheiten finden Sie hier: Ссылка
Hier ist der relevante Code in Dartlang:
%Vor%Tags und Links c# gmail-api google-oauth service-accounts