Создание нового общего диска - PullRequest
1 голос
/ 26 мая 2020

Когда я запускаю приведенный ниже код, который взят из: https://developers.google.com/drive/api/v3/manage-shareddrives#python

# Create a new drive
        test_drive_metadata = {'name': 'Test Drive'}
        request_id = str(uuid.uuid4())
        test_drive = self.service.drives().create(
            body=test_drive_metadata,
            requestId=request_id,
            fields='id'
        ).execute()

, я получаю «У пользователя недостаточно прав для этого файла». Этого не происходит, если я создаю файлы, перечисляю общие диски или что-то еще. Нет других требуемых областей, кроме ['https://www.googleapis.com/auth/drive'].

Следует отметить, что я использую сервисный аккаунт. Разве сервисным учетным записям не разрешено создавать общие диски? Насколько мне известно, это нигде не задокументировано, так ли это.

1 Ответ

0 голосов
/ 29 мая 2020

Кажется, нет какой-либо явной документации относительно этого ограничения, но, учитывая, что учетные записи служб (без использования DWD и олицетворения) должны управлять данными приложения , а не данными пользователя , это имеет смысл что их нельзя использовать для управления данными, которые используются обычными пользователями.

Кроме того, использование служебных учетных записей для управления общими документами, по-видимому, не рекомендуется, согласно официальной документации :

Использование учетной записи службы в качестве общего владельца для создания множества общих документов может иметь серьезные последствия для производительности.

С другой стороны, поскольку учетные записи служб имеют определенные ограничения по сравнению с обычные учетные записи (например, создание событий в календаре), это, вероятно, может быть одним из этих ограничений.

В любом случае, чтобы убедиться, что это так, я предлагаю вам сообщить это поведение в этом компоненте отслеживания проблем .

Refe rence:

...