Compartir a través de


Paso del estado personalizado en solicitudes de autenticación con MSAL.js

El parámetro state, tal como se define en OAuth 2.0, se incluye en una solicitud de autenticación y también se devuelve en la respuesta del token para evitar ataques de falsificación de la solicitud entre sitios. De forma predeterminada, la Biblioteca de autenticación de Microsoft para JavaScript (MSAL.js) pasa un valor único del parámetro state generado al azar en las solicitudes de autenticación.

El parámetro state también se puede usar para codificar la información de estado de la aplicación antes de la redirección. Puede pasar el estado del usuario en la aplicación, por ejemplo, la página o vista en el que estuviera, como entrada para este parámetro. La biblioteca MSAL.js le permite pasar el estado personalizado como parámetro de estado en el objeto Solicitud. Por ejemplo:

import {PublicClientApplication} from "@azure/msal-browser";

const myMsalObj = new PublicClientApplication({
    clientId: "ENTER_CLIENT_ID_HERE"
});

let loginRequest = {
    scopes: ["user.read"],
    state: "page_url"
}

myMSALObj.loginRedirect(loginRequest);

El estado pasado se anexa al GUID único establecido por MSAL.js al enviar la solicitud. Cuando se devuelve la respuesta, MSAL.js busca una coincidencia de estado y, a continuación, devuelve el estado personalizado pasado en el objeto Respuesta como state.

Pasos siguientes

Para más información, cree una aplicación de página única (SPA) de React que inicie sesión de los usuarios en la siguiente serie de tutoriales de varias partes.