ConfidentialClientApplication Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Classe da usare per applicazioni client riservate (app Web, API Web e applicazioni daemon).
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
- Ereditarietà
- Implementazioni
Commenti
Le applicazioni client riservate sono in genere applicazioni che vengono eseguite su server (app Web, API Web o persino applicazioni di servizio/daemon). Sono considerati difficili da accedere e pertanto sono in grado di mantenere un segreto dell'applicazione (conservare i segreti del tempo di configurazione perché questi valori sarebbero difficili per gli utenti finali da estrarre). Un'app Web è il client riservato più comune. Il clientId viene esposto tramite il Web browser, ma il segreto viene passato solo nel canale back e non viene mai esposto direttamente. Per informazioni dettagliate, vedere https://aka.ms/msal-net-client-applications
Campi
| Nome | Descrizione |
|---|---|
| AttemptRegionDiscovery |
Indica a MSAL di provare a individuare automaticamente l'area Azure. |
Proprietà
| Nome | Descrizione |
|---|---|
| AppConfig |
Informazioni dettagliate sulla configurazione di ClientApplication a scopo di debug. (Ereditato da ClientApplicationBase) |
| AppTokenCache |
Cache dei token dell'applicazione. Questo caso contiene i token di accesso per l'applicazione. Viene gestito e aggiornato in modo invisibile all'utente, se necessario quando si chiama AcquireTokenForClient(IEnumerable<String>) |
| Authority |
Ottiene l'URL dell'autorità o del servizio token di sicurezza da cui MSAL.NET acquisirà i token di sicurezza Il valore restituito di questa proprietà è il valore fornito dallo sviluppatore nel costruttore dell'applicazione oppure il valore del Microsoft.Identity.Client.ApplicationBase.DefaultAuthority membro statico (ovvero |
| Certificate |
Certificato usato per creare questo ConfidentialClientApplicationoggetto , se presente. |
| UserTokenCache |
Cache dei token utente. Contiene token di accesso, token ID e token di aggiornamento per gli account. Viene usato e aggiornato automaticamente se necessario quando si chiama AcquireTokenSilent(IEnumerable<String>, IAccount) o uno degli override di AcquireTokenSilent(IEnumerable<String>, IAccount).
Viene aggiornato da ogni metodo AcquireTokenXXX, ad eccezione del quale usa solo la cache dell'applicazione |
Metodi
| Nome | Descrizione |
|---|---|
| AcquireTokenByAuthorizationCode(IEnumerable<String>, String) |
Acquisisce un token di sicurezza dall'autorità configurata nell'app usando il codice di autorizzazione ricevuto in precedenza dal servizio token di sicurezza. Usa il flusso del codice di autorizzazione OAuth 2.0 (vedere https://aka.ms/msal-net-authorization-code). Viene in genere usato nelle app Web (ad esempio ASP.NET/ASP.NET Core app Web) che accedono agli utenti e possono richiedere un codice di autorizzazione. Questo metodo non cerca la cache dei token, ma archivia il risultato, quindi può essere cercato usando altri metodi, AcquireTokenSilent(IEnumerable<String>, IAccount)ad esempio . |
| AcquireTokenForClient(IEnumerable<String>) |
Acquisisce un token dall'autorità configurata nell'app, per il client riservato stesso (nel nome di nessun utente) usando il flusso delle credenziali client. Vedete https://aka.ms/msal-net-client-credentials. |
| AcquireTokenInLongRunningProcess(IEnumerable<String>, String) |
Recupera un token di accesso dalla cache usando la chiave della cache fornita che può essere usata per accedere a un'altra API Web protetta downstream per conto di un utente usando il flusso on-Behalf-Of OAuth 2.0. Vedere OBO a esecuzione prolungata in MSAL.NET. Usare <seealso cref="M:Microsoft. Identity.Client.Extensibility.ConfidentialClientApplicationExtensions.StopLongRunningProcessInWebApiAsync(Microsoft. Identity.Client.ILongRunningWebApi,System.String,System.Threading.CancellationToken)"></seealso> per arrestare il processo a esecuzione prolungata e rimuovere i token associati dalla cache. |
| AcquireTokenOnBehalfOf(IEnumerable<String>, UserAssertion) |
Acquisisce un token di accesso per questa applicazione (in genere un'API Web) dall'autorità configurata nell'applicazione, per accedere a un'altra API Web protetta downstream per conto di un utente che usa il flusso on-Behalf-Of OAuth 2.0.
Vedete https://aka.ms/msal-net-on-behalf-of.
Questa applicazione client riservata è stata chiamata con un token che verrà fornito nel |
| AcquireTokenSilent(IEnumerable<String>, IAccount) |
[API V3] Tenta di acquisire un token di accesso per |
| AcquireTokenSilent(IEnumerable<String>, String) |
[API V3] Tenta di acquisire un token di accesso per avere IAccount la corrispondenza con l'oggetto Username specificato |
| GetAccountAsync(String, CancellationToken) |
Ottenere in base al IAccount relativo identificatore tra gli account disponibili nella cache dei token. (Ereditato da ClientApplicationBase) |
| GetAccountAsync(String) |
Ottenere in base al IAccount relativo identificatore tra gli account disponibili nella cache dei token. (Ereditato da ClientApplicationBase) |
| GetAccountsAsync() |
Restituisce tutti gli account disponibili nella cache dei token utente per l'applicazione. (Ereditato da ClientApplicationBase) |
| GetAccountsAsync(CancellationToken) |
Restituisce tutti gli account disponibili nella cache dei token utente per l'applicazione. (Ereditato da ClientApplicationBase) |
| GetAccountsAsync(String, CancellationToken) |
Ottenere la IAccount raccolta in base al relativo identificatore tra gli account disponibili nella cache dei token, in base al flusso utente. Questo vale per Azure scenari di Active Directory B2C. (Ereditato da ClientApplicationBase) |
| GetAccountsAsync(String) |
Ottenere la IAccount raccolta in base al relativo identificatore tra gli account disponibili nella cache dei token, in base al flusso utente. Questo vale per Azure scenari di Active Directory B2C. (Ereditato da ClientApplicationBase) |
| GetAuthorizationRequestUrl(IEnumerable<String>) |
Calcola l'URL della richiesta di autorizzazione che consente all'utente di accedere e fornire il consenso all'applicazione che accede a ambiti specifici nel nome dell'utente. L'URL è destinato all'endpoint /authorize dell'autorità configurata nell'applicazione. Questa sostituzione consente di specificare un hint di accesso e un parametro di query aggiuntivo. |
| InitiateLongRunningProcessInWebApi(IEnumerable<String>, String, String) |
Acquisisce un token di accesso per questa API Web dall'autorità configurata nell'applicazione per accedere a un'altra API Web protetta downstream per conto di un utente usando il flusso on-Behalf-Of OAuth 2.0.
Vedere OBO a esecuzione prolungata in MSAL.NET.
Passare un token di accesso (non un token ID) usato per chiamare questa applicazione client riservata nel |
| RemoveAsync(IAccount, CancellationToken) |
Rimuove tutti i token nella cache per l'account specificato. (Ereditato da ClientApplicationBase) |
| RemoveAsync(IAccount) |
Rimuove tutti i token nella cache per l'account specificato. (Ereditato da ClientApplicationBase) |
| StopLongRunningProcessInWebApiAsync(String, CancellationToken) |
Arresta una sessione on-behalf-of a esecuzione prolungata rimuovendo i token associati alla chiave della cache fornita. Vedere OBO a esecuzione prolungata in MSAL.NET. |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IByRefreshToken.AcquireTokenByRefreshToken(IEnumerable<String>, String) |
Classe da usare per applicazioni client riservate (app Web, API Web e applicazioni daemon). |
| IByUserFederatedIdentityCredential.AcquireTokenByUserFederatedIdentityCredential(IEnumerable<String>, Guid, String) |
Acquisisce un token per conto di un utente usando un'asserzione di credenziali di identità federata.
In questo modo viene utilizzato il |
| IByUserFederatedIdentityCredential.AcquireTokenByUserFederatedIdentityCredential(IEnumerable<String>, String, String) |
Acquisisce un token per conto di un utente usando un'asserzione di credenziali di identità federata.
In questo modo viene utilizzato il |
| IByUsernameAndPassword.AcquireTokenByUsernamePassword(IEnumerable<String>, String, String) |
Acquisisce un token senza interazione dell'utente usando l'autenticazione con nome utente e password. Questo metodo non cerca nella cache dei token, ma archivia il risultato. Prima di chiamare questo metodo, usare altri metodi, AcquireTokenSilent(IEnumerable<String>, IAccount) ad esempio per controllare la cache dei token. |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| GetCertificate(IConfidentialClientApplication) |
Restituisce il certificato utilizzato per creare questo ConfidentialClientApplicationoggetto , se presente. |
| StopLongRunningProcessInWebApiAsync(ILongRunningWebApi, String, CancellationToken) |
Arresta una sessione on-behalf-of a esecuzione prolungata rimuovendo i token associati alla chiave della cache fornita. Vedere OBO a esecuzione prolungata in MSAL.NET. |