Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este artigo apresenta uma visão geral dos diferentes tipos de erros e recomendações para lidar com erros comuns de iniciação de sessão.
Noções básicas de gestão de erros MSAL
As exceções na Biblioteca de Autenticação da Microsoft (MSAL) destinam-se aos programadores de aplicações para resolver problemas, não para serem exibidas aos utilizadores finais. As mensagens de exceção não são localizadas.
Ao processar exceções e erros, pode usar o próprio tipo de exceção e o código de erro para distinguir entre exceções. Para uma lista de códigos de erro, consulte códigos de erro de autenticação e autorização Microsoft Entra.
Durante a experiência de login, pode encontrar erros sobre consentimentos, Acesso Condicional (MFA, Gestão de Dispositivos, restrições baseadas na localização), emissão e resgate de tokens, e propriedades dos utilizadores.
A secção seguinte fornece mais detalhes sobre o tratamento de erros na sua aplicação.
Configurar o login MSAL.js
Ative o registo no MSAL.js (JavaScript) ao passar um objeto loggerOptions durante a configuração para criar uma instância PublicClientApplication. O único parâmetro de configuração necessário é o ID do cliente da aplicação. Tudo o resto é opcional, mas pode ser obrigatório dependendo do inquilino e do modelo de candidatura.
O objeto loggerOptions tem as seguintes propriedades:
-
loggerCallback: uma função de callback que pode ser fornecida pelo desenvolvedor para processar o registo das mensagens do MSAL de forma personalizada. Implementa aloggerCallbackfunção dependendo de como queres redirecionar os registos. A função loggerCallback tem o seguinte formato(level: LogLevel, message: string, containsPii: boolean): void- Os níveis logarítmicos suportados são:
Error,Warning,Info, eVerbose. A predefinição éInfo.
- Os níveis logarítmicos suportados são:
-
piiLoggingEnabled(opcional): se definido como true, regista dados pessoais e organizacionais. Por defeito, isto é falso, por isso a sua aplicação não regista dados pessoais. Os registos de dados pessoais nunca são escritos em saídas predefinidas como Console, Logcat ou NSLog.
import msal from "@azure/msal-browser"
const msalConfig = {
auth: {
clientId: "enter_client_id_here",
authority: "https://login.microsoftonline.com/common",
knownAuthorities: [],
cloudDiscoveryMetadata: "",
redirectUri: "enter_redirect_uri_here",
postLogoutRedirectUri: "enter_postlogout_uri_here",
navigateToLoginRequestUrl: true,
clientCapabilities: ["CP1"]
},
cache: {
cacheLocation: "sessionStorage",
storeAuthStateInCookie: false,
secureCookies: false
},
system: {
loggerOptions: {
logLevel: msal.LogLevel.Verbose,
loggerCallback: (level, message, containsPii) => {
if (containsPii) {
return;
}
switch (level) {
case msal.LogLevel.Error:
console.error(message);
return;
case msal.LogLevel.Info:
console.info(message);
return;
case msal.LogLevel.Verbose:
console.debug(message);
return;
case msal.LogLevel.Warning:
console.warn(message);
return;
}
},
piiLoggingEnabled: false
},
},
};
Passos seguintes
Para mais exemplos de código, consulte exemplos de código da plataforma de identidades da Microsoft.