Проблема с доступом к облачным службам Azure через Rest API

Я пытаюсь выполнить вызовы REST API в облачной службе Azure. Я использую Postman для тестирования. Я успешно получил токен носителя и передаю его в запрос.

Однако, похоже, что бы я ни делал, я получаю сообщение об ошибке.

<Error xmlns = "http://schemas.microsoft.com/windowsazure" xmlns:i = "http://www.w3.org/2001/XMLSchema-instance">
    <Code>ForbiddenError</Code>
    <Message>The server failed to authenticate the request. Verify that the certificate is valid and 

связан с этой подпиской.

https://learn.microsoft.com/en-us/rest/api/compute/cloudservices/rest-list-cloud-services

У меня нет проблем с выполнением запросов к другим вызовам API (кроме облачных служб), например с получением списка групп ресурсов и т. д. Кажется, это влияет только на вызовы API облачных служб.

Любая помощь будет оценена по достоинству.


64
1

Ответ:

Решено

Первоначально, когда я попытался воспроизвести то же самое в своей среде, я получил ту же ошибку:

Чтобы устранить эту ошибку, необходимо загрузить сертификат (.cer) на уровне подписки Azure.

Для создания самоподписанного сертификата используйте приведенный ниже сценарий PowerShell:

$cert = New-SelfSignedCertificate -DnsName "<your_domain_name" -CertStoreLocation "cert:\CurrentUser\My"

$cert.Thumbprint

Export-PfxCertificate -Cert "cert:\CurrentUser\My\{Thumbprint}" -FilePath "C:\path\to\certificate.pfx" -Password (ConvertTo-SecureString -String "yourpassword" -Force -AsPlainText

Export-Certificate -Cert "cert:\CurrentUser\My\{Thumbprint}" -FilePath "<file_path>\certificate.cer"

После создания самозаверяющего сертификата:

Перейдите в «Подписки» -> «Настройки» -> «Сертификаты управления» -> «Загрузить сертификат».

Теперь сгенерируйте токен доступа, обеспечив aud:https://management.core.windows.net/

Использование сгенерированного выше токена доступа в конечной точке ниже для перечисления облачных сервисов:

Request Header :  x-ms-version : 2009-10-01

GET https://management.core.windows.net/<subscription-id>/services/hostedservices

Ответ:

ПРИМЕЧАНИЕ. Заголовок: версия x-ms должна быть установлена ​​на 2009-10-01 или выше.

Ссылка:

Список облачных сервисов