C# 在.net 4.0中使用json文件进行google服务帐户身份验证

C# 在.net 4.0中使用json文件进行google服务帐户身份验证,c#,json,google-oauth,C#,Json,Google Oauth,需要通过OAuth验证google服务帐户。 我有json格式的google凭证文件。 裁判 能够创建参数,但不知道如何继续。 我对谷歌API的实现非常陌生。 找到了.p12文件的各种示例,但没有找到包含.json文件的示例。 我使用的是.net 4.0 framework,因此无法使用.net 4.5+framework中提供的googlecredential类。我认为您需要创建一个JsonCredentialParameters和您拥有的Json文件。这个类位于Google.api.Auth

需要通过OAuth验证google服务帐户。 我有json格式的google凭证文件。 裁判

能够创建参数,但不知道如何继续。 我对谷歌API的实现非常陌生。 找到了.p12文件的各种示例,但没有找到包含.json文件的示例。
我使用的是.net 4.0 framework,因此无法使用.net 4.5+framework中提供的googlecredential类。

我认为您需要创建一个JsonCredentialParameters和您拥有的Json文件。这个类位于Google.api.Auth.OAuth2名称空间下,因此您只需要使用适当的Google api Auth包就可以完成这项工作

然后,您可以使用正确的用户帐户和作用域创建新的ServiceAccountCredential

protected override ServiceAccountCredential GetCredential()
    {
        var credentialParameters = GetCredentialParameters();
        return new ServiceAccountCredential(
           new ServiceAccountCredential.Initializer(credentialParameters.ClientEmail)
           {
               Scopes = Scopes,
               User = User
           }.FromPrivateKey(credentialParameters.PrivateKey));
    }
    JsonCredentialParameters GetCredentialParameters()
    {
        return JsonSerializer.Deserialize<JsonCredentialParameters>(new FileStream(File, FileMode.Open));
    }

我已尝试安装Google.api.Auth.OAuth2包,但它不能与.NET4.0一起使用。所以我安装了Google.api.Authentication.OAuth2