ConfidentialClientApplication Klasse

Definition

Klasse, die für vertrauliche Clientanwendungen verwendet werden soll (Web-Apps, Web-APIs und Daemon-Anwendungen).

public sealed class ConfidentialClientApplication : Microsoft.Identity.Client.ClientApplicationBase, Microsoft.Identity.Client.IByRefreshToken, Microsoft.Identity.Client.IByUsernameAndPassword, Microsoft.Identity.Client.IConfidentialClientApplication, Microsoft.Identity.Client.ILongRunningWebApi
type ConfidentialClientApplication = class
    inherit ClientApplicationBase
    interface IConfidentialClientApplication
    interface IClientApplicationBase
    interface IApplicationBase
    interface IByUserFederatedIdentityCredential
    interface IByRefreshToken
    interface ILongRunningWebApi
    interface IByUsernameAndPassword
Public NotInheritable Class ConfidentialClientApplication
Inherits ClientApplicationBase
Implements IByRefreshToken, IByUsernameAndPassword, IConfidentialClientApplication, ILongRunningWebApi
Vererbung
ConfidentialClientApplication
Implementiert

Hinweise

Vertrauliche Clientanwendungen sind in der Regel Anwendungen, die auf Servern ausgeführt werden (Web-Apps, Web-API oder sogar Dienst-/Daemon-Anwendungen). Sie werden als schwer zugänglich angesehen und können daher einen geheimen Anwendungsschlüssel beibehalten (Halten Sie Konfigurationszeitgeheimnisse, da diese Werte für Endbenutzer schwierig zu extrahieren wären). Eine Web-App ist der am häufigsten verwendete vertrauliche Client. Die clientId wird über den Webbrowser verfügbar gemacht, aber der geheime Schlüssel wird nur im Hintergrundkanal übergeben und nie direkt verfügbar gemacht. Weitere Informationen finden Sie unter https://aka.ms/msal-net-client-applications

Felder

Name Beschreibung
AttemptRegionDiscovery

Weist MSAL an, die Azure Region automatisch zu ermitteln.

Eigenschaften

Name Beschreibung
AppConfig

Details zur Konfiguration der ClientApplication für Debuggingzwecke.

(Geerbt von ClientApplicationBase)
AppTokenCache

Anwendungstokencache. Dieser Fall enthält Zugriffstoken für die Anwendung. Sie wird bei Anrufen im Hintergrund verwaltet und aktualisiert. AcquireTokenForClient(IEnumerable<String>)

Authority

Ruft die URL der Autorität oder des Sicherheitstokendiensts (Security Token Service, STS) ab, aus dem MSAL.NET Sicherheitstoken abrufen. Der Rückgabewert dieser Eigenschaft ist entweder der Vom Entwickler im Konstruktor der Anwendung bereitgestellte Wert oder anderweitig der Wert des Microsoft.Identity.Client.ApplicationBase.DefaultAuthority statischen Elements (dhttps://login.microsoftonline.com/common/.

(Geerbt von ClientApplicationBase)
Certificate

Das Zertifikat, das zum Erstellen dieses ConfidentialClientApplicationZertifikats verwendet wird, falls vorhanden.

UserTokenCache

Benutzertokencache. Sie enthält Zugriffstoken, ID-Token und Aktualisierungstoken für Konten. Sie wird verwendet und automatisch aktualisiert, wenn erforderlich, wenn sie aufgerufen AcquireTokenSilent(IEnumerable<String>, IAccount) wird, oder eine der Außerkraftsetzungen von AcquireTokenSilent(IEnumerable<String>, IAccount). Sie wird von jeder AcquireTokenXXX-Methode aktualisiert, mit Ausnahme, von AcquireTokenForClient der nur der Anwendungscache verwendet wird (siehe IConfidentialClientApplication).

(Geerbt von ClientApplicationBase)

Methoden

Name Beschreibung
AcquireTokenByAuthorizationCode(IEnumerable<String>, String)

Erwirbt ein Sicherheitstoken von der in der App konfigurierten Autorität mithilfe des zuvor vom STS empfangenen Autorisierungscodes. Er verwendet den OAuth 2.0-Autorisierungscodefluss (siehe https://aka.ms/msal-net-authorization-code). Sie wird in der Regel in Web-Apps (z. B. ASP.NET/ASP.NET Core Web-Apps) verwendet, die Benutzer anmelden und einen Autorisierungscode anfordern können. Diese Methode sucht nicht nach dem Tokencache, speichert aber das Ergebnis darin, sodass sie mithilfe anderer Methoden wie z AcquireTokenSilent(IEnumerable<String>, IAccount). B. nachschlagen kann.

AcquireTokenForClient(IEnumerable<String>)

Erwirbt ein Token von der in der App konfigurierten Autorität für den vertraulichen Client selbst (im Namen eines Benutzers) mithilfe des Clientanmeldeinformationsflusses. Siehe https://aka.ms/msal-net-client-credentials.

AcquireTokenInLongRunningProcess(IEnumerable<String>, String)

Ruft ein Zugriffstoken aus dem Cache mithilfe des bereitgestellten Cacheschlüssels ab, der für den Zugriff auf eine andere nachgeschaltete Web-API im Auftrag eines Benutzers mithilfe des OAuth 2.0 On-Behalf-Of-Flusses verwendet werden kann. Siehe long-running OBO in MSAL.NET. Verwenden Sie <"seealso cref="M:Microsoft". Identity.Client.Extensibility.ConfidentialClientApplicationExtensions.StopLongRunningProcessInWebApiAsync(Microsoft. Identity.Client.ILongRunningWebApi,System.String,System.Threading.CancellationToken)"></seealso> to stop the long running process and remove the associated tokens from the cache.

AcquireTokenOnBehalfOf(IEnumerable<String>, UserAssertion)

Erwirbt ein Zugriffstoken für diese Anwendung (in der Regel eine Web-API) von der in der Anwendung konfigurierten Autorität, um im Auftrag eines Benutzers, der den OAuth 2.0 On-Behalf-Of-Fluss verwendet, auf eine andere nachgelagerte geschützte Web-API zuzugreifen. Siehe https://aka.ms/msal-net-on-behalf-of. Diese vertrauliche Clientanwendung wurde selbst mit einem Token aufgerufen, das im userAssertion Parameter bereitgestellt wird.

AcquireTokenSilent(IEnumerable<String>, IAccount)

[V3-API] Versucht, ein Zugriffstoken für den account Benutzertokencache abzurufen. Weitere Informationen finden Sie unter https://aka.ms/msal-net-acquiretokensilent

(Geerbt von ClientApplicationBase)
AcquireTokenSilent(IEnumerable<String>, String)

[V3-API] Versucht, ein Zugriffstoken für die IAccount Übereinstimmung mit dem Username angegebenen loginHintVom Benutzertokencache abzurufen. Weitere Informationen finden Sie unter https://aka.ms/msal-net-acquiretokensilent

(Geerbt von ClientApplicationBase)
GetAccountAsync(String, CancellationToken)

Rufen Sie den IAccount Bezeichner unter den Konten ab, die im Tokencache verfügbar sind.

(Geerbt von ClientApplicationBase)
GetAccountAsync(String)

Rufen Sie den IAccount Bezeichner unter den Konten ab, die im Tokencache verfügbar sind.

(Geerbt von ClientApplicationBase)
GetAccountsAsync()

Gibt alle verfügbaren Konten im Benutzertokencache für die Anwendung zurück.

(Geerbt von ClientApplicationBase)
GetAccountsAsync(CancellationToken)

Gibt alle verfügbaren Konten im Benutzertokencache für die Anwendung zurück.

(Geerbt von ClientApplicationBase)
GetAccountsAsync(String, CancellationToken)

Rufen Sie die IAccount Sammlung anhand des Bezeichners unter den Konten ab, die im Tokencache verfügbar sind, basierend auf dem Benutzerablauf. Dies gilt für Azure AD B2C-Szenarien.

(Geerbt von ClientApplicationBase)
GetAccountsAsync(String)

Rufen Sie die IAccount Sammlung anhand des Bezeichners unter den Konten ab, die im Tokencache verfügbar sind, basierend auf dem Benutzerablauf. Dies gilt für Azure AD B2C-Szenarien.

(Geerbt von ClientApplicationBase)
GetAuthorizationRequestUrl(IEnumerable<String>)

Berechnet die URL der Autorisierungsanforderung, über die der Benutzer sich anmeldet und der Anwendung zustimmte, die auf bestimmte Bereiche im Namen des Benutzers zugreift. Die URL zielt auf den /authorize-Endpunkt der In der Anwendung konfigurierten Autorität ab. Mit dieser Außerkraftsetzung können Sie einen Anmeldehinweis und einen zusätzlichen Abfrageparameter angeben.

InitiateLongRunningProcessInWebApi(IEnumerable<String>, String, String)

Erwirbt ein Zugriffstoken für diese Web-API von der in der Anwendung konfigurierten Autorität, um im Auftrag eines Benutzers, der den OAuth 2.0 On-Behalf-Of-Fluss verwendet, auf eine andere nachgeschaltete web-API zuzugreifen. Siehe long-running OBO in MSAL.NET. Übergeben Sie ein Zugriffstoken (kein ID-Token), das zum Aufrufen dieser vertraulichen Clientanwendung im userToken Parameter verwendet wurde. Verwenden Sie <"seealso cref="M:Microsoft". Identity.Client.Extensibility.ConfidentialClientApplicationExtensions.StopLongRunningProcessInWebApiAsync(Microsoft. Identity.Client.ILongRunningWebApi,System.String,System.Threading.CancellationToken)"></seealso> to stop the long running process and remove the associated tokens from the cache.

RemoveAsync(IAccount, CancellationToken)

Entfernt alle Token im Cache für das angegebene Konto.

(Geerbt von ClientApplicationBase)
RemoveAsync(IAccount)

Entfernt alle Token im Cache für das angegebene Konto.

(Geerbt von ClientApplicationBase)
StopLongRunningProcessInWebApiAsync(String, CancellationToken)

Stoppt eine laufende lange ausgeführte Sitzung im Auftrag von Sitzungen, indem die token entfernt werden, die dem bereitgestellten Cacheschlüssel zugeordnet sind. Siehe long-running OBO in MSAL.NET.

Explizite Schnittstellenimplementierungen

Name Beschreibung
IByRefreshToken.AcquireTokenByRefreshToken(IEnumerable<String>, String)

Klasse, die für vertrauliche Clientanwendungen verwendet werden soll (Web-Apps, Web-APIs und Daemon-Anwendungen).

IByUserFederatedIdentityCredential.AcquireTokenByUserFederatedIdentityCredential(IEnumerable<String>, Guid, String)

Erwirbt ein Token im Namen eines Benutzers mithilfe einer Verbundidentitäts-Anmeldeinformations assertion. Dies verwendet den user_fic Grant-Typ. Der Benutzer wird durch die Objekt-ID (OID) identifiziert.

IByUserFederatedIdentityCredential.AcquireTokenByUserFederatedIdentityCredential(IEnumerable<String>, String, String)

Erwirbt ein Token im Namen eines Benutzers mithilfe einer Verbundidentitäts-Anmeldeinformations assertion. Dies verwendet den user_fic Grant-Typ. Der Benutzer wird durch UPN identifiziert.

IByUsernameAndPassword.AcquireTokenByUsernamePassword(IEnumerable<String>, String, String)

Dient zum Abrufen eines Tokens ohne Benutzerinteraktion mithilfe der Benutzernamen- und Kennwortauthentifizierung. Diese Methode sieht nicht im Tokencache aus, speichert aber das Ergebnis darin. Verwenden Sie vor dem Aufrufen dieser Methode andere Methoden, z AcquireTokenSilent(IEnumerable<String>, IAccount) . B. zum Überprüfen des Tokencaches.

Erweiterungsmethoden

Name Beschreibung
GetCertificate(IConfidentialClientApplication)

Gibt das Zertifikat zurück, das zum Erstellen dieses ConfidentialClientApplicationZertifikats verwendet wird, falls vorhanden.

StopLongRunningProcessInWebApiAsync(ILongRunningWebApi, String, CancellationToken)

Stoppt eine laufende lange ausgeführte Sitzung im Auftrag von Sitzungen, indem die token entfernt werden, die dem bereitgestellten Cacheschlüssel zugeordnet sind. Siehe long-running OBO in MSAL.NET.

Gilt für: