2013-09-02 3 views
0

Я пытаюсь вызвать REST API, описанный здесь: http://msdn.microsoft.com/en-us/library/windowsazure/gg715318.aspxAzure - вызов списка рассылки Операции API

Мой код выглядит следующим образом:

WebRequest req = WebRequest.Create("https://management.core.windows.net/subid/operations?StartTime=2013-08-20&EndTime=2013-08-21"); 
req.Headers["x-ms-version"] = "2012-03-01"; 
req.Method = "GET"; 
HttpWebResponse resp = req.GetResponse() as HttpWebResponse; 

Когда этот код выполняется я получаю WebException с ошибкой " Удаленный сервер ответил на ошибку: (403) Запрещено. "

Я не знаком с Azure, но я прочитал, что мне «может быть» нужно зарегистрировать сертификат или что-то еще для доступа? Однако API REST не упоминает об этом.

Любые советы приветствуются.

Спасибо, Andrew

ответ

1

I have read that I "might" have to register a certificate or something in order to access

Все операции управления службы должны быть заверены. Из документов:

The Windows Azure Service Management API use mutual authentication of management certificates over SSL to ensure that a request made to the service is secure. No anonymous requests are allowed.

Документация по этому вопросу is here.

+0

Это будет звучать глупо, но есть сертификаты, перечисленные на странице «Сертификаты управления» в Azure, но идентификатор отпечатка пальца усечен, куда я иду, чтобы получить полный отпечаток? – andrewb

+0

Вам необходимо иметь оригинальный сертификат. Отпечаток на сайте - только чтобы вы знали, какие сертификаты загружены. В качестве альтернативы вы можете загрузить новый сертификат, но вы должны знать, откуда пришли все сертификаты ... если вы создали службу через автоматизированный интерфейс, например. в VS вы уже можете иметь сертификат в своем локальном хранилище сертификатов. – porges

0

Вам нужно добавить токен авторизации в заголовок запроса, который должен быть настроен в вашем AD.