PublicClientApplication class
La clase PublicClientApplication es el objeto expuesto por la biblioteca para realizar funciones de autenticación y autorización en aplicaciones de página única para obtener tokens JWT, tal y como se describe en el flujo de código de autorización de OAuth 2.0 con la especificación PKCE.
Constructores
| Public |
Métodos
| acquire |
Esta función canjea un código de autorización (pasado como código) desde el punto de conexión del token de eSTS. Este código de autorización debe adquirirse en el lado servidor mediante un cliente confidencial para adquirir un spa_code. Esta API no está codificada para la adquisición y el canje normales del código de autorización. El canje de este código de autorización no requerirá PKCE, ya que lo adquirió un cliente confidencial. |
| acquire |
Use cuando desee obtener una access_token para la API mediante la apertura de una ventana emergente en el explorador del usuario. |
| acquire |
Use cuando desee obtener una access_token para la API redirigiendo la ventana del explorador del usuario al punto de conexión de autorización. Esta función redirige la página, por lo que cualquier código que siga a esta función no se ejecutará. IMPORTANTE: NO se recomienda tener código que dependa de la resolución de la promesa. Esta función se alejará de la ventana actual del explorador. Actualmente devuelve una promesa para reflejar la naturaleza asincrónica del código que se ejecuta en esta función. |
| acquire |
Adquirir de forma silenciosa un token de acceso para un conjunto determinado de ámbitos. Devuelve la promesa de procesamiento actual si se realizan solicitudes paralelas. |
| add |
Agrega devoluciones de llamada de eventos a la matriz |
| add |
Registra una devolución de llamada para recibir eventos de rendimiento. |
| clear |
Borra los tokens y la cuenta de la caché del explorador. |
| create |
Crea StandardController y lo pasa a PublicClientApplication. |
| disable |
Quita el agente de escucha de eventos que emite un evento cuando se agrega o quita una cuenta de usuario de localstorage en otra pestaña o ventana del explorador. |
| enable |
Agrega un agente de escucha de eventos que emite un evento cuando se agrega o quita una cuenta de usuario de localstorage en otra pestaña o ventana del explorador. |
| get |
Devuelve la primera cuenta que se encuentra en la memoria caché que coincide con el filtro de cuenta pasado. |
| get |
Devuelve la cuenta con sesión iniciada que coincide con homeAccountId. (el objeto account se crea en el momento del inicio de sesión correcto) o null cuando no se encuentra ninguna cuenta coincidente. |
| get |
Devuelve la cuenta con sesión iniciada que coincide con localAccountId. (el objeto account se crea en el momento del inicio de sesión correcto) o null cuando no se encuentra ninguna cuenta coincidente. |
| get |
Devuelve el nombre de usuario que coincide con la cuenta con sesión iniciada. (el objeto de cuenta se crea en el momento del inicio de sesión correcto) o null cuando no se encuentra ninguna cuenta coincidente. Esta API se proporciona para mayor comodidad, pero getAccountById debe usarse para mejorar la confiabilidad. |
| get |
Obtiene la cuenta activa actualmente. |
| get |
Devuelve todas las cuentas de la memoria caché que coinciden con el filtro opcional. Si no se proporciona ningún filtro, se devuelven todas las cuentas. |
| get |
Devuelve la instancia del registrador. |
| get |
Obtiene la caché de tokens de la aplicación. |
| handle |
Función del controlador de eventos que permite a los usuarios desencadenar eventos después de que el objeto PublicClientApplication se haya cargado durante los flujos de redirección. Se debe invocar en todas las cargas de página implicadas en los flujos de autenticación de redirección. |
| hydrate |
Hidrata la memoria caché con los tokens y la cuenta en el objeto AuthenticationResult |
| initialize(Initialize |
Función de inicializador para realizar tareas de inicio asincrónicas, como la conexión a la extensión WAM |
| initialize |
Llamado por bibliotecas contenedoras (Angular & React) para establecer la SKU y la versión que se pasan a telemetría, registrador, etc. |
| login |
Use al iniciar el proceso de inicio de sesión mediante la apertura de una ventana emergente en el explorador del usuario. |
| login |
Use al iniciar el proceso de inicio de sesión redirigiendo el explorador del usuario al punto de conexión de autorización. Esta función redirige la página, por lo que cualquier código que siga a esta función no se ejecutará. IMPORTANTE: NO se recomienda tener código que dependa de la resolución de la promesa. Esta función se alejará de la ventana actual del explorador. Actualmente devuelve una promesa para reflejar la naturaleza asincrónica del código que se ejecuta en esta función. |
| logout(End |
Función de cierre de sesión en desuso. Use logoutRedirect o logoutPopup en su lugar. |
| logout |
Borra la caché local del usuario actual y, a continuación, abre una ventana emergente que solicita al usuario que cierre la sesión del servidor. |
| logout |
Use para cerrar la sesión del usuario actual y redirigir al usuario a postLogoutRedirectUri.
El comportamiento predeterminado es redirigir al usuario a |
| remove |
Quita la devolución de llamada con el identificador proporcionado de la matriz de devolución de llamada. |
| remove |
Quita una devolución de llamada registrada con addPerformanceCallback. |
| set |
Establece la cuenta que se va a usar como cuenta activa. Si no se pasa ninguna cuenta a las API acquireToken, MSAL usará esta cuenta activa. |
| set |
Reemplaza el registrador predeterminado establecido en configuraciones por el nuevo registrador por nuevas configuraciones. |
| set |
Establece el cliente de navegación |
| sso |
Esta función usa un iframe oculto para capturar un código de autorización de eSTS. Hay casos en los que esto puede no funcionar:
En estos casos, la solicitud debe realizarse dentro de una ventana emergente o redirección de fotograma completo. En los casos en los que se requiere interacción, no se puede enviar una solicitud con prompt=none. Si el token de actualización ha expirado, puede usar esta función para capturar un nuevo conjunto de tokens de forma silenciosa, siempre y cuando la sesión en el servidor siga existiendo. |
Detalles del constructor
PublicClientApplication(Configuration, IController)
new PublicClientApplication(configuration: Configuration, controller?: IController)
Parámetros
- configuration
- Configuration
Objeto para la instancia publicClientApplication de MSAL
- controller
- IController
Detalles del método
acquireTokenByCode(AuthorizationCodeRequest)
Esta función canjea un código de autorización (pasado como código) desde el punto de conexión del token de eSTS. Este código de autorización debe adquirirse en el lado servidor mediante un cliente confidencial para adquirir un spa_code. Esta API no está codificada para la adquisición y el canje normales del código de autorización.
El canje de este código de autorización no requerirá PKCE, ya que lo adquirió un cliente confidencial.
function acquireTokenByCode(request: AuthorizationCodeRequest): Promise<AuthenticationResult>
Parámetros
Devoluciones
Promise<AuthenticationResult>
Promesa que se cumple cuando se ha completado esta función o se rechaza si se ha generado un error.
acquireTokenPopup(PopupRequest)
Use cuando desee obtener una access_token para la API mediante la apertura de una ventana emergente en el explorador del usuario.
function acquireTokenPopup(request: PopupRequest): Promise<AuthenticationResult>
Parámetros
- request
- PopupRequest
Devoluciones
Promise<AuthenticationResult>
Promesa que se cumple cuando se ha completado esta función o se rechaza si se ha generado un error.
acquireTokenRedirect(RedirectRequest)
Use cuando desee obtener una access_token para la API redirigiendo la ventana del explorador del usuario al punto de conexión de autorización. Esta función redirige la página, por lo que cualquier código que siga a esta función no se ejecutará.
IMPORTANTE: NO se recomienda tener código que dependa de la resolución de la promesa. Esta función se alejará de la ventana actual del explorador. Actualmente devuelve una promesa para reflejar la naturaleza asincrónica del código que se ejecuta en esta función.
function acquireTokenRedirect(request: RedirectRequest): Promise<void>
Parámetros
- request
- RedirectRequest
Devoluciones
Promise<void>
acquireTokenSilent(SilentRequest)
Adquirir de forma silenciosa un token de acceso para un conjunto determinado de ámbitos. Devuelve la promesa de procesamiento actual si se realizan solicitudes paralelas.
function acquireTokenSilent(silentRequest: SilentRequest): Promise<AuthenticationResult>
Parámetros
- silentRequest
- SilentRequest
Devoluciones
Promise<AuthenticationResult>
- una promesa que se cumple cuando se ha completado esta función o se rechaza si se ha generado un error. Devuelve el objeto AuthenticationResult .
addEventCallback(EventCallbackFunction, EventType[])
Agrega devoluciones de llamada de eventos a la matriz
function addEventCallback(callback: EventCallbackFunction, eventTypes?: EventType[]): null | string
Parámetros
- callback
- EventCallbackFunction
- eventTypes
Devoluciones
null | string
addPerformanceCallback(PerformanceCallbackFunction)
Registra una devolución de llamada para recibir eventos de rendimiento.
function addPerformanceCallback(callback: PerformanceCallbackFunction): string
Parámetros
- callback
- PerformanceCallbackFunction
Devoluciones
string
clearCache(ClearCacheRequest)
Borra los tokens y la cuenta de la caché del explorador.
function clearCache(logoutRequest?: ClearCacheRequest): Promise<void>
Parámetros
- logoutRequest
- ClearCacheRequest
Devoluciones
Promise<void>
createPublicClientApplication(Configuration)
Crea StandardController y lo pasa a PublicClientApplication.
static function createPublicClientApplication(configuration: Configuration): Promise<IPublicClientApplication>
Parámetros
- configuration
- Configuration
{Configuration}
Devoluciones
Promise<IPublicClientApplication>
disableAccountStorageEvents()
Quita el agente de escucha de eventos que emite un evento cuando se agrega o quita una cuenta de usuario de localstorage en otra pestaña o ventana del explorador.
function disableAccountStorageEvents()
enableAccountStorageEvents()
Agrega un agente de escucha de eventos que emite un evento cuando se agrega o quita una cuenta de usuario de localstorage en otra pestaña o ventana del explorador.
function enableAccountStorageEvents()
getAccount(AccountFilter)
Devuelve la primera cuenta que se encuentra en la memoria caché que coincide con el filtro de cuenta pasado.
function getAccount(accountFilter: AccountFilter): null | AccountInfo
Parámetros
- accountFilter
- AccountFilter
Devoluciones
null | AccountInfo
La primera cuenta que se encuentra en la memoria caché que coincide con el filtro proporcionado o null si no se encuentra ninguna cuenta.
getAccountByHomeId(string)
Advertencia
Esta API ya está en desuso.
- Use getAccount instead
Devuelve la cuenta con sesión iniciada que coincide con homeAccountId. (el objeto account se crea en el momento del inicio de sesión correcto) o null cuando no se encuentra ninguna cuenta coincidente.
function getAccountByHomeId(homeAccountId: string): null | AccountInfo
Parámetros
- homeAccountId
-
string
Devoluciones
null | AccountInfo
Objeto de cuenta almacenado en MSAL
getAccountByLocalId(string)
Advertencia
Esta API ya está en desuso.
- Use getAccount instead
Devuelve la cuenta con sesión iniciada que coincide con localAccountId. (el objeto account se crea en el momento del inicio de sesión correcto) o null cuando no se encuentra ninguna cuenta coincidente.
function getAccountByLocalId(localId: string): null | AccountInfo
Parámetros
- localId
-
string
Devoluciones
null | AccountInfo
Objeto de cuenta almacenado en MSAL
getAccountByUsername(string)
Advertencia
Esta API ya está en desuso.
- Use getAccount instead
Devuelve el nombre de usuario que coincide con la cuenta con sesión iniciada. (el objeto de cuenta se crea en el momento del inicio de sesión correcto) o null cuando no se encuentra ninguna cuenta coincidente. Esta API se proporciona para mayor comodidad, pero getAccountById debe usarse para mejorar la confiabilidad.
function getAccountByUsername(userName: string): null | AccountInfo
Parámetros
- userName
-
string
Devoluciones
null | AccountInfo
Objeto de cuenta almacenado en MSAL
getActiveAccount()
Obtiene la cuenta activa actualmente.
function getActiveAccount(): null | AccountInfo
Devoluciones
null | AccountInfo
getAllAccounts(AccountFilter)
Devuelve todas las cuentas de la memoria caché que coinciden con el filtro opcional. Si no se proporciona ningún filtro, se devuelven todas las cuentas.
function getAllAccounts(accountFilter?: AccountFilter): AccountInfo[]
Parámetros
- accountFilter
- AccountFilter
(Opcional) filtro para restringir las cuentas devueltas
Devoluciones
Matriz de objetos AccountInfo en la memoria caché
getLogger()
getTokenCache()
Obtiene la caché de tokens de la aplicación.
function getTokenCache(): ITokenCache
Devoluciones
handleRedirectPromise(string)
Función del controlador de eventos que permite a los usuarios desencadenar eventos después de que el objeto PublicClientApplication se haya cargado durante los flujos de redirección. Se debe invocar en todas las cargas de página implicadas en los flujos de autenticación de redirección.
function handleRedirectPromise(hash?: string): Promise<null | AuthenticationResult>
Parámetros
- hash
-
string
Hash que se va a procesar. El valor predeterminado es window.location.hash. Solo debe proporcionarse explícitamente si la respuesta que se va a controlar no está contenida en el valor actual.
Devoluciones
Promise<null | AuthenticationResult>
Respuesta de token o null. Si el valor devuelto es NULL, no se detectó ninguna redirección de autenticación.
hydrateCache(AuthenticationResult, PopupRequest | RedirectRequest | SilentRequest | Partial<Omit<CommonAuthorizationUrlRequest, "responseMode" | "earJwk" | "codeChallenge" | "codeChallengeMethod" | "requestedClaimsHash" | "platformBroker">>)
Hidrata la memoria caché con los tokens y la cuenta en el objeto AuthenticationResult
function hydrateCache(result: AuthenticationResult, request: PopupRequest | RedirectRequest | SilentRequest | Partial<Omit<CommonAuthorizationUrlRequest, "responseMode" | "earJwk" | "codeChallenge" | "codeChallengeMethod" | "requestedClaimsHash" | "platformBroker">>): Promise<void>
Parámetros
- result
- AuthenticationResult
- request
-
PopupRequest | RedirectRequest | SilentRequest | Partial<Omit<CommonAuthorizationUrlRequest, "responseMode" | "earJwk" | "codeChallenge" | "codeChallengeMethod" | "requestedClaimsHash" | "platformBroker">>
Objeto de solicitud que se usó para obtener AuthenticationResult
Devoluciones
Promise<void>
initialize(InitializeApplicationRequest)
Función de inicializador para realizar tareas de inicio asincrónicas, como la conexión a la extensión WAM
function initialize(request?: InitializeApplicationRequest): Promise<void>
Parámetros
- request
- InitializeApplicationRequest
{? InitializeApplicationRequest}
Devoluciones
Promise<void>
initializeWrapperLibrary(WrapperSKU, string)
Llamado por bibliotecas contenedoras (Angular & React) para establecer la SKU y la versión que se pasan a telemetría, registrador, etc.
function initializeWrapperLibrary(sku: WrapperSKU, version: string)
Parámetros
- sku
- WrapperSKU
- version
-
string
loginPopup(PopupRequest)
Use al iniciar el proceso de inicio de sesión mediante la apertura de una ventana emergente en el explorador del usuario.
function loginPopup(request?: PopupRequest): Promise<AuthenticationResult>
Parámetros
- request
- PopupRequest
Devoluciones
Promise<AuthenticationResult>
Promesa que se cumple cuando se ha completado esta función o se rechaza si se ha generado un error.
loginRedirect(RedirectRequest)
Use al iniciar el proceso de inicio de sesión redirigiendo el explorador del usuario al punto de conexión de autorización. Esta función redirige la página, por lo que cualquier código que siga a esta función no se ejecutará.
IMPORTANTE: NO se recomienda tener código que dependa de la resolución de la promesa. Esta función se alejará de la ventana actual del explorador. Actualmente devuelve una promesa para reflejar la naturaleza asincrónica del código que se ejecuta en esta función.
function loginRedirect(request?: RedirectRequest): Promise<void>
Parámetros
- request
- RedirectRequest
Devoluciones
Promise<void>
logout(EndSessionRequest)
Advertencia
Esta API ya está en desuso.
Función de cierre de sesión en desuso. Use logoutRedirect o logoutPopup en su lugar.
function logout(logoutRequest?: EndSessionRequest): Promise<void>
Parámetros
- logoutRequest
- EndSessionRequest
Devoluciones
Promise<void>
logoutPopup(EndSessionPopupRequest)
Borra la caché local del usuario actual y, a continuación, abre una ventana emergente que solicita al usuario que cierre la sesión del servidor.
function logoutPopup(logoutRequest?: EndSessionPopupRequest): Promise<void>
Parámetros
- logoutRequest
- EndSessionPopupRequest
Devoluciones
Promise<void>
logoutRedirect(EndSessionRequest)
Use para cerrar la sesión del usuario actual y redirigir al usuario a postLogoutRedirectUri.
El comportamiento predeterminado es redirigir al usuario a window.location.href.
function logoutRedirect(logoutRequest?: EndSessionRequest): Promise<void>
Parámetros
- logoutRequest
- EndSessionRequest
Devoluciones
Promise<void>
removeEventCallback(string)
Quita la devolución de llamada con el identificador proporcionado de la matriz de devolución de llamada.
function removeEventCallback(callbackId: string)
Parámetros
- callbackId
-
string
removePerformanceCallback(string)
Quita una devolución de llamada registrada con addPerformanceCallback.
function removePerformanceCallback(callbackId: string): boolean
Parámetros
- callbackId
-
string
Devoluciones
boolean
setActiveAccount(null | AccountInfo)
Establece la cuenta que se va a usar como cuenta activa. Si no se pasa ninguna cuenta a las API acquireToken, MSAL usará esta cuenta activa.
function setActiveAccount(account: null | AccountInfo)
Parámetros
- account
-
null | AccountInfo
setLogger(Logger)
Reemplaza el registrador predeterminado establecido en configuraciones por el nuevo registrador por nuevas configuraciones.
function setLogger(logger: Logger)
Parámetros
- logger
- Logger
Instancia del registrador
setNavigationClient(INavigationClient)
Establece el cliente de navegación
function setNavigationClient(navigationClient: INavigationClient)
Parámetros
- navigationClient
- INavigationClient
ssoSilent(Partial<Omit<CommonAuthorizationUrlRequest, "responseMode" | "earJwk" | "codeChallenge" | "codeChallengeMethod" | "requestedClaimsHash" | "platformBroker">>)
Esta función usa un iframe oculto para capturar un código de autorización de eSTS. Hay casos en los que esto puede no funcionar:
- Cualquier explorador que use una forma de prevención de seguimiento inteligente
- Si no hay una sesión establecida con el servicio
En estos casos, la solicitud debe realizarse dentro de una ventana emergente o redirección de fotograma completo.
En los casos en los que se requiere interacción, no se puede enviar una solicitud con prompt=none.
Si el token de actualización ha expirado, puede usar esta función para capturar un nuevo conjunto de tokens de forma silenciosa, siempre y cuando la sesión en el servidor siga existiendo.
function ssoSilent(request: Partial<Omit<CommonAuthorizationUrlRequest, "responseMode" | "earJwk" | "codeChallenge" | "codeChallengeMethod" | "requestedClaimsHash" | "platformBroker">>): Promise<AuthenticationResult>
Parámetros
- request
-
Partial<Omit<CommonAuthorizationUrlRequest, "responseMode" | "earJwk" | "codeChallenge" | "codeChallengeMethod" | "requestedClaimsHash" | "platformBroker">>
Devoluciones
Promise<AuthenticationResult>
Promesa que se cumple cuando se ha completado esta función o se rechaza si se ha generado un error.