Google Drive API - разрешения [закрыто]
Можно ли добавить права доступа к файлам через учетную запись службы без олицетворения или совместного использования файлов с учетной записью службы?
Учетная запись службы имеет делегирование на уровне домена, и я могу добавлять разрешения через олицетворение для собственных файлов на диске пользователя. Но теперь мне нужно добавить разрешения для файлов общего диска, которые принадлежат другим пользователям.
Я могу добавлять разрешения к собственным файлам пользователя, выдавая себя за пользователя, но у меня возникают проблемы при добавлении разрешений для файлов общего диска, которые принадлежат другому пользователю в домене.
string[] scopes =
{
DriveService.Scope.DriveFile,
DriveService.Scope.Drive
};
GoogleCredential credential;
using (var stream = new FileStream("cred.json", FileMode.Open, FileAccess.Read))
{
credential = GoogleCredential
.FromStream(stream)
.CreateScoped(scopes)
.CreateWithUser(impersonationEmail);
}
var service = new DriveService(new BaseClientService.Initializer
{
ApplicationName = "AppName",
HttpClientInitializer = credential
});
var newPermission = new Permission();
newPermission.Domain = "mydomain.com";
newPermission.Type = "domain";
newPermission.Role = "reader";
var request = service.Permissions.Create(newPermission, fileId);
request.SupportsAllDrives = true;
request.Execute();
Может ли кто-нибудь рассказать, как я могу добавить разрешения для файлов на общем диске?