Je crée un fichier sur le disque Google avec .NET client API avec le compte de service.API Google Drive (.NET) - Transférer la propriété du compte de service à l'utilisateur de domaine
string[] scopes = new string[] { DriveService.Scope.Drive };
GoogleCredential credential;
using (var stream = new FileStream(Directory.GetCurrentDirectory() + "/Resources/GoogleCredentials.json", FileMode.Open, FileAccess.Read))
{
credential = GoogleCredential.FromStream(stream).CreateScoped(scopes);
}
DriveService drive = new DriveService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
});
Je crée avec succès fichier,
var f = drive.Files;
var request = f.Create(new Google.Apis.Drive.v3.Data.File()
{
Name = "Test from ASP.NET Core",
AppProperties = prop,
MimeType = "application/vnd.google-apps.document"
});
var file = await request.ExecuteAsync();
partager avec tout domaine, mais je ne peux pas transférer la propriété à un utilisateur de domaine.
Permission permission = new Permission()
{
EmailAddress = "[email protected]",
Type = "user",
Domain = "example.com",
Role = "owner"
};
var requestpermission = drive.Permissions.Create(permission, file.Id);
requestpermission.TransferOwnership = true;
var perm = await requestpermission.ExecuteAsync();
J'obtiens l'erreur:
The specified domain is invalid or not applicable for the given permission type.
Je trouve this link, mais en utilisant le fichier cert p12 n'est pas recommandé. Donc, je veux utiliser JSON.