İade Fatura Kullanımı ve Ratecard ayrıntıları almak için Azure REST API kullanıyorum. AcquireToken() Yöntemini kullanarak Token'i elde etmek için başlangıçta yalnızca İstemci Kimliği kullanılır, ardından oturum açma penceresinde Kullanıcı Kimlik Bilgileri istenir.Azure Faturalandırma Kullanım API'si 401 Yetkisiz
Ancak, ben bu yüzden ben Müşteri kimliği ve Müşteri Gizli Anahtarı geçti ki İstemci Kimlik Bilgilerini kullanılan Olmayan İnteraktif Yaklaşım arıyorum.
Ama derinden yanılgıya baktığımızda
, ben hata
"erişim jetonu yanlış kitleye veya kaynaktan edilir" verdiğini bulundu "Uzak Sunucu 401 Yetkisiz bir hata verir" verirLütfen herhangi bir kullanıcı etkileşimi olmadan API'ye erişebildiğim herhangi bir çözümü verin.
Teşekkürler.
{
string token = GetOAuthTokenFromAAD();
string requestURL = String.Format("{0}/{1}/{2}/{3}",
ConfigurationManager.AppSettings["ARMBillingServiceURL"],
"subscriptions",
ConfigurationManager.AppSettings["SubscriptionID"],
"providers/Microsoft.Commerce/RateCard?api-version=2015-06-01-preview&$filter=OfferDurableId eq 'MS-AZR-*****' and Currency eq 'INR' and Locale eq 'en-IN' and RegionInfo eq 'IN'");
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(requestURL);
request.Headers.Add(HttpRequestHeader.Authorization, "Bearer " + token);
request.ContentType = "application/json";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Console.WriteLine(String.Format("RateCard service response status: {0}", response.StatusDescription));
}
public static string GetOAuthTokenFromAAD()
{
AuthenticationContext authenticationContext = new AuthenticationContext(string.Format("{0}/{1}",ConfigurationManager.AppSettings["ADALServiceURL"], ConfigurationManager.AppSettings["TenantDomain"]));
AuthenticationResult result = null;
ClientCredential uc = new ClientCredential(Client_Id, Secret_Key);
try
{
result = authenticationContext.AcquireToken("https://management.core.windows.net/", uc);
}
return result.AccessToken;
}
//App Config File
<add key="ADALServiceURL" value="https://login.microsoftonline.com" />
<add key="ADALRedirectURL" value="http://*****-authentication.cloudapp.net" />
<add key="ARMBillingServiceURL" value="https://management.core.windows.net" />
<add key="TenantDomain" value="********.onmicrosoft.com" />
<add key="SubscriptionID" value="*******-****-****-****-********" />
<add key="ClientId" value="*******-****-****-****-********" />
Lütfen kodunuzu ve Azure AD'de oluşturduğunuz uygulamanın ayarlarını paylaşın. –
Yayına eklendi. – Tejas
Tek bir soru - Uygulamayı Azure AD'de yapılandırırken Hizmet Yönetimi API'sı işlemlerini yürütmek için izin eklediniz mi? –