API Azure Серверу не удалось аутентифицировать запрос

У меня есть задача (я пытался с рабочей ролью и загрузить консольное приложение и запустить .exe), который должен запускаться один раз в день и собирать показатели Azure для некоторых из моих виртуальных машин. Это работает безупречно локально, но в облачной службе я получаю эту ошибку:

Необработанное исключение: Microsoft.WindowsAzure.CloudException: ForbiddenError: Серверу не удалось аутентифицировать запрос. Убедитесь, что сертификат действителен и связан с этой подпиской. в Microsoft.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSucces ... и т. д.

Строка, где это происходит:

MetricDefinitionListResponse metricListResponse = metricsClient.MetricDefinitions.List(resourceId, null,
            nspace);

Это часть моего кода:

 string subscriptionId = "fc4xxxx5-835c-xxxx-xxx-xxxxxxx";

        // The thumbprint of the certificate.
        string thumbprint = "‎f5 b4 xxxxxxxx f7 c2";

        // Get the certificate from the local store.
        //X509Certificate2 cert = GetCertificate(StoreName.My, StoreLocation.LocalMachine, thumbprint);
        //cert = GetCertificate(StoreName.My, StoreLocation.CurrentUser, thumbprint) ?? new X509Certificate2(("manageAzure.cer"));
        var cert = new X509Certificate2(("manageAzure.cer"));

        Console.WriteLine("Certificate is : " + cert);

        // Create the metrics client.
        var metricsClient = new MetricsClient(new CertificateCloudCredentials(subscriptionId, cert));

        Console.WriteLine("metricsClient is : " + metricsClient);

        // The cloud service name and deployment name, found in the dashboard of the management portal.
        string cloudServiceName = "abms2-carlsberg";
        string deploymentName = "abms2-carlsberg";

        // Build the resource ID string.
        string resourceId = ResourceIdBuilder.BuildVirtualMachineResourceId(cloudServiceName, deploymentName);

        string nspace = "WindowsAzure.Availability";

        // Get the metric definitions.
        MetricDefinitionListResponse metricListResponse = metricsClient.MetricDefinitions.List(resourceId, null,
            nspace);

Я поместил сертификат управления в свое решение, и я загружаю его оттуда (он настроен на постоянное копирование), и тот же (и тот же способ) я использую при локальном запуске.

Так на какой «сертификат» вы жалуетесь на «аутентификацию»? Я не могу понять, в чем проблема. Любая помощь будет принята с благодарностью, так как я использовал весь день на этом!

PS: я уже запускаю это в повышенном режиме!

Ответы на вопрос(3)

Ваш ответ на вопрос