Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Se você for novo no MSAL, comece aqui.
Se você estiver vindo da MSAL v1.x, deverá verificar este guia primeiro para migrar para a MSAL v2.x e, em seguida, seguir as próximas etapas.
Se você estiver vindo da MSAL v2.x, poderá seguir este guia para atualizar seu código para usar MSAL v3.x.
Alterações críticas
Instanciação de aplicativo
No MSAL v2.x, você criou uma instância de aplicativo como abaixo:
import { PublicClientApplication } from "@azure/msal-browser";
const msalConfig = {
auth: {
clientId: 'your_client_id'
}
};
const msalInstance = new PublicClientApplication(msalConfig);
No MSAL v3.x, você também deve inicializar o objeto do aplicativo. Há várias opções à sua disposição:
Opção 1
Instancie um PublicClientApplication objeto e inicialize-o posteriormente. A initialize função é assíncrona e deve ser resolvida antes de invocar outras APIs MSAL.js.
import { PublicClientApplication } from "@azure/msal-browser";
const msalConfig = {
auth: {
clientId: 'your_client_id'
}
};
const msalInstance = new PublicClientApplication(msalConfig);
await msalInstance.initialize();
Opção 2
Invoque o createPublicClientApplication método estático que retorna um objeto inicializado PublicClientApplication . Observe que essa função é assíncrona.
import { PublicClientApplication } from "@azure/msal-browser";
const msalConfig = {
auth: {
clientId: 'your_client_id'
}
};
const msalInstance = await PublicClientApplication.createPublicClientApplication(msalConfig);
Cache baseado em declarações
No MSAL v2.x, adicionar declarações a uma solicitação resultará em um hash da cadeia de caracteres de declarações solicitada sendo adicionada à chave de cache do token por padrão. Isso implica que a MSAL 2.x armazena tokens em cache e faz a correspondência deles com base em declarações por padrão. No MSAL v3.x, esse comportamento não é mais o padrão. O comportamento padrão da MSAL v3.x é ir para a rede para atualizar um token sempre que as declarações forem solicitadas, independentemente de o token ter sido armazenado em cache anteriormente e ainda ser válido. Em seguida, depois de ir para a rede, o token recebido substituirá o token armazenado em cache caso uma solicitação silenciosa sem declarações seja executada posteriormente. Para habilitar o cache baseado em declarações no MSAL v3.x para manter o mesmo comportamento que no MSAL v2.x, os desenvolvedores devem usar o cacheOptions.claimsBasedCachingEnabled sinalizador de configuração definido como true no objeto de configuração do Aplicativo Cliente:
const msalConfig = {
auth: {
...
},
...
cache: {
claimsBasedCachingEnabled: true
}
}
const msalInstance = new msal.PublicClientApplication(msalConfig);
await msalInstance.initialize();
Todas as outras APIs são retrocompatíveis com o MSAL v2.x. É recomendável dar uma olhada no exemplo padrão para ver um exemplo de trabalho da MSAL v3.0.
Cripto
O MSAL v3.x deixa de oferecer suporte à criptografia nativa do IE11 window.msCrypto e à Microsoft Research JavaScript Cryptography Library (MSR Crypto) window.msrCrypto em favor da API de criptografia nativa do navegador window.crypto.
As opções config.system.cryptoOptions de criptografia usadas para a criptografia MSR também não têm suporte.
Alterações de chave
Suporte ao navegador
MSAL.js não dá mais suporte aos seguintes navegadores:
- IE 11
- Edge (Legacy)
Dependências do pacote
A versão do TypeScript foi atualizada de 3.8.3 para 4.9.5.
Opções do compilador
As versões do módulo/alvo foram atualizadas de es6/es5 para es2020/es2020, respectivamente.
CDN
MSAL.js não está mais hospedado em uma CDN. Verifique este documento para obter mais detalhes.