ich basiert die meisten meiner Arbeit auf this post, die einige Voraussetzungen geschaffen.
Sie müssen zunächst eine native Anwendung in Ihrem Azure AD erstellen und die Windows Azure Service Management-API mit der Berechtigung hinzufügen.
Die clientId von dieser App erhalten wird.
Dies ist der Code, den ich zur Zeit bin mit einem Token zu erhalten, die mit dem Management SDK verwendet werden kann:
string userName = "yourUserName";
string password = "yourPassword";
string directoryName = "yourDirectory.onmicrosoft.com";
string clientId = "{ClientId obtained by creating an App in the Active Directory}";
var credentials= new UserPasswordCredential(string.Format("{0}@{1}", userName, directoryName), password);
var authenticationContext = new AuthenticationContext("https://login.windows.net/" + directoryName);
var result = await authenticationContext.AcquireTokenAsync("https://management.core.windows.net/", clientID, credentials);
var jwtToken = result.AccessToken;
//Example accesing Azure Cdn Management API
string subscriptionId = "xxxx-xxxxxx-xxxx-xxxxxxx";
using (var cdn = new CdnManagementClient(new TokenCredentials(jwtToken)) { SubscriptionId = subscriptionId })
{
//do something...
}
kann Ihr Verzeichnisname in dem Azure Portal> Azure AD Abschnitt, auf erhältlich Domänennamen.
ist meine App in einer azur Website gehostet: https://AppHostedName.azurewebsites.net/ für mein Beispiel wird der Verzeichnisname 'AppHopstedName' sein? –
Sie können den Verzeichnisnamen in Azure anzeigen, zum Azure AD-Dienst wechseln und ** Domain-Namen ** überprüfen. Ich habe die Antwort so bearbeitet, dass sie eine Bildschirmaufnahme enthält. –
Danke Matias, du hast mir sehr geholfen –