Passar o estado personalizado nas solicitações de autenticação usando MSAL.js
O parâmetro state, conforme definido pelo OAuth 2.0, está incluído em uma solicitação de autenticação e também é retornado na resposta do token para impedir ataques de solicitação intersite forjada. Por padrão, a MSAL.js (Biblioteca de Autenticação da Microsoft para JavaScript) passa um valor exclusivo gerado aleatoriamente para o parâmetro state nas solicitações de autenticação.
O parâmetro state também pode ser usado para codificar informações do estado do aplicativo antes do redirecionamento. Você pode passar o estado do usuário no aplicativo, como a página ou a exibição em que ele estava, como entrada para esse parâmetro. A biblioteca MSAL.js permite que você passe seu estado personalizado como parâmetro de estado no objeto Solicitação. Por exemplo:
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);
O estado transmitido é acrescentado ao GUID exclusivo definido pela MSAL.js ao enviar a solicitação. Quando a resposta é retornada, a MSAL.js verifica se há uma correspondência entre estados e retorna o estado personalizado passado no objeto Resposta como state
.
Próximas etapas
Saiba mais criando um aplicativo de página única (SPA) no React que conecta usuários na série de tutoriais de várias partes a seguir.