ConfidentialClientApplication class
Tato třída se používá k získání tokenů pro důvěrné klientské aplikace (webApp, webAPI). Důvěrné klientské aplikace nakonfigurují tajné kódy aplikací, klientské certifikáty nebo kontrolní výrazy podle potřeby.
- Extends
Konstruktory
| Confidential |
Konstruktor pro ConfidentialClientApplication Požadované atributy v objektu Configuration jsou:
V Azure AD je autorita adresa URL označující formulář V Azure B2C je autorita formuláře https://{instance}/tfp/{tenant}/{policyName}/ Úplná funkce B2C bude dostupná v této knihovně v budoucích verzích. |
Metody
| acquire |
Získá tokeny od autority pro aplikaci (ne pro koncového uživatele). |
| acquire |
Získá tokeny od autority pro aplikaci. Používá se ve scénářích, kdy je aktuální aplikace služba střední vrstvy, která byla volána s tokenem představujícím koncového uživatele. Aktuální aplikace může token (oboAssertion) použít k vyžádání dalšího tokenu pro přístup k podřízené webovému rozhraní API jménem tohoto uživatele. Aktuální aplikace střední vrstvy nemá žádnou interakci uživatele k získání souhlasu. Podívejte se, jak získat souhlas s aplikací střední vrstvy z tohoto článku. https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-on-behalf-of-flow#gaining-consent-for-the-middle-tier-application |
| Set |
Tento bod rozšiřitelnosti funguje jenom pro tok client_credential, tj. acquireTokenByClientCredential a je určený pro Azure SDK k vylepšení podpory spravované identity. |
Zděděné metody
| acquire |
Získá token výměnou autorizačního kódu přijatého z prvního kroku toku autorizačního kódu OAuth2.0.
|
| acquire |
Získá token výměnou obnovovacího tokenu poskytnutého pro novou sadu tokenů. Toto rozhraní API je k dispozici pouze pro scénáře, ve kterých chcete migrovat z knihovny ADAL na knihovnu MSAL. V opačném případě se doporučuje používat |
| acquire |
Získá tokeny s udělením hesla výměnou uživatelského jména a hesla klientských aplikací pro přihlašovací údaje. Nejnovější osvědčený postup zabezpečení OAuth 2.0 v současné době zakáže udělení hesla zcela. Další podrobnosti o tomto doporučení najdete v https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 dokumentaci a doporučeních Microsoft:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword |
| acquire |
Získá token bezobslužně, když uživatel určí účet, pro který je token požadován. Toto rozhraní API očekává, že uživatel poskytne objekt účtu a vyhledá v mezipaměti token, pokud je k dispozici.
K dispozici je také volitelná logická hodnota forceRefresh, která může uživatel odeslat a obejít mezipaměť pro access_token a id_token.
V případě, že vypršela platnost refresh_token nebo nebyla nalezena, vyvolá se chyba a pokyny jsou určené pro volání jakéhokoli interaktivního rozhraní API pro získání tokenu (např. |
| clear |
Vymazání mezipaměti |
| get |
Vytvoří adresu URL žádosti o autorizaci, která uživateli umožní zadat přihlašovací údaje a vyjádřit souhlas s aplikací. Adresa URL cílí na koncový bod /authorize autority nakonfigurované v objektu aplikace. Jakmile uživatel zadá své přihlašovací údaje a souhlas, autorita odešle odpověď na identifikátor URI přesměrování odeslaný v požadavku a měl by obsahovat autorizační kód, který pak lze použít k získání tokenů prostřednictvím |
| get |
Vrátí instanci protokolovacího nástroje. |
| get |
Získá mezipaměť tokenů pro aplikaci. |
| set |
Nahradí výchozí protokolovací sadu v konfiguracích novým protokolovacím nástrojem novými konfiguracemi. |
Podrobnosti konstruktoru
ConfidentialClientApplication(Configuration)
Konstruktor pro ConfidentialClientApplication
Požadované atributy v objektu Configuration jsou:
- clientID: ID aplikace vaší aplikace. Můžete ji získat registrací aplikace na našem portálu pro registraci aplikací.
- autorita: adresa URL autority pro vaši aplikaci.
- přihlašovací údaje klienta: Je nutné nastavit tajný klíč klienta, certifikát nebo kontrolní výraz pro důvěrné klienty. Tajný klíč klienta můžete získat z portálu pro registraci aplikace.
V Azure AD je autorita adresa URL označující formulář https://login.microsoftonline.com/{Enter_the_Tenant_Info_Here}.
Pokud vaše aplikace podporuje účty v jednom adresáři organizace, nahraďte hodnotu Enter_the_Tenant_Info_Here ID tenanta nebo názvem tenanta (například contoso.microsoft.com).
Pokud vaše aplikace podporuje účty v libovolném adresáři organizace, nahraďte hodnotu "Enter_the_Tenant_Info_Here" organizacemi.
Pokud vaše aplikace podporuje účty v libovolném adresáři organizace a osobních Microsoft účtech, nahraďte hodnotu "Enter_the_Tenant_Info_Here" běžnými hodnotami.
Pokud chcete omezit podporu jenom na osobní Microsoft účty, nahraďte hodnotu "Enter_the_Tenant_Info_Here" spotřebiteli.
V Azure B2C je autorita formuláře https://{instance}/tfp/{tenant}/{policyName}/ Úplná funkce B2C bude dostupná v této knihovně v budoucích verzích.
new ConfidentialClientApplication(configuration: Configuration)
Parametry
- configuration
- Configuration
Podrobnosti metody
acquireTokenByClientCredential(ClientCredentialRequest)
Získá tokeny od autority pro aplikaci (ne pro koncového uživatele).
function acquireTokenByClientCredential(request: ClientCredentialRequest): Promise<null | AuthenticationResult>
Parametry
- request
- ClientCredentialRequest
Návraty
Promise<null | AuthenticationResult>
acquireTokenOnBehalfOf(OnBehalfOfRequest)
Získá tokeny od autority pro aplikaci.
Používá se ve scénářích, kdy je aktuální aplikace služba střední vrstvy, která byla volána s tokenem představujícím koncového uživatele. Aktuální aplikace může token (oboAssertion) použít k vyžádání dalšího tokenu pro přístup k podřízené webovému rozhraní API jménem tohoto uživatele.
Aktuální aplikace střední vrstvy nemá žádnou interakci uživatele k získání souhlasu. Podívejte se, jak získat souhlas s aplikací střední vrstvy z tohoto článku. 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>
Parametry
- request
- OnBehalfOfRequest
Návraty
Promise<null | AuthenticationResult>
SetAppTokenProvider(IAppTokenProvider)
Tento bod rozšiřitelnosti funguje jenom pro tok client_credential, tj. acquireTokenByClientCredential a je určený pro Azure SDK k vylepšení podpory spravované identity.
function SetAppTokenProvider(provider: IAppTokenProvider)
Parametry
- provider
- IAppTokenProvider
Podrobnosti zděděných metod
acquireTokenByCode(AuthorizationCodeRequest, AuthorizationCodePayload)
Získá token výměnou autorizačního kódu přijatého z prvního kroku toku autorizačního kódu OAuth2.0.
getAuthCodeUrl(AuthorizationCodeUrlRequest) lze použít k vytvoření adresy URL pro první krok toku autorizačního kódu OAuth2.0. Ujistěte se, že hodnoty pro redirectUri a obory v AuthorizationCodeUrlRequest a AuthorizationCodeRequest jsou stejné.
function acquireTokenByCode(request: AuthorizationCodeRequest, authCodePayLoad?: AuthorizationCodePayload): Promise<AuthenticationResult>
Parametry
- request
- AuthorizationCodeRequest
- authCodePayLoad
- AuthorizationCodePayload
Návraty
Promise<AuthenticationResult>
Zděděno zClientApplication.acquireTokenByCode
acquireTokenByRefreshToken(RefreshTokenRequest)
Získá token výměnou obnovovacího tokenu poskytnutého pro novou sadu tokenů.
Toto rozhraní API je k dispozici pouze pro scénáře, ve kterých chcete migrovat z knihovny ADAL na knihovnu MSAL. V opačném případě se doporučuje používat acquireTokenSilent() pro tiché scénáře. Při použití acquireTokenSilent()bude msAL automaticky zpracovávat ukládání do mezipaměti a aktualizace tokenů.
function acquireTokenByRefreshToken(request: RefreshTokenRequest): Promise<null | AuthenticationResult>
Parametry
- request
- RefreshTokenRequest
Návraty
Promise<null | AuthenticationResult>
acquireTokenByUsernamePassword(UsernamePasswordRequest)
Upozornění
Toto rozhraní API je teď zastaralé.
- Use a more secure flow instead
Získá tokeny s udělením hesla výměnou uživatelského jména a hesla klientských aplikací pro přihlašovací údaje.
Nejnovější osvědčený postup zabezpečení OAuth 2.0 v současné době zakáže udělení hesla zcela. Další podrobnosti o tomto doporučení najdete v https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 dokumentaci a doporučeních Microsoft:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword
function acquireTokenByUsernamePassword(request: UsernamePasswordRequest): Promise<null | AuthenticationResult>
Parametry
- request
- UsernamePasswordRequest
UsenamePasswordRequest
Návraty
Promise<null | AuthenticationResult>
acquireTokenSilent(SilentFlowRequest)
Získá token bezobslužně, když uživatel určí účet, pro který je token požadován.
Toto rozhraní API očekává, že uživatel poskytne objekt účtu a vyhledá v mezipaměti token, pokud je k dispozici.
K dispozici je také volitelná logická hodnota forceRefresh, která může uživatel odeslat a obejít mezipaměť pro access_token a id_token.
V případě, že vypršela platnost refresh_token nebo nebyla nalezena, vyvolá se chyba a pokyny jsou určené pro volání jakéhokoli interaktivního rozhraní API pro získání tokenu (např. acquireTokenByCode()).
function acquireTokenSilent(request: SilentFlowRequest): Promise<AuthenticationResult>
Parametry
- request
- SilentFlowRequest
Návraty
Promise<AuthenticationResult>
Zděděno zClientApplication.acquireTokenSilent
clearCache()
getAuthCodeUrl(AuthorizationUrlRequest)
Vytvoří adresu URL žádosti o autorizaci, která uživateli umožní zadat přihlašovací údaje a vyjádřit souhlas s aplikací. Adresa URL cílí na koncový bod /authorize autority nakonfigurované v objektu aplikace.
Jakmile uživatel zadá své přihlašovací údaje a souhlas, autorita odešle odpověď na identifikátor URI přesměrování odeslaný v požadavku a měl by obsahovat autorizační kód, který pak lze použít k získání tokenů prostřednictvím acquireTokenByCode(AuthorizationCodeRequest).
function getAuthCodeUrl(request: AuthorizationUrlRequest): Promise<string>
Parametry
- request
- AuthorizationUrlRequest
Návraty
Promise<string>
Zděděno zClientApplication.getAuthCodeUrl
getLogger()
Vrátí instanci protokolovacího nástroje.
function getLogger(): Logger
Návraty
Zděděno zClientApplication.getLogger
getTokenCache()
Získá mezipaměť tokenů pro aplikaci.
function getTokenCache(): TokenCache
Návraty
Zděděno zClientApplication.getTokenCache
setLogger(Logger)
Nahradí výchozí protokolovací sadu v konfiguracích novým protokolovacím nástrojem novými konfiguracemi.
function setLogger(logger: Logger)
Parametry
- logger
- Logger
Instance loggeru
Zděděno zClientApplication.setLogger