Я создал проект в облачной платформе Google и создал идентификатор учетной записи службы OAuth для своей учетной записи Gmail. С этим идентификатором учетной записи службы я не могу читать электронные письма, поскольку в нем говорится, что у меня нет доступа к этой области GmailReadonly.
Я прошел через Google и обнаружил, что мне нужен доступ к области действия от администратора Gsuite, но если доступ предоставлен, он говорит, что его можно использовать для получения всех электронных писем пользователей организации. Эта информация верна? Если да, есть ли другой способ получить доступ только к электронной почте моей учетной записи?
Ниже приведен код c#, который я использовал для доступа к электронной почте. Пожалуйста, дайте мне знать, если есть какой-либо способ достичь этого.
#region saggezza account id read
ServiceAccountCredential serviceAccountCredential = new ServiceAccountCredential(
new ServiceAccountCredential.Initializer("xxx@projectname.iam.gserviceaccount.com")
{
User = "xxx@organization.com",
Scopes = new[] { GmailService.Scope.GmailReadonly }
}.FromPrivateKey("-----BEGIN PRIVATE KEY-----xxxxxxxxxxxxxxxxx-----END PRIVATE KEY-----\n"));
if (serviceAccountCredential != null)
{
var service3 = new GmailService(new BaseClientService.Initializer
{
HttpClientInitializer = serviceAccountCredential,
ApplicationName = ApplicationName
});
var list = service3.Users.Messages.List("me").Execute();
var count = "Message Count is: " + list.Messages.Count();
}