Ich versuche, Benutzerdaten von ihrem Microsoft Live-Konto zu lesen. Ich habe, wie unten geschrieben Code:Azure AD-Authentifizierung fehlgeschlagen, wenn MS Live-Konten anders als mein AAD-Konto verwendet werden
public void GetUserData(){
var authContext = new AuthenticationContext("https://login.microsoftonline.com/common/");
var result = _authenticationContext
.AcquireTokenAsync("https://graph.microsoft.com", "<my client/app ID>", "<redirect URI>", new PlatformParameters(PromptBehavior.RefreshSession))
.Result;
var accessToken = result.AccessToken;
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer",accessToken);
var userResponse = httpClient.GetStringAsync("https://graph.microsoft.com/beta/me/").Result;
//DO SOMTHING WITH DATA
}
mein Code funktioniert gut, wenn ich meine AAD-Anmeldeinformationen verwendet, aber wenn ich mein persönliches Konto verwendet wird, werden folgende Fehler geben.
AADSTS50020: Benutzerkonto ‚[email protected]‘ von Identitätsanbieter ‚live.com‘ existiert nicht in Mieter Standardverzeichnis 'und kann nicht Zugriff auf die Anwendung ‚XXXXXXXXXXXXXXXXX‘ in diesen Mietern. Das Konto muss zuerst als externer Benutzer in den Mandanten hinzugefügt werden. Melden Sie sich ab und erneut mit einem anderen Active Directory-Benutzerkonto Azure Active an. Hier
ist der Screenshot:
Es ist ähnlich wie this question. Könnte mir jemand helfen?
Haben Sie den persönlichen Mehr Live-Konto in Ihrem azurblauen aktiven Verzeichnis? –
überprüfen Sie diesen Link aus - https://StackOverflow.com/Questions/37255819/azure-native-Application-Common-Authentication – MethodMan
@Wayne Yang, kein Konto der azurblauen Anzeige hinzugefügt. Ich möchte, dass meine App für jedes Live-Konto funktioniert. –