Ich entwerfe eine Anwendung, die eingebettete Power BI-Berichte verwendet und für die Anzeige des Berichts ein Authentifizierungstoken von einem Azure AD-Konto benötigt.Können Sie eine Azure AD-Anmeldung in eine Anwendung programmieren?
Beim Navigieren zu der Seite, auf der der Bericht gespeichert ist, wird der Benutzer zu einem Azure AD-Portal-Login geleitet. Sobald er seine Anmeldeinformationen eingegeben hat, wird er auf die richtige Seite mit einer URL weitergeleitet, die das Zugriffstoken enthält. Das Token wird dann aus der URL abgerufen und zur Anzeige des Berichts verwendet.
Also meine Frage ist (scheinbar) einfach: Kann ich die Navigation zu einer anderen Seite überspringen und irgendwie einen Azure-Login in meine App programmieren?
Ich bin nicht sicher, ob dies irgendeinen meiner Code erfordert, da es eher eine abstrakte/allgemeine Frage ist.
Aber hier ist die Umleitung auf die Azure AD Login Portal:
Response.Redirect(String.Format("https://login.windows.net/common/oauth2/authorize?{0}", queryString));
Und hier habe ich den Code aus dem resultierenden URL holen, nachdem der Benutzer authentifiziert:
model.code = Request.Params.GetValues("code")[0];
Sind die Berichte/Daten für den angemeldeten Benutzer spezifisch? Wenn sie nicht spezifisch für den Benutzer sind, würde ich empfehlen, den Dienst "Power Bi Embedded" zu betrachten. Https://azure.microsoft.com/en-us/services/power-bi-embedded/ Mit power bi embedded brauchen Sie nicht Um die Benutzeranmeldeinformationen zu verwenden, erhalten Sie einen Zugriffsschlüssel. – JustLogic
Sie können ADAL mit UserCredential verwenden, um Zugriffstoken mit Benutzername und Kennwort zu erhalten –
@JustLogic Ja, die Berichte sind benutzerspezifisch. – Alex