使用.net 4.0中的json文件进行Google服务帐户身份验证

时间:2018-01-24 05:46:34

标签: c# json google-oauth

需要使用OAuth验证Google服务帐户。  我有json格式的谷歌凭证文件。 审稿Google Service Account Authentication with Json file

能够创建RASParameters但不知道如何继续进行。 我是谷歌apis实施的新手。 找到.p12文件的各种示例,但没有找到.json文件。 我正在使用.net 4.0框架,所以不能使用.net 4.5+框架提供的googlecredential类。

1 个答案:

答案 0 :(得分:1)

我认为您需要创建的是JsonCredentialParameters,其中包含您拥有的Json文件。此类位于Google.Apis.Auth.OAuth2名称空间下,因此您只需使用正确的Google Apis 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));
    }