Migrar do MSAL Node v3 para a v5

Note

Não há lançamento do MSAL Node v4. A versão do pacote foi incrementada da v3 diretamente para a v5 para alinhar o controle de versão de msal-node ao das outras bibliotecas MSAL.js. Não existe nenhum conjunto de recursos v4 separado.

Suporte descartado para Node.js 16 e 18

O MSAL Node v5 não é mais compatível com o Node.js 16 nem 18; você deve usar o Node.js 20 ou versão posterior.

Removido proxyUrl e customAgentOptions

O MSAL Node v5 não oferece mais configuração opcional do cliente HTTP. Os proxyUrl parâmetros e os customAgentOptions parâmetros foram removidos de NodeSystemOptions.

// BEFORE (v3)
NodeSystemOptions = {
    loggerOptions?: LoggerOptions;
    networkClient?: INetworkModule;
    proxyUrl?: string;
    customAgentOptions?: http.AgentOptions | https.AgentOptions;
    disableInternalRetries?: boolean;
    protocolMode?: ProtocolMode;
};

// AFTER (v5)
NodeSystemOptions = {
    loggerOptions?: LoggerOptions;
    networkClient?: INetworkModule;
    disableInternalRetries?: boolean;
    protocolMode?: ProtocolMode;
};

Os desenvolvedores agora devem escrever seu próprio cliente HTTP personalizado quando o suporte a proxy for necessário. Consulte o exemplo de INetworkModule personalizado para obter detalhes de implementação.

Alterações de configuração

protocolMode movido para as configurações do sistema

O protocolMode parâmetro não é mais uma opção de configuração de autenticação e, em vez disso, é uma opção de configuração do sistema.

// BEFORE (v3)
const msalConfig = {
    auth: {
        clientId: "your_client_id",
        authority: "https://login.live.com",
        protocolMode: "OIDC",
    },
};

// AFTER (v5)
const msalConfig = {
    auth: {
        clientId: "your_client_id",
        authority: "https://login.live.com",
    },
    system: {
        protocolMode: "OIDC",
    },
};

Outros parâmetros removidos

  • O parâmetro skipAuthorityMetadataCache foi removido. Os aplicativos não usam mais o cache de metadados local durante a inicialização da autoridade.
  • O parâmetro encodeExtraQueryParams foi removido. Todos os parâmetros de consulta extras são codificados automaticamente.

fromNativeBroker renomeado para fromPlatformBroker

AuthenticationResult No objeto, o fromNativeBroker campo foi renomeado para fromPlatformBroker.