0
Azure Management APIを使用してメトリックデータを取得しようとしています。しかし、それは403の例外を投げています。なぜこのコードがうまくいかないのか誰にも分かりますか?私はこのコードが非常にシンプルで、MSDNの記事に基づいていますが、まだ403をスローすると感じています。どんな助けでも大歓迎です!Azure Management APIで403エラーが発生する
private string GetAccessToken()
{
var authenticationContext = new AuthenticationContext(string.Format("https://login.windows.net/{0}", TenantID));
var credential = new ClientCredential(clientId: AppID, clientSecret: SecretKey);
var result = authenticationContext.AcquireToken(resource: "https://management.core.windows.net/",
clientCredential: credential);
if (result == null)
{
throw new InvalidOperationException("Failed to obtain the JWT token");
}
string token = result.AccessToken;
return token;
}
...
using (var client = new HttpClient())
{
string header = GetAccessToken();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(
"Bearer", header
);
if (! resourceID.StartsWith("/"))
{
resourceID = "/" + resourceID;
}
string url = "https://management.azure.com" + resourceID +
"/providers/microsoft.insights/metricdefinitions?api-version=2016-03-01";
var response = client.GetStringAsync(url).Result;
return response;
}
Iは '新しいAuthenticationHeaderValueの「ベアラ」の後にスペース(「ベアラ」、ヘッダ)'すなわち、それは「ベアラ」でなければならない存在であるべきと考えています。それが問題を解決するか試してみてください。 –
このスレッドに関する最新情報はありますか? –