ConfidentialClientApplication class
Den här klassen ska användas för att hämta token för konfidentiella klientprogram (webApp, webAPI). Konfidentiella klientprogram konfigurerar programhemligheter, klientcertifikat/intyg efter behov
- Extends
Konstruktorer
| Confidential |
Konstruktor för ConfidentialClientApplication Obligatoriska attribut i konfigurationsobjektet är:
I Azure AD är utfärdaren en URL som anger formuläret I Azure B2C är utfärdaren av formuläret https://{instance}/tfp/{tenant}/{policyName}/ Fullständiga B2C-funktioner kommer att vara tillgängliga i det här biblioteket i framtida versioner. |
Metoder
| acquire |
Hämtar token från utfärdaren för programmet (inte för en slutanvändare). |
| acquire |
Hämtar token från utfärdaren för programmet. Används i scenarier där den aktuella appen är en mellannivåtjänst som anropades med en token som representerar en slutanvändare. Den aktuella appen kan använda token (oboAssertion) för att begära en annan token för åtkomst till underordnat webb-API för användarens räkning. Den aktuella mellannivåappen har ingen användarinteraktion för att få medgivande. Se hur du får medgivande direkt för din mellannivåapp från den här artikeln. https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-on-behalf-of-flow#gaining-consent-for-the-middle-tier-application |
| Set |
Den här utökningspunkten fungerar bara för client_credential-flödet, d.v.s. acquireTokenByClientCredential och är avsedd för Azure SDKs för att förbättra stöd för hanterad identitet. |
Ärvda metoder
| acquire |
Hämtar en token genom att byta ut auktoriseringskoden från det första steget i OAuth2.0 Authorization Code-flödet.
|
| acquire |
Hämtar en token genom att utbyta uppdateringstoken som tillhandahålls för en ny uppsättning token. Det här API:et tillhandahålls endast för scenarier där du vill migrera från ADAL till MSAL. Annars rekommenderar vi att du använder |
| acquire |
Hämtar token med lösenordstilldelning genom att byta användarnamn och lösenord för klientprogram mot autentiseringsuppgifter Den senaste OAuth 2.0 Security Best Current Practice tillåter inte att lösenordet beviljas helt. Mer information om den här rekommendationen finns i https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 Microsoft dokumentation och rekommendationer finns på:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword |
| acquire |
Hämtar en token tyst när en användare anger det konto som token begärs för. Det här API:et förväntar sig att användaren tillhandahåller ett kontoobjekt och tittar in i cacheminnet för att hämta token om det finns.
Det finns också ett valfritt "forceRefresh"-booleskt värde som användaren kan skicka för att kringgå cacheminnet för access_token och id_token.
Om refresh_token har upphört att gälla eller inte hittas utlöses ett fel och vägledningen är att användaren anropar ett API för interaktiv tokenanskaffning (t.ex. ). |
| clear |
Rensa cachen |
| get |
Skapar URL:en för auktoriseringsbegäran så att användaren kan ange autentiseringsuppgifter och godkänna programmet. URL:en riktar sig till slutpunkten /authorize för den utfärdare som konfigurerats i programobjektet. När användaren har angett sina autentiseringsuppgifter och medgivanden skickar utfärdaren ett svar till omdirigerings-URI:n som skickas i begäran och ska innehålla en auktoriseringskod som sedan kan användas för att hämta token via |
| get |
Returnerar logger-instansen |
| get |
Hämtar tokencachen för programmet. |
| set |
Ersätter standardloggningsuppsättningen i konfigurationer med nya Logger med nya konfigurationer |
Konstruktorinformation
ConfidentialClientApplication(Configuration)
Konstruktor för ConfidentialClientApplication
Obligatoriska attribut i konfigurationsobjektet är:
- clientID: programmets program-ID. Du kan skaffa en genom att registrera ditt program med vår programregistreringsportal
- authority: utfärdarens URL för ditt program.
- klientautentiseringsuppgifter: Måste ange antingen klienthemlighet, certifikat eller försäkran för konfidentiella klienter. Du kan hämta en klienthemlighet från programregistreringsportalen.
I Azure AD är utfärdaren en URL som anger formuläret https://login.microsoftonline.com/{Enter_the_Tenant_Info_Here}.
Om ditt program stöder Konton i en organisationskatalog ersätter du värdet "Enter_the_Tenant_Info_Here" med klient-ID:t eller klientorganisationens namn (till exempel contoso.microsoft.com).
Om ditt program har stöd för konton i en organisationskatalog ersätter du värdet "Enter_the_Tenant_Info_Here" med organisationer.
Om ditt program stöder konton i en organisationskatalog och personliga Microsoft konton ersätter du värdet "Enter_the_Tenant_Info_Here" med common.
Om du bara vill begränsa stödet till personliga Microsoft konton ersätter du värdet "Enter_the_Tenant_Info_Here" med konsumenterna.
I Azure B2C är utfärdaren av formuläret https://{instance}/tfp/{tenant}/{policyName}/ Fullständiga B2C-funktioner kommer att vara tillgängliga i det här biblioteket i framtida versioner.
new ConfidentialClientApplication(configuration: Configuration)
Parametrar
- configuration
- Configuration
Metodinformation
acquireTokenByClientCredential(ClientCredentialRequest)
Hämtar token från utfärdaren för programmet (inte för en slutanvändare).
function acquireTokenByClientCredential(request: ClientCredentialRequest): Promise<null | AuthenticationResult>
Parametrar
- request
- ClientCredentialRequest
Returer
Promise<null | AuthenticationResult>
acquireTokenOnBehalfOf(OnBehalfOfRequest)
Hämtar token från utfärdaren för programmet.
Används i scenarier där den aktuella appen är en mellannivåtjänst som anropades med en token som representerar en slutanvändare. Den aktuella appen kan använda token (oboAssertion) för att begära en annan token för åtkomst till underordnat webb-API för användarens räkning.
Den aktuella mellannivåappen har ingen användarinteraktion för att få medgivande. Se hur du får medgivande direkt för din mellannivåapp från den här artikeln. https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-on-behalf-of-flow#gaining-consent-for-the-middle-tier-application
function acquireTokenOnBehalfOf(request: OnBehalfOfRequest): Promise<null | AuthenticationResult>
Parametrar
- request
- OnBehalfOfRequest
Returer
Promise<null | AuthenticationResult>
SetAppTokenProvider(IAppTokenProvider)
Den här utökningspunkten fungerar bara för client_credential-flödet, d.v.s. acquireTokenByClientCredential och är avsedd för Azure SDKs för att förbättra stöd för hanterad identitet.
function SetAppTokenProvider(provider: IAppTokenProvider)
Parametrar
- provider
- IAppTokenProvider
Ärvd metodinformation
acquireTokenByCode(AuthorizationCodeRequest, AuthorizationCodePayload)
Hämtar en token genom att byta ut auktoriseringskoden från det första steget i OAuth2.0 Authorization Code-flödet.
getAuthCodeUrl(AuthorizationCodeUrlRequest) kan användas för att skapa URL:en för det första steget i OAuth2.0 Authorization Code-flödet. Se till att värdena för redirectUri och omfång i AuthorizationCodeUrlRequest och AuthorizationCodeRequest är desamma.
function acquireTokenByCode(request: AuthorizationCodeRequest, authCodePayLoad?: AuthorizationCodePayload): Promise<AuthenticationResult>
Parametrar
- request
- AuthorizationCodeRequest
- authCodePayLoad
- AuthorizationCodePayload
Returer
Promise<AuthenticationResult>
Ärvd frånClientApplication.acquireTokenByCode
acquireTokenByRefreshToken(RefreshTokenRequest)
Hämtar en token genom att utbyta uppdateringstoken som tillhandahålls för en ny uppsättning token.
Det här API:et tillhandahålls endast för scenarier där du vill migrera från ADAL till MSAL. Annars rekommenderar vi att du använder acquireTokenSilent() för tysta scenarier. När du använder acquireTokenSilent()hanterar MSAL cachelagring och uppdatering av token automatiskt.
function acquireTokenByRefreshToken(request: RefreshTokenRequest): Promise<null | AuthenticationResult>
Parametrar
- request
- RefreshTokenRequest
Returer
Promise<null | AuthenticationResult>
acquireTokenByUsernamePassword(UsernamePasswordRequest)
Varning
Det här API:et är nu inaktuellt.
- Use a more secure flow instead
Hämtar token med lösenordstilldelning genom att byta användarnamn och lösenord för klientprogram mot autentiseringsuppgifter
Den senaste OAuth 2.0 Security Best Current Practice tillåter inte att lösenordet beviljas helt. Mer information om den här rekommendationen finns i https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 Microsoft dokumentation och rekommendationer finns på:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword
function acquireTokenByUsernamePassword(request: UsernamePasswordRequest): Promise<null | AuthenticationResult>
Parametrar
- request
- UsernamePasswordRequest
UsenamePasswordRequest
Returer
Promise<null | AuthenticationResult>
acquireTokenSilent(SilentFlowRequest)
Hämtar en token tyst när en användare anger det konto som token begärs för.
Det här API:et förväntar sig att användaren tillhandahåller ett kontoobjekt och tittar in i cacheminnet för att hämta token om det finns.
Det finns också ett valfritt "forceRefresh"-booleskt värde som användaren kan skicka för att kringgå cacheminnet för access_token och id_token.
Om refresh_token har upphört att gälla eller inte hittas utlöses ett fel och vägledningen är att användaren anropar ett API för interaktiv tokenanskaffning (t.ex. ). acquireTokenByCode()
function acquireTokenSilent(request: SilentFlowRequest): Promise<AuthenticationResult>
Parametrar
- request
- SilentFlowRequest
Returer
Promise<AuthenticationResult>
Ärvd frånClientApplication.acquireTokenSilent
clearCache()
getAuthCodeUrl(AuthorizationUrlRequest)
Skapar URL:en för auktoriseringsbegäran så att användaren kan ange autentiseringsuppgifter och godkänna programmet. URL:en riktar sig till slutpunkten /authorize för den utfärdare som konfigurerats i programobjektet.
När användaren har angett sina autentiseringsuppgifter och medgivanden skickar utfärdaren ett svar till omdirigerings-URI:n som skickas i begäran och ska innehålla en auktoriseringskod som sedan kan användas för att hämta token via acquireTokenByCode(AuthorizationCodeRequest).
function getAuthCodeUrl(request: AuthorizationUrlRequest): Promise<string>
Parametrar
- request
- AuthorizationUrlRequest
Returer
Promise<string>
Ärvd frånClientApplication.getAuthCodeUrl
getLogger()
Returnerar logger-instansen
function getLogger(): Logger
Returer
Ärvd frånClientApplication.getLogger
getTokenCache()
Hämtar tokencachen för programmet.
function getTokenCache(): TokenCache
Returer
Ärvd frånClientApplication.getTokenCache
setLogger(Logger)
Ersätter standardloggningsuppsättningen i konfigurationer med nya Logger med nya konfigurationer
function setLogger(logger: Logger)
Parametrar
- logger
- Logger
Logger-instans
Ärvd frånClientApplication.setLogger