public ServiceAccountCredential BuildCredential(GoogleServiceParameter parameters) { var credential = new X509Certificate2(parameters.AccountFilePath, "notasecret", X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable); var serviceAccountCredential = new ServiceAccountCredential(new ServiceAccountCredential.Initializer(parameters.AccountEmail) { Scopes = parameters.ApiScopes, User = string.IsNullOrEmpty(parameters.UserToImpersonate) ? parameters.AccountAdminUser : parameters.UserToImpersonate }.FromCertificate(credential)); return(serviceAccountCredential); }
public ServiceAccountCredential BuildCredential(GoogleServiceParameter parameters) { ServiceAccountCredential credential; var credentialParameters = NewtonsoftJsonSerializer.Instance.Deserialize <JsonCredentialParameters>(File.ReadAllText(parameters.AccountFilePath)); using (var stream = new FileStream(parameters.AccountFilePath, FileMode.Open, FileAccess.Read)) { credential = ServiceAccountCredential.FromServiceAccountData(stream); } var credentialforuser = new ServiceAccountCredential(new ServiceAccountCredential.Initializer(parameters.AccountEmail) { Scopes = parameters.ApiScopes, User = string.IsNullOrEmpty(parameters.UserToImpersonate) ? parameters.AccountAdminUser : parameters.UserToImpersonate, Key = credential.Key }.FromPrivateKey(credentialParameters.PrivateKey)); return(credentialforuser); }
public ServiceAccountCredential BuildCredential(GoogleServiceParameter parameters) { return(new ServiceAccountCredential(null)); }