Desktop-App, die Web-APIs aufruft: Abrufen eines Token

Wenn Sie eine Instanz der öffentlichen Clientanwendung erstellt haben, rufen Sie damit ein Token ab, mit dem Sie anschließend eine Web-API aufrufen.

Die Web-API wird durch ihre Bereiche definiert. Verwenden Sie ungeachtet der Benutzeroberfläche, die Sie in Ihrer Anwendung bereitstellen, folgendes Muster:

  • Versuchen Sie systematisch, ein Token aus dem Tokencache abzurufen, indem Sie AcquireTokenSilent aufrufen.
  • Schlägt dieser Aufruf fehl, verwenden Sie den gewünschten AcquireToken-Flow, der hier durch AcquireTokenXX dargestellt wird.

In MSAL.NET

AuthenticationResult result;
var accounts = await app.GetAccountsAsync();
IAccount account = ChooseAccount(accounts); // for instance accounts.FirstOrDefault
                                            // if the app manages is at most one account
try
{
 result = await app.AcquireTokenSilent(scopes, account)
                   .ExecuteAsync();
}
catch(MsalUiRequiredException ex)
{
  result = await app.AcquireTokenXX(scopes, account)
                    .WithOptionalParameterXXX(parameter)
                    .ExecuteAsync();
}

Es gibt verschiedene Möglichkeiten zum Abrufen von Token in einer Desktopanwendung.


Wichtig

Wenn Benutzer sich über die mehrstufige Authentifizierung (MFA) in der Anwendung anmelden müssen, werden sie blockiert.

Nächste Schritte

Fahren Sie mit dem nächsten Artikel in diesem Szenario fort: Aufrufen einer Web-API von der Desktop-App.