Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Microsoft Entra-Anwendungsproxy wird zum Veröffentlichen von Web-Apps verwendet. Sie können ihn auch verwenden, um systemeigene Clientanwendungen zu veröffentlichen, die mit der Microsoft Authentication Library (MSAL) konfiguriert werden. Clientanwendungen unterscheiden sich von Web-Apps dadurch, dass sie auf einem Gerät installiert werden, während auf Web-Apps über einen Browser zugegriffen wird.
Zur Unterstützung nativer Clientanwendungen akzeptiert der Anwendungsproxy von Microsoft Entra ID ausgestellte Token, die im Header gesendet werden. Der Anwendungsproxydienst führt die Authentifizierung für die Benutzer und Benutzerinnen durch. Diese Lösung verwendet keine Anwendungstoken für die Authentifizierung.
Verwenden Sie zum Veröffentlichen nativer Anwendungen die Microsoft-Authentifizierungsbibliothek, die die Authentifizierung übernimmt und viele Clientumgebungen unterstützt. Anwendungsproxy passt in das Szenario Desktop-App, die eine Web-API im Namen eines angemeldeten Benutzers aufruft.
Dieser Artikel begleitet Sie durch die vier Schritte zum Veröffentlichen einer nativen Anwendung mit dem Anwendungsproxy und der Microsoft Authentication Library (MSAL).
Schritt 1: Veröffentlichen Ihrer Proxyanwendung
Veröffentlichen Sie Ihre Proxyanwendung wie jede andere Anwendung, und weisen Sie Benutzern den Zugriff auf Ihre Anwendung zu. Weitere Informationen finden Sie unter Veröffentlichen von Anwendungen mit Anwendungsproxy.
Schritt 2: Registrieren Ihrer nativen Anwendung
Jetzt müssen Sie Ihre Anwendung in Microsoft Entra ID registrieren:
Melden Sie sich mindestens als Anwendungsadministrator beim Microsoft Entra Admin Center an.
Wählen Sie rechts oben Ihren Benutzernamen aus. Stellen Sie sicher, dass Sie an einem Verzeichnis angemeldet sind, für das der Anwendungsproxy verwendet wird. Wenn Sie Verzeichnisse ändern müssen, wählen Sie "Verzeichnis wechseln" aus, und wählen Sie ein Verzeichnis aus, das anwendungsproxy verwendet.
Navigieren Sie zu Entra ID>App-Registrierungen. Die Liste aller App-Registrierungen wird angezeigt.
Wählen Sie "Neue Registrierung" aus. Die Seite " Anwendung registrieren" wird angezeigt.
Geben Sie in der Überschrift "Name " einen benutzerdefinierten Anzeigenamen für Ihre Anwendung an.
Wählen Sie unter der Überschrift " Unterstützte Kontotypen " eine Zugriffsstufe mit diesen Richtlinien aus.
- Wenn Sie nur auf Konten abzielen möchten, die für Ihre Organisation intern sind, wählen Sie nur "Konten" in diesem Organisationsverzeichnis aus.
- Um nur Geschäfts- oder Bildungskunden anzusprechen, wählen Sie "Konten" in einem beliebigen Organisationsverzeichnis aus.
- Um die Zielgruppe auf die breiteste Palette von Microsoft-Identitäten zu erweitern, wählen Sie Konten in beliebigen Organisationsverzeichnissen und persönliche Microsoft-Konten aus.
Wählen Sie unter Umleitungs-URIden öffentlichen Client (mobil und Desktop) aus, und geben Sie dann den Umleitungs-URI
https://login.microsoftonline.com/common/oauth2/nativeclient
für Ihre Anwendung ein.Wählen Sie die Microsoft-Plattformrichtlinien aus, und lesen Sie sie, und wählen Sie dann "Registrieren" aus. Eine Übersichtsseite für die neue Anwendungsregistrierung wird erstellt und angezeigt.
Ausführlichere Informationen zum Erstellen einer neuen Anwendungsregistrierung finden Sie unter Integrieren von Anwendungen mit Microsoft Entra ID.
Schritt 3: Gewähren des Zugriffs auf Ihre Proxyanwendung
Ihre systemeigene Anwendung ist registriert. Gewähren Sie ihr Zugriff auf die Proxyanwendung:
- Wählen Sie auf der Randleiste der neuen Anwendungsregistrierungsseite API-Berechtigungen aus. Die Seite "API-Berechtigungen " für die neue Anwendungsregistrierung wird angezeigt.
- Wählen Sie "Berechtigung hinzufügen" aus. Die Seite "Api-Berechtigungen anfordern" wird angezeigt.
- Wählen Sie unter der Einstellung "API auswählen " die von meiner Organisation verwendeten APIs aus. Eine Liste mit den Anwendungen in Ihrem Verzeichnis, die APIs verfügbar machen, wird angezeigt.
- Geben Sie das Suchfeld ein, oder scrollen Sie, um die Proxyanwendung zu finden, die Sie in Schritt 1 veröffentlicht haben: Veröffentlichen Sie Ihre Proxyanwendung, und wählen Sie dann die Proxyanwendung aus.
- Wählen Sie in der Überschrift "Welche Art von Berechtigungen erfordert Ihre Anwendung?" den Berechtigungstyp aus. Wenn Ihre systemeigene Anwendung als angemeldeter Benutzer auf die Proxyanwendungs-API zugreifen muss, wählen Sie delegierte Berechtigungen aus.
- Wählen Sie in der Überschrift "Berechtigungen auswählen" die gewünschte Berechtigung und dann "Berechtigungen hinzufügen" aus. Auf der Seite "API-Berechtigungen " für Ihre systemeigene Anwendung werden nun die von Ihnen hinzugefügte Proxyanwendung und Berechtigungs-API angezeigt.
Schritt 4: Hinzufügen der Microsoft-Authentifizierungsbibliothek zu Ihrem Code (.NET C#-Beispiel)
Bearbeiten Sie den Code für native Anwendungen im Authentifizierungskontext der Microsoft-Authentifizierungsbibliothek (MSAL), sodass er folgenden Text enthält:
// Acquire access token from Microsoft Entra ID for proxy application
IPublicClientApplication clientApp = PublicClientApplicationBuilder
.Create(<App ID of the Native app>)
.WithDefaultRedirectUri() // will automatically use the default Uri for native app
.WithAuthority("https://login.microsoftonline.com/{<Tenant ID>}")
.Build();
AuthenticationResult authResult = null;
var accounts = await clientApp.GetAccountsAsync();
IAccount account = accounts.FirstOrDefault();
IEnumerable<string> scopes = new string[] {"<Scope>"};
try
{
authResult = await clientApp.AcquireTokenSilent(scopes, account).ExecuteAsync();
}
catch (MsalUiRequiredException ex)
{
authResult = await clientApp.AcquireTokenInteractive(scopes).ExecuteAsync();
}
if (authResult != null)
{
//Use the Access Token to access the Proxy Application
HttpClient httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", authResult.AccessToken);
HttpResponseMessage response = await httpClient.GetAsync("<Proxy App Url>");
}
Die erforderlichen Informationen im Beispielcode können wie folgt im Microsoft Entra Admin Center gefunden werden:
Erforderliche Informationen | So finden Sie es im Microsoft Entra Admin Center |
---|---|
<Mandanten-ID> | Entra-ID>Überblick>Eigenschaften |
<App-ID der nativen Anwendung> | Anwendungsregistrierung>Ihre systemeigene Anwendung>Überblick>Anwendungs-ID |
<Umfang> | Anwendungsregistrierung>Ihre systemeigene Anwendung>API-Berechtigungen> wählen Sie die Berechtigung 'user_impersonation' in der Berechtigungs-API > aus. Ein Panel mit der Beschriftung user_impersonation wird auf der rechten Seite angezeigt. > Der Geltungsbereich ist die URL im Eingabefeld. |
<Proxy-App-URL> | Die externe URL und der Pfad zur API |
Nachdem Sie den MSAL-Code mit diesen Parametern bearbeitet haben, können sich Ihre Benutzer und Benutzerinnen bei nativen Client-Apps authentifizieren, auch wenn sie sich außerhalb des Unternehmensnetzwerks befinden.
Nächste Schritte
Weitere Informationen zum systemeigenen Anwendungsablauf finden Sie unter Mobile - und Desktop-Apps in Microsoft Entra ID.
Erfahren Sie mehr über das Einrichten der einmaligen Anmeldung bei Anwendungen in der Microsoft Entra-ID.