PublicClientApplication class
Questa classe deve essere usata per acquisire i token per le applicazioni client pubbliche (desktop, dispositivi mobili). Le applicazioni client pubbliche non sono attendibili per archiviare in modo sicuro i segreti dell'applicazione e pertanto possono richiedere solo token nel nome di un utente.
- Extends
Costruttori
| Public |
Gli attributi importanti nell'oggetto Configuration per l'autenticazione sono:
Le autorità AAD sono del formato
Azure autorità B2C sono nel formato https://{istanza}/{tenant}/{policy}. Ogni criterio è considerato una propria autorità. Sarà necessario impostare tutte le funzionalità noteAuthorities al momento della costruzione dell'applicazione client. Le autorità ADFS sono nel formato https://{istanza}/adfs. |
Metodi
| acquire |
Acquisisce un token dall'autorità usando il flusso di codice del dispositivo OAuth2.0. Questo flusso è progettato per i dispositivi che non hanno accesso a un browser o hanno vincoli di input. Il server di autorizzazione rilascia un oggetto DeviceCode con un codice di verifica, un codice utente finale e l'URI di verifica dell'utente finale. L'oggetto DeviceCode viene fornito tramite un callback e l'utente finale deve essere incaricato di usare un altro dispositivo per passare all'URI di verifica per immettere le credenziali. Poiché il client non può ricevere richieste in ingresso, esegue ripetutamente il polling del server di autorizzazione fino al completamento dell'input delle credenziali da parte dell'utente finale. |
| acquire |
Acquisisce un token in modo interattivo tramite il browser richiedendo un codice di autorizzazione e quindi scambiandolo per un token. |
| acquire |
Restituisce un token recuperato dalla cache o scambiando il token di aggiornamento per un token di accesso aggiornato. Se il brokering è abilitato, la richiesta di token verrà abilitata dal broker. |
| get |
Restituisce tutti gli account memorizzati nella cache per questa applicazione. Se il brokering è abilitato, questa richiesta verrà abilitata dal broker. |
| sign |
Rimuove gli artefatti della cache associati all'account specificato |
Metodi ereditati
| acquire |
Acquisisce un token scambiando il codice di autorizzazione ricevuto dal primo passaggio del flusso del codice di autorizzazione OAuth2.0.
|
| acquire |
Acquisisce un token scambiando il token di aggiornamento fornito per un nuovo set di token. Questa API viene fornita solo per scenari in cui si vuole eseguire la migrazione da ADAL a MSAL. In caso contrario, è consigliabile usare |
| acquire |
Acquisisce i token con concessione di password scambiando nome utente e password delle applicazioni client per le credenziali La versione più recente di OAuth 2.0 Security Best Current Practice non consente completamente la concessione della password. Per altre informazioni su questa raccomandazione, vedere la https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 documentazione e le raccomandazioni di Microsoft:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword |
| clear |
Cancellare la cache |
| get |
Crea l'URL della richiesta di autorizzazione, consentendo all'utente di immettere le credenziali e il consenso all'applicazione. L'URL è destinato all'endpoint /authorize dell'autorità configurata nell'oggetto applicazione. Dopo che l'utente immette le proprie credenziali e il consenso, l'autorità invierà una risposta all'URI di reindirizzamento inviato nella richiesta e deve contenere un codice di autorizzazione, che può quindi essere usato per acquisire i token tramite |
| get |
Restituisce l'istanza del logger |
| get |
Ottiene la cache dei token per l'applicazione. |
| set |
Sostituisce il logger predefinito impostato nelle configurazioni con il nuovo Logger con nuove configurazioni |
Dettagli costruttore
PublicClientApplication(Configuration)
Gli attributi importanti nell'oggetto Configuration per l'autenticazione sono:
- clientID: ID applicazione dell'applicazione. È possibile ottenerla registrando l'applicazione con il portale di registrazione delle applicazioni.
- authority: l'URL dell'autorità per l'applicazione.
Le autorità AAD sono del formato https://login.microsoftonline.com/{Enter_the_Tenant_Info_Here}.
- Se l'applicazione supporta Account in una directory organizzativa, sostituire il valore "Enter_the_Tenant_Info_Here" con l'ID tenant o il nome del tenant (ad esempio, contoso.microsoft.com).
- Se l'applicazione supporta Account in qualsiasi directory organizzativa, sostituire il valore "Enter_the_Tenant_Info_Here" con le organizzazioni.
- Se l'applicazione supporta Account in qualsiasi directory organizzativa e account Microsoft personali, sostituire il valore "Enter_the_Tenant_Info_Here" con common.
- Per limitare il supporto solo agli account Microsoft personali, sostituire il valore "Enter_the_Tenant_Info_Here" con i consumer.
Azure autorità B2C sono nel formato https://{istanza}/{tenant}/{policy}. Ogni criterio è considerato una propria autorità. Sarà necessario impostare tutte le funzionalità noteAuthorities al momento della costruzione dell'applicazione client.
Le autorità ADFS sono nel formato https://{istanza}/adfs.
new PublicClientApplication(configuration: Configuration)
Parametri
- configuration
- Configuration
Dettagli metodo
acquireTokenByDeviceCode(DeviceCodeRequest)
Acquisisce un token dall'autorità usando il flusso di codice del dispositivo OAuth2.0. Questo flusso è progettato per i dispositivi che non hanno accesso a un browser o hanno vincoli di input. Il server di autorizzazione rilascia un oggetto DeviceCode con un codice di verifica, un codice utente finale e l'URI di verifica dell'utente finale. L'oggetto DeviceCode viene fornito tramite un callback e l'utente finale deve essere incaricato di usare un altro dispositivo per passare all'URI di verifica per immettere le credenziali. Poiché il client non può ricevere richieste in ingresso, esegue ripetutamente il polling del server di autorizzazione fino al completamento dell'input delle credenziali da parte dell'utente finale.
function acquireTokenByDeviceCode(request: DeviceCodeRequest): Promise<null | AuthenticationResult>
Parametri
- request
- DeviceCodeRequest
Valori restituiti
Promise<null | AuthenticationResult>
acquireTokenInteractive(InteractiveRequest)
Acquisisce un token in modo interattivo tramite il browser richiedendo un codice di autorizzazione e quindi scambiandolo per un token.
function acquireTokenInteractive(request: InteractiveRequest): Promise<AuthenticationResult>
Parametri
- request
- InteractiveRequest
Valori restituiti
Promise<AuthenticationResult>
acquireTokenSilent(SilentFlowRequest)
Restituisce un token recuperato dalla cache o scambiando il token di aggiornamento per un token di accesso aggiornato. Se il brokering è abilitato, la richiesta di token verrà abilitata dal broker.
function acquireTokenSilent(request: SilentFlowRequest): Promise<AuthenticationResult>
Parametri
- request
- SilentFlowRequest
Lo sviluppatore ha fornito SilentFlowRequest
Valori restituiti
Promise<AuthenticationResult>
getAllAccounts()
Restituisce tutti gli account memorizzati nella cache per questa applicazione. Se il brokering è abilitato, questa richiesta verrà abilitata dal broker.
function getAllAccounts(): Promise<AccountInfo[]>
Valori restituiti
Promise<AccountInfo[]>
signOut(SignOutRequest)
Rimuove gli artefatti della cache associati all'account specificato
function signOut(request: SignOutRequest): Promise<void>
Parametri
- request
- SignOutRequest
SignOutRequest fornito dallo sviluppatore
Valori restituiti
Promise<void>
Dettagli dei metodi ereditati
acquireTokenByCode(AuthorizationCodeRequest, AuthorizationCodePayload)
Acquisisce un token scambiando il codice di autorizzazione ricevuto dal primo passaggio del flusso del codice di autorizzazione OAuth2.0.
getAuthCodeUrl(AuthorizationCodeUrlRequest) può essere usato per creare l'URL per il primo passaggio del flusso del codice di autorizzazione OAuth2.0. Assicurarsi che i valori per redirectUri e ambiti in AuthorizationCodeUrlRequest e AuthorizationCodeRequest siano gli stessi.
function acquireTokenByCode(request: AuthorizationCodeRequest, authCodePayLoad?: AuthorizationCodePayload): Promise<AuthenticationResult>
Parametri
- request
- AuthorizationCodeRequest
- authCodePayLoad
- AuthorizationCodePayload
Valori restituiti
Promise<AuthenticationResult>
Ereditato daClientApplication.acquireTokenByCode
acquireTokenByRefreshToken(RefreshTokenRequest)
Acquisisce un token scambiando il token di aggiornamento fornito per un nuovo set di token.
Questa API viene fornita solo per scenari in cui si vuole eseguire la migrazione da ADAL a MSAL. In caso contrario, è consigliabile usare acquireTokenSilent() per scenari invisibile all'utente. Quando si usa acquireTokenSilent(), MSAL gestirà automaticamente la memorizzazione nella cache e l'aggiornamento dei token.
function acquireTokenByRefreshToken(request: RefreshTokenRequest): Promise<null | AuthenticationResult>
Parametri
- request
- RefreshTokenRequest
Valori restituiti
Promise<null | AuthenticationResult>
Ereditato daClientApplication.acquireTokenByRefreshToken
acquireTokenByUsernamePassword(UsernamePasswordRequest)
Avviso
Questa API è ora deprecata.
- Use a more secure flow instead
Acquisisce i token con concessione di password scambiando nome utente e password delle applicazioni client per le credenziali
La versione più recente di OAuth 2.0 Security Best Current Practice non consente completamente la concessione della password. Per altre informazioni su questa raccomandazione, vedere la https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 documentazione e le raccomandazioni di Microsoft:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword
function acquireTokenByUsernamePassword(request: UsernamePasswordRequest): Promise<null | AuthenticationResult>
Parametri
- request
- UsernamePasswordRequest
UsenamePasswordRequest
Valori restituiti
Promise<null | AuthenticationResult>
Ereditato daClientApplication.acquireTokenByUsernamePassword
clearCache()
getAuthCodeUrl(AuthorizationUrlRequest)
Crea l'URL della richiesta di autorizzazione, consentendo all'utente di immettere le credenziali e il consenso all'applicazione. L'URL è destinato all'endpoint /authorize dell'autorità configurata nell'oggetto applicazione.
Dopo che l'utente immette le proprie credenziali e il consenso, l'autorità invierà una risposta all'URI di reindirizzamento inviato nella richiesta e deve contenere un codice di autorizzazione, che può quindi essere usato per acquisire i token tramite acquireTokenByCode(AuthorizationCodeRequest).
function getAuthCodeUrl(request: AuthorizationUrlRequest): Promise<string>
Parametri
- request
- AuthorizationUrlRequest
Valori restituiti
Promise<string>
Ereditato daClientApplication.getAuthCodeUrl
getLogger()
Restituisce l'istanza del logger
function getLogger(): Logger
Valori restituiti
Ereditato daClientApplication.getLogger
getTokenCache()
Ottiene la cache dei token per l'applicazione.
function getTokenCache(): TokenCache
Valori restituiti
Ereditato daClientApplication.getTokenCache
setLogger(Logger)
Sostituisce il logger predefinito impostato nelle configurazioni con il nuovo Logger con nuove configurazioni
function setLogger(logger: Logger)
Parametri
- logger
- Logger
Istanza del logger
Ereditato daClientApplication.setLogger