Comment se connecter à l'API de Google avec le Compte de Service en C# - informations d'Identification non valides

Je suis de battre moi-même sanglante essayer d'obtenir un simple service de compte de connexion à travailler en C#, à l'API de Google et de Google Analytics. Mon entreprise est déjà en train de données dans google Analytics, et je peux les informations de requête avec leur Requête Explorer, mais la prise en main .Net n'est pas d'aller n'importe où. Je suis en utilisant Google généré un fichier json avec PKI, comme la documentation dit que ces un compte de service est la bonne façon pour ordinateur à ordinateur, la communication avec Googla API. Code snipet:

public static GoogleCredential _cred;
public static string _exePath;

static void Main(string[] args) {
    _exePath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase).Replace(@"file:\", "");
    var t = Task.Run(() => Run());
    t.Wait();
}

private static async Task Run() {
    try {
        //Get active credential
        using (var stream = new FileStream(_exePath + "\\Default-GASvcAcct-508d097b0bff.json", FileMode.Open, FileAccess.Read)) {
            _cred = GoogleCredential.FromStream(stream);
        }
        if (_cred.IsCreateScopedRequired) {
        _cred.CreateScoped(new string[] { AnalyticsService.Scope.Analytics });
        }
        //Create the service
        AnalyticsService service = new AnalyticsService(
            new BaseClientService.Initializer() {
                HttpClientInitializer = _cred,
            });
        var act1 = service.Management.Accounts.List().Execute(); //blows-up here

Tout compile bien, mais quand il a frappé le Execute (), l'énoncé de GoogleApiException erreur est levée:

[Informations d'Identification non valides] Localisation[Autorisation de l'en - tête] Raison[authError] Domaine[global]

Ce qui me manque?

OriginalL'auteur Vic Lindsey | 2016-07-14