Tag: 服务帐户

使用服务帐户身份validation访问Google Calendar API

我能够使用.NET快速入门教程访问Google Calendar API,效果很好! 该教程的问题在于它使用Open Authentication or OAuth2 。 我想使用服务帐户身份validation执行相同操作。 ( https://support.google.com/googleapi/answer/6158857?hl=en ) 有人能举例说明如何使用服务帐户密钥文件访问我的日历吗? 我也试过尝试使用带有C#教程的Google Calendar API身份validation,但无法完成它。

使用Google Drive V3 API和服务帐户身份validation,WebViewLink为空

我正在使用google drive v3 api上传文件,然后在浏览器中使用响应中的Web视图链接进行预览。 但是Web视图链接无效。 当我使用v2时,我能够使用备用链接来完成。 我没有设置父参考,所以我假设按照文档,文件存储在我的服务帐户的驱动器文件夹(根目录)中。 由于我无法登录服务帐户,因此我使用现有的测试gmail帐户共享该文件并将其共享。 我的问题是如何使用System.Diagnostics.Process.Start(newFile.WebViewLink);在浏览器中打开文件System.Diagnostics.Process.Start(newFile.WebViewLink); 这是我的代码: { File fileInGoogleDrive = Utils.uploadToDrive(service, pathOfTheFileToBeUploaded, “root”); Permission toShare = new Permission(); toShare.EmailAddress = “xyz@gmail.com”; toShare.Type = “user”; toShare.Role = “reader”; PermissionsResource.CreateRequest createRequest = service.Permissions.Create(toShare, fileInGoogleDrive.Id); createRequest.Execute(); return fileInGoogleDrive.WebViewLink; //THIS IS NULL } 这是上传代码: public static File uploadToDrive(DriveService _service, string _uploadFile, string _parent = “root”) […]

Google API使用身份validation服务帐户上传文件

我正在尝试通过API Google Drive发送文件,但是,我找不到任何有关如何使用身份validation服务帐户执行C#上传文件的文档。 我下载了Daimto库,但是,当我们使用身份validationClientId和ClientSecret时,他使用DriveService类上传。 但是使用身份validation进行帐户服务后,他返回到PlusService类,发现无法以这种方式上传文件。 有人能帮我吗? 最好的祝福 使用validation服务帐户 public PlusService GoogleAuthenticationServiceAccount() { String serviceAccountEmail = “106842951064-6s4s95s9u62760louquqo9gu70ia3ev2@developer.gserviceaccount.com”; //var certificate = new X509Certificate2(@”key.p12″, “notasecret”, X509KeyStorageFlags.Exportable); var certificate = new X509Certificate2(@”key.p12″, “notasecret”, X509KeyStorageFlags.Exportable); ServiceAccountCredential credential = new ServiceAccountCredential( new ServiceAccountCredential.Initializer(serviceAccountEmail) { Scopes = new[] { PlusService.Scope.PlusMe } }.FromCertificate(certificate)); // Create the service. var service = new PlusService(new BaseClientService.Initializer() […]

使用Json文件进行Google服务帐户身份validation

我一直关注Googles网站上的Oauth2服务帐户文档。 我也一直在挑选Googles .net客户端库,试图让它工作。 我已经到达了计算机的签名阶段。 Google的隐私密钥如下所示 —–BEGIN PRIVATE KEY—–\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDcmuyQC8rwWdPQ\nmIdksgzSJbVWTU5MeUxy+HAap3yut9wR/L6KGMJ4FBYcsPmXN5gQAhErybavGoZG\nfS1X1/PCpPVpTCA4749K8gbvuZg1JEIAqMtmHiBBrJj5l8eiekQc8pd7Pq35H4wi\nJYXAJGwggPcttkLBRi0xZzd+jdwL1st+7zRt8nMao/xFibInBBvKwb/gP4mJxlQg\nnRdGO6zgMk+PLTcA5C+gFyPA4SdkylrLib5CJO9123FgcfTJZJTukeHo1v0EfU+4\n3bK8HBZnOFa4DHH4mXhkhgYMjibv4Sr/WCEoomJJwNN04SbUEdyhgpM2rZ3cvx+4\nsmB0SQflAgMBAAECggEAXZ100+/dL7++zh9cHVQdcrRDzprBplw3H/bjg7wdgftN\n7Wgm5214YQKNG6HSWORjqC9oX/+agZYs8w69xjBDJg9ggU2nwuGOGky4utQ0jiCT\nzbnTjsMsBxKaXBiXxBBEhVBBDjDcHQLRMdBggNgz9lskCYb1rxT7qqJVf2PtxCuZ\nuxw3whLMRHXvKosER12sMQgGB/0+Nk86GWCqPigpfu7Ec92V0ffcSUaq3gjIUD54\n67TduTWaRDQNB+j2yQsWQZnqRv+TvIXOjinAI+pPbvCUovtiTSZAoz3EalsiXQ0l\nUqDVx26uzEJqhB2kzvAeApuW2Nd5EPxUnf48c4xh4QKBgQDw01mEChWyENV5CBKU\nMSfY0rpAPtq7ahHRR458ZKtITDBlqiZLMjydI65Rr1XxpQ3pJZALObMdUhbvCDfm\nu4BY/lCCt+hcdt9IICvVZsgXgvb6M+Fj2IbYZcAnOm4T1Z1D3I+pW5NdK2ALQRiK\nWsGINOqWCB9WRd7nhmb/XwWyjQKBgQDqgWht5laDuLMc4qpj9finY4qmk57eT3KG\npzbVlT3h7kv7j/j6e+6o9psrqdf1PXpu9XZi3bPtPbH1fX9x5pZgJQRMP4FGOURY\nQDkJfiOOSN/8Vl0senqkscT7DSbe2BqyqQlSlTB4BBF29p1wxb5Wz5HH2BvYE2zI\ni9B4WJcAuQKBgADnajCasRYoBgUcSKWRwaqIr/ZJxhxp+4Mjl59T6WiuEIhxKQ+j\nMqMMXT0lQVdU3UaAw5enMcrsYfWnvD37ejHbUoYLFq4yLAhjRobYieu8rByoUTJE\nv8zUJPKAv6UHaj20+D0UgOsanJOuPN9YE93lBPRnN2blgD6yPHS88JKJAoGABFyh\n16F4LH0L/9aLes6BcIOeeZi3VMU/iRelInXjL8eh7CzyYZ5agxQLMNW46ZvaIiQ4\nroAXL6t9GubZrwGt/F3T5aMswWShS87uAKoy+RuL5wKoOwKQM24HDvBgr7ZvULFq\nNfoGa8UPmhneNdHHx4+W05PGeM9rr5NCLmrfbCkCgYA0nMvEDIJvU3KA3S1cQ3fs\nVopRJwqRIFFL1cHTWaEyIsxEh6i/zAUc/habK82dN3/ZDn/XvWY14k7VZPsSdDC9\noVlQj2z8DVO2K99Oxyh0VlthtecW8exjzkIPJL4srOSl/dooQZS/7ZZyaRQU/BLI\nMdzKHlUKKXWcUU+Ko8W4+w\u003d\u003d\n—–END PRIVATE KEY—–\n 清理钥匙 首先,我清理一下钥匙 private const string PrivateKeyPrefix = “—–BEGIN PRIVATE KEY—–“; private const string PrivateKeySuffix = “—–END PRIVATE KEY—–“; /// Converts the PKCS8 private key to RSA parameters. This method uses the Bouncy Castle library. private static RSAParameters ConvertPKCS8ToRSAParameters(string pkcs8PrivateKey) { var base64PrivateKey = pkcs8PrivateKey.Replace(PrivateKeyPrefix, “”).Replace(“\r\n”, […]

我们可以使用服务帐户访问GMAIL API吗?

我有一个桌面应用程序,通过REST接口使用GMAIL API读取邮件。 我想使用服务帐户,以便我们可以使用域设置下载邮件,用户交互为空。 我已成功创建Gmail服务实例,但当我尝试访问任何Gmail API方法(例如提取邮件列表或其他任何内容)时,我会收到例外说法 Google.Apis.Auth.OAuth2.Responses.TokenResponseException:错误:“access_denied”,说明:“请求的客户端未经授权。” 我完成了开发人员控制台的所有设置,并将范围添加到我的gapps域。 Gmail API是否支持服务帐户? 使用相同的设置和服务帐户,我可以使用云服务和API获取Google云端硬盘中所有文件的列表。