ConfidentialClientApplication Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
- 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 (d |
| 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 |
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 |
| AcquireTokenSilent(IEnumerable<String>, IAccount) |
[V3-API] Versucht, ein Zugriffstoken für den |
| AcquireTokenSilent(IEnumerable<String>, String) |
[V3-API] Versucht, ein Zugriffstoken für die IAccount Übereinstimmung mit dem Username angegebenen |
| 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 |
| 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 |
| IByUserFederatedIdentityCredential.AcquireTokenByUserFederatedIdentityCredential(IEnumerable<String>, String, String) |
Erwirbt ein Token im Namen eines Benutzers mithilfe einer Verbundidentitäts-Anmeldeinformations assertion.
Dies verwendet den |
| 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. |