PublicClientApplication class

Ez az osztály nyilvános ügyfélalkalmazások (asztali, mobil) jogkivonatainak beszerzésére szolgál. A nyilvános ügyfélalkalmazások nem megbízhatók az alkalmazás titkos kulcsainak biztonságos tárolásához, ezért csak a felhasználó nevében kérhetnek jogkivonatokat.

Extends

Konstruktorok

PublicClientApplication(Configuration)

A hitelesítés konfigurációs objektumának fontos attribútumai a következők:

  • clientID: az alkalmazás alkalmazásazonosítója. Az alkalmazást az alkalmazásregisztrációs portálon regisztrálva szerezheti be.
  • szolgáltató: az alkalmazás szolgáltatói URL-címe.

Az AAD-hatóságok formátuma https://login.microsoftonline.com/{Enter_the_Tenant_Info_Here}.

  • Ha az alkalmazás támogatja a fiókokat egy szervezeti címtárban, cserélje le a "Enter_the_Tenant_Info_Here" értéket a bérlőazonosítóra vagy a bérlő nevére (például contoso.microsoft.com).
  • Ha az alkalmazás bármely szervezeti címtárban támogatja a fiókokat, cserélje le a "Enter_the_Tenant_Info_Here" értéket a szervezetekre.
  • Ha az alkalmazás bármely szervezeti címtárban és személyes Microsoft fiókban támogatja a fiókokat, cserélje le a "Enter_the_Tenant_Info_Here" értéket a közös értékre.
  • Ha csak a személyes Microsoft fiókok támogatását szeretné korlátozni, cserélje le a "Enter_the_Tenant_Info_Here" értéket a fogyasztókra.

Azure B2C-hatóságok a(z) https://{instance}/{tenant}/{policy} formátumúak. Minden szabályzatot saját hatáskörnek tekintünk. Az ügyfélalkalmazás létrehozásakor be kell állítania az összes ismertAuthorities értéket.

Az ADFS-hatóságok https://{instance}/adfs formátumúak.

Metódusok

acquireTokenByDeviceCode(DeviceCodeRequest)

Jogkivonatot szerez be a szolgáltatótól az OAuth2.0 eszközkódfolyamat használatával. Ez a folyamat olyan eszközökhöz készült, amelyek nem férnek hozzá a böngészőhöz, vagy bemeneti korlátozásokkal rendelkeznek. Az engedélyezési kiszolgáló egy DeviceCode-objektumot ad ki egy ellenőrző kóddal, egy végfelhasználói kóddal és a végfelhasználói ellenőrzési URI-val. A DeviceCode objektumot egy visszahívás biztosítja, és a végfelhasználót arra kell utasítani, hogy egy másik eszközzel lépjen az ellenőrző URI-ra a hitelesítő adatok beviteléhez. Mivel az ügyfél nem tud bejövő kéréseket fogadni, ismételten lekérdezi az engedélyezési kiszolgálót, amíg a végfelhasználó be nem fejezi a hitelesítő adatok bevitelét.

acquireTokenInteractive(InteractiveRequest)

Egy jogkivonatot interaktívan szerez be a böngészőn keresztül egy engedélyezési kód kérésével, majd egy jogkivonat cseréjével.

acquireTokenSilent(SilentFlowRequest)

A gyorsítótárból vagy egy friss hozzáférési jogkivonat frissítési jogkivonatának cseréjével lekért jogkivonatot ad vissza. Ha a közvetítő engedélyezve van, a jogkivonat-kérést a közvetítő fogja kiszolgálni.

getAllAccounts()

Az alkalmazás összes gyorsítótárazott fiókját adja vissza. Ha a közvetítő engedélyezve van, ezt a kérést a közvetítő fogja kiszolgálni.

signOut(SignOutRequest)

Eltávolítja az adott fiókhoz társított gyorsítótár-összetevőket

Örökölt metódusok

acquireTokenByCode(AuthorizationCodeRequest, AuthorizationCodePayload)

Jogkivonatot szerez be az OAuth2.0 engedélyezési kód folyamatának első lépésétől kapott engedélyezési kód cseréjével.

getAuthCodeUrl(AuthorizationCodeUrlRequest) az OAuth2.0 engedélyezési kód folyamatának első lépéséhez használható az URL-cím létrehozásához. Győződjön meg arról, hogy az AuthorizationCodeUrlRequest és az AuthorizationCodeRequest átirányításiuri és hatóköreinek értékei megegyeznek.

acquireTokenByRefreshToken(RefreshTokenRequest)

A jogkivonatot az új jogkivonatok frissítési jogkivonatának cseréjével szerzi be.

Ez az API csak olyan forgatókönyvekhez érhető el, ahol ADAL-ról MSAL-ra szeretne migrálni. Ellenkező esetben ajánlott csendes forgatókönyvekhez használni acquireTokenSilent() . A használat során acquireTokenSilent()az MSAL automatikusan kezeli a jogkivonatok gyorsítótárazását és frissítését.

acquireTokenByUsernamePassword(UsernamePasswordRequest)

Jogkivonatokat szerez be jelszó megadásával az ügyfélalkalmazások felhasználónév és jelszó cseréjével a hitelesítő adatokhoz

A legújabb OAuth 2.0 biztonsági ajánlott eljárás teljes mértékben letiltja a jelszó megadását. A javaslatról https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 további információt Microsoft dokumentációjában és javaslatában talál:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword

clearCache()

A gyorsítótár törlése

getAuthCodeUrl(AuthorizationUrlRequest)

Létrehozza az engedélyezési kérelem URL-címét, lehetővé téve a felhasználó számára a hitelesítő adatok megadását és az alkalmazáshoz való hozzájárulást. Az URL az alkalmazásobjektumban konfigurált szolgáltató /engedélyezési végpontját célozza meg.

Miután a felhasználó megadta a hitelesítő adatait és beleegyezéseit, a szolgáltató választ küld a kérelemben küldött átirányítási URI-nak, és tartalmaznia kell egy engedélyezési kódot, amely ezután a jogkivonatok acquireTokenByCode(AuthorizationCodeRequest)beszerzésére használható.

getLogger()

A naplózópéldányt adja vissza

getTokenCache()

Lekéri az alkalmazás jogkivonat-gyorsítótárát.

setLogger(Logger)

A konfigurációkban beállított alapértelmezett naplózó lecserélése új naplózóra új konfigurációkra

Konstruktor adatai

PublicClientApplication(Configuration)

A hitelesítés konfigurációs objektumának fontos attribútumai a következők:

  • clientID: az alkalmazás alkalmazásazonosítója. Az alkalmazást az alkalmazásregisztrációs portálon regisztrálva szerezheti be.
  • szolgáltató: az alkalmazás szolgáltatói URL-címe.

Az AAD-hatóságok formátuma https://login.microsoftonline.com/{Enter_the_Tenant_Info_Here}.

  • Ha az alkalmazás támogatja a fiókokat egy szervezeti címtárban, cserélje le a "Enter_the_Tenant_Info_Here" értéket a bérlőazonosítóra vagy a bérlő nevére (például contoso.microsoft.com).
  • Ha az alkalmazás bármely szervezeti címtárban támogatja a fiókokat, cserélje le a "Enter_the_Tenant_Info_Here" értéket a szervezetekre.
  • Ha az alkalmazás bármely szervezeti címtárban és személyes Microsoft fiókban támogatja a fiókokat, cserélje le a "Enter_the_Tenant_Info_Here" értéket a közös értékre.
  • Ha csak a személyes Microsoft fiókok támogatását szeretné korlátozni, cserélje le a "Enter_the_Tenant_Info_Here" értéket a fogyasztókra.

Azure B2C-hatóságok a(z) https://{instance}/{tenant}/{policy} formátumúak. Minden szabályzatot saját hatáskörnek tekintünk. Az ügyfélalkalmazás létrehozásakor be kell állítania az összes ismertAuthorities értéket.

Az ADFS-hatóságok https://{instance}/adfs formátumúak.

new PublicClientApplication(configuration: Configuration)

Paraméterek

configuration
Configuration

Metódus adatai

acquireTokenByDeviceCode(DeviceCodeRequest)

Jogkivonatot szerez be a szolgáltatótól az OAuth2.0 eszközkódfolyamat használatával. Ez a folyamat olyan eszközökhöz készült, amelyek nem férnek hozzá a böngészőhöz, vagy bemeneti korlátozásokkal rendelkeznek. Az engedélyezési kiszolgáló egy DeviceCode-objektumot ad ki egy ellenőrző kóddal, egy végfelhasználói kóddal és a végfelhasználói ellenőrzési URI-val. A DeviceCode objektumot egy visszahívás biztosítja, és a végfelhasználót arra kell utasítani, hogy egy másik eszközzel lépjen az ellenőrző URI-ra a hitelesítő adatok beviteléhez. Mivel az ügyfél nem tud bejövő kéréseket fogadni, ismételten lekérdezi az engedélyezési kiszolgálót, amíg a végfelhasználó be nem fejezi a hitelesítő adatok bevitelét.

function acquireTokenByDeviceCode(request: DeviceCodeRequest): Promise<null | AuthenticationResult>

Paraméterek

Válaszok

Promise<null | AuthenticationResult>

acquireTokenInteractive(InteractiveRequest)

Egy jogkivonatot interaktívan szerez be a böngészőn keresztül egy engedélyezési kód kérésével, majd egy jogkivonat cseréjével.

function acquireTokenInteractive(request: InteractiveRequest): Promise<AuthenticationResult>

Paraméterek

Válaszok

acquireTokenSilent(SilentFlowRequest)

A gyorsítótárból vagy egy friss hozzáférési jogkivonat frissítési jogkivonatának cseréjével lekért jogkivonatot ad vissza. Ha a közvetítő engedélyezve van, a jogkivonat-kérést a közvetítő fogja kiszolgálni.

function acquireTokenSilent(request: SilentFlowRequest): Promise<AuthenticationResult>

Paraméterek

request
SilentFlowRequest

fejlesztő által biztosított SilentFlowRequest

Válaszok

getAllAccounts()

Az alkalmazás összes gyorsítótárazott fiókját adja vissza. Ha a közvetítő engedélyezve van, ezt a kérést a közvetítő fogja kiszolgálni.

function getAllAccounts(): Promise<AccountInfo[]>

Válaszok

Promise<AccountInfo[]>

signOut(SignOutRequest)

Eltávolítja az adott fiókhoz társított gyorsítótár-összetevőket

function signOut(request: SignOutRequest): Promise<void>

Paraméterek

request
SignOutRequest

fejlesztő által biztosított SignOutRequest

Válaszok

Promise<void>

Örökölt metódus részletei

acquireTokenByCode(AuthorizationCodeRequest, AuthorizationCodePayload)

Jogkivonatot szerez be az OAuth2.0 engedélyezési kód folyamatának első lépésétől kapott engedélyezési kód cseréjével.

getAuthCodeUrl(AuthorizationCodeUrlRequest) az OAuth2.0 engedélyezési kód folyamatának első lépéséhez használható az URL-cím létrehozásához. Győződjön meg arról, hogy az AuthorizationCodeUrlRequest és az AuthorizationCodeRequest átirányításiuri és hatóköreinek értékei megegyeznek.

function acquireTokenByCode(request: AuthorizationCodeRequest, authCodePayLoad?: AuthorizationCodePayload): Promise<AuthenticationResult>

Paraméterek

authCodePayLoad
AuthorizationCodePayload

Válaszok

Örökölta ClientApplication.acquireTokenByCode-tól

acquireTokenByRefreshToken(RefreshTokenRequest)

A jogkivonatot az új jogkivonatok frissítési jogkivonatának cseréjével szerzi be.

Ez az API csak olyan forgatókönyvekhez érhető el, ahol ADAL-ról MSAL-ra szeretne migrálni. Ellenkező esetben ajánlott csendes forgatókönyvekhez használni acquireTokenSilent() . A használat során acquireTokenSilent()az MSAL automatikusan kezeli a jogkivonatok gyorsítótárazását és frissítését.

function acquireTokenByRefreshToken(request: RefreshTokenRequest): Promise<null | AuthenticationResult>

Paraméterek

Válaszok

Promise<null | AuthenticationResult>

A ClientApplication.acquireTokenByRefreshTokenörökölte

acquireTokenByUsernamePassword(UsernamePasswordRequest)

Figyelmeztetés

Ez az API már elavult.

  • Use a more secure flow instead

Jogkivonatokat szerez be jelszó megadásával az ügyfélalkalmazások felhasználónév és jelszó cseréjével a hitelesítő adatokhoz

A legújabb OAuth 2.0 biztonsági ajánlott eljárás teljes mértékben letiltja a jelszó megadását. A javaslatról https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 további információt Microsoft dokumentációjában és javaslatában talál:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword

function acquireTokenByUsernamePassword(request: UsernamePasswordRequest): Promise<null | AuthenticationResult>

Paraméterek

request
UsernamePasswordRequest

UsenamePasswordRequest

Válaszok

Promise<null | AuthenticationResult>

Örökölt a ClientApplication.acquireTokenByUsernamePasswordfájlból

clearCache()

A gyorsítótár törlése

function clearCache()

AClientApplication.clearCache-től örökölt

getAuthCodeUrl(AuthorizationUrlRequest)

Létrehozza az engedélyezési kérelem URL-címét, lehetővé téve a felhasználó számára a hitelesítő adatok megadását és az alkalmazáshoz való hozzájárulást. Az URL az alkalmazásobjektumban konfigurált szolgáltató /engedélyezési végpontját célozza meg.

Miután a felhasználó megadta a hitelesítő adatait és beleegyezéseit, a szolgáltató választ küld a kérelemben küldött átirányítási URI-nak, és tartalmaznia kell egy engedélyezési kódot, amely ezután a jogkivonatok acquireTokenByCode(AuthorizationCodeRequest)beszerzésére használható.

function getAuthCodeUrl(request: AuthorizationUrlRequest): Promise<string>

Paraméterek

Válaszok

Promise<string>

Örökölte aClientApplication.getAuthCodeUrl

getLogger()

A naplózópéldányt adja vissza

function getLogger(): Logger

Válaszok

Örökölte aClientApplication.getLogger

getTokenCache()

Lekéri az alkalmazás jogkivonat-gyorsítótárát.

function getTokenCache(): TokenCache

Válaszok

Örökölte aClientApplication.getTokenCache

setLogger(Logger)

A konfigurációkban beállított alapértelmezett naplózó lecserélése új naplózóra új konfigurációkra

function setLogger(logger: Logger)

Paraméterek

logger
Logger

Naplózópéldány

AClientApplication.setLoggertől örökölt