Как использовать Google Drive для приложения .net? - PullRequest
0 голосов
/ 22 декабря 2019

На сервере запущено базовое приложение .net, и я хочу сохранить данные своего приложения непосредственно на Google Диске. Я использую обычную учетную запись Google для него с включенным Google Drive API (кажется, он включен) и служебную учетную запись с учетными данными, хранящимися в файле json. Вот код для создания службы Google Диск в моем приложении:

private DriveService CreateDriveServiceClient() => new DriveService(
    new BaseClientService.Initializer()
    {
        HttpClientInitializer = new ServiceAccountCredential(
            new ServiceAccountCredential.Initializer(this.config.ClientEmail)
            {
                Scopes = new string[]
                {
                    DriveService.Scope.DriveAppdata,
                },
            }.FromPrivateKey(this.config.PrivateKey))
    });

Используется область действия https://www.googleapis.com/auth/drive.appdata, что приводит к строке drive.appdata Однако я получаю следующую ошибку:

Insufficient Permission: Request had insufficient authentication scopes.] Location[ - ] Reason[insufficientPermissions] Domain[global]

при попытке доступа по крайней мере client.Drives.List().Execute(); Мне кажется, что мне нужно добавить роль для доступа к области видимости drive.appdata. Но я не могу найти подходящую роль в консоли Google, а также не могу найти эту область при создании новой роли для служебной учетной записи

Как добавить разрешения для служебной учетной записи для использования Google Диска?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...