Inicializar o objeto do aplicativo cliente público no MSAL Node

Neste artigo, você aprenderá a inicializar o PublicClientApplication objeto no nó MSAL e como configurar a autoridade.

Pré-requisitos

Antes de inicializar um aplicativo, primeiro você precisa registrá-lo no centro de administração do Microsoft Entra, estabelecendo uma relação de confiança entre seu aplicativo e o plataforma de identidade da Microsoft.

Depois de registrar seu aplicativo, você precisará de alguns ou todos os valores a seguir que podem ser encontrados no centro de administração do Microsoft Entra.

Valor Obrigatório Description
ID do aplicativo (cliente) Obrigatório Um GUID que identifica exclusivamente o seu aplicativo na plataforma de identidade da Microsoft.
Autoridade Optional A URL do provedor de identidade (a instância) e o público de entrada do seu aplicativo. A instância e o público-alvo de login, quando concatenados, comem a autoridade.
ID do Diretório (locatário) Optional Especifique a ID do diretório (locatário) se você estiver criando um aplicativo de linha de negócios exclusivamente para sua organização, geralmente conhecido como um aplicativo de locatário único.
URI de redirecionamento Optional Se você estiver criando um aplicativo da Web, o redirectUri especifica onde o provedor de identidade (a plataforma de identidade da Microsoft) deve retornar os tokens de segurança que emitiu.

Inicializando o objeto PublicClientApplication

Para usar o MSAL Node, você precisa instanciar um objeto PublicClientApplication. Oferecemos suporte e recomendamos fortemente o uso de PKCE (Proof Key for Code Exchange) para qualquer aplicativo cliente público. O padrão de uso é demonstrado no exemplo PKCE.

import * as msal from "@azure/msal-node";

const clientConfig = {
    auth: {
        clientId: "your_client_id",
        authority: "your_authority",
    }
};
const pca = new msal.PublicClientApplication(clientConfig);

Noções básicas de configuração

As opções de Configuração do nó têm parâmetros common e parâmetros specific por fluxo de autenticação.

  • client_id é obrigatório para inicializar um aplicativo cliente público
  • authority o padrão é https://login.microsoftonline.com/common/ se o usuário não defini-lo durante a configuração

Para obter mais opções de configuração, consulte Configuração no MSAL Node.

Configurar Autoridade

Por padrão, a MSAL é configurada com o locatário common, que é usado para aplicativos multilocatário e aplicativos que permitem contas pessoais (não B2C).

const msalConfig = {
    auth: {
        clientId: 'your_client_id',
        authority: 'https://login.microsoftonline.com/common/'
    }
};

Se o público-alvo do aplicativo for um único locatário, você deverá fornecer uma autoridade com sua ID de locatário, conforme descrito abaixo:

const msalConfig = {
    auth: {
        clientId: 'your_client_id',
        authority: 'https://login.microsoftonline.com/{your_tenant_id}'
    }
};

Se o seu aplicativo estiver usando uma autoridade compatível com OIDC separada, como "https://login.live.com" ou um IdentityServer, será necessário informá-la no campo knownAuthorities e definir protocolMode como "OIDC".

const msalConfig = {
    auth: {
        clientId: 'your_client_id',
        authority: 'https://login.live.com',
        knownAuthorities: ["login.live.com"],
        protocolMode: "OIDC"
    }
};

Próximas etapas