ПОЛЬЗОВАТЕЛЬ
Термин «пользователь» обозначает владельца данных или учетной записи, к которой вы хотите получить доступ.Для доступа к данным, принадлежащим учетной записи пользователя.У вас должно быть разрешение соответствующего пользователя.
Сервисная учетная запись
Сервисные учетные записи создаются с отступом для пользователя только тогда, когда у разработчика есть доступ к соответствующим учетным записям.Вы правы в том, что вы можете использовать их только с Gmail, если электронная почта контролируется, хотя, с другой стороны, нет способа предварительно авторизовать их. учетные записи служб
Токен обновления Oauth2
Я делал что-то подобное в прошлом.То, что вам нужно, это два приложения.Тот, который ваши пользователи могут запускать для аутентификации вашего приложения и отправки учетных данных на ваш сервер, а второй - это консольное приложение, которое у вас есть сейчас. Oauth
Пользовательское приложение
Пользовательское приложение должно быть либо веб-приложением, либо установленным приложением, которое могут запускать пользователи.Они запускают это приложение, предоставляя доступ к вашему приложению (не забудьте добавить автономную область). Вы получите токен обновления.Возьмите этот токен обновления и отправьте его на сервер, на котором запущено ваше консольное приложение.
Консольное приложение
Затем ваше консольное приложение должно использовать эти токены обновления для запроса нового токена доступа и получения доступа к данным пользователей, когда это необходимо.
Чтобы загрузить этот токен обновления, вам нужно создать собственную реализацию IDataStore.Код, который вы сейчас используете, использует FileDataStore, в котором хранятся данные кредитоспособности в% appdata%, которые вам нужно будет перегрузить, чтобы он мог читать откуда угодно, когда пользовательское приложение сохраняло данные.У меня есть несколько примеров здесь datastore.cs gist
Подтверждение приложения
помните, что вам нужно будет подтвердить свою заявку в Google, прежде чем выможет выпустить его GMAIL - одна из самых сложных областей применения, которую вы можете одобрить. Возможно, вы захотите начать этот процесс раньше.