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.
A biblioteca MSAL tem um conjunto de opções de configuração que podem ser usadas para personalizar o comportamento dos seus fluxos de autenticação. Estas opções podem ser definidas tanto no construtor do objeto PublicClientApplication como parte das APIs de pedido. Aqui descrevemos o objeto de configuração que pode ser passado para o construtor PublicClientApplication .
Pré-requisitos
- Uma boa compreensão de como inicializar um objeto de aplicação.
Utilização
O objeto de configuração pode ser passado para o PublicClientApplication construtor. O único parâmetro de configuração necessário é o client_id da aplicação. Tudo o resto é opcional, mas pode ser necessário dependendo do seu fluxo de autenticação, do tenant e do modelo de aplicação.
O objeto de Configuração com todos os parâmetros suportados é mostrado abaixo:
// Call back APIs which automatically write and read into a .json file - example implementation
const beforeCacheAccess = async (cacheContext) => {
cacheContext.tokenCache.deserialize(await fs.readFile(cachePath, "utf-8"));
};
const afterCacheAccess = async (cacheContext) => {
if(cacheContext.cacheHasChanged){
await fs.writeFile(cachePath, cacheContext.tokenCache.serialize());
}
};
// Cache Plugin
const cachePlugin = {
beforeCacheAccess,
afterCacheAccess
};;
const msalConfig = {
auth: {
clientId: "enter_client_id_here",
authority: "https://login.microsoftonline.com/common",
knownAuthorities: [],
cloudDiscoveryMetadata: "",
azureCloudOptions: {
azureCloudInstance: "enter_AzureCloudInstance_here" // AzureCloudInstance enum is exported as a "type",
tenant: "enter_tenant_info" // defaults to "common"
}
},
cache: {
cachePlugin // your implementation of cache plugin
},
system: {
loggerOptions: {
loggerCallback(loglevel, message, containsPii) {
console.log(message);
},
piiLoggingEnabled: false,
logLevel: msal.LogLevel.Verbose,
},
}
}
const msalInstance = new PublicClientApplication(msalConfig);
Opções
Opções de Configuração de Autenticação
| Option | Description | Formato | Valor padrão |
|---|---|---|---|
clientId |
ID da aplicação da sua candidatura. Pode ser encontrado no registo da sua aplicação no centro de administração Microsoft Entra de registo de aplicações. | UUID/GUID | Nenhum. Este parâmetro é necessário para que a MSAL realize quaisquer ações. |
authority |
URI do inquilino para autenticar e autorizar. Normalmente assume a forma de https://{uri}/{tenantid} |
String em formato URI com tenant - https://{uri}/{tenantid} |
https://login.microsoftonline.com/common |
knownAuthorities |
Um conjunto de URIs que se sabe serem válidos. Usado em cenários B2C. | Array de strings em formato URI | Matriz vazia [] |
cloudDiscoveryMetadata |
Uma cadeia que contém a resposta de descoberta da nuvem. Usado em cenários Microsoft Entra. Consulte Performance para mais informações | cadeia (de caracteres) | Corda vazia "" |
authorityMetadata |
Uma string contendo a resposta endpoint .well-known/openid-configuration. Consulte Performance para mais informações | cadeia (de caracteres) | Corda vazia "" |
clientCapabilities |
Conjunto de capacidades a ser adicionado a todos os pedidos de rede como parte do xms_cc pedido de reclamações |
Matriz de cadeias de caracteres | [] |
azureCloudOptions |
Um conjunto definido de opções de cloud Azure para os programadores poderem recorrer automaticamente às suas autoridades cloud específicas; para clouds específicas suportadas, consulte o AzureCloudInstance | AzureCloudOptions | AzureCloudInstance.None |
Opções de Configuração de Cache
| Option | Description | Formato | Valor padrão |
|---|---|---|---|
cachePlugin |
Plugin de cache com retornos de chamada para a persistência de leitura e escrita na cache (ver também: cache) | ICachePlugin | null |
Opções de Configuração do Corretor
| Option | Description | Formato | Valor padrão |
|---|---|---|---|
nativeBrokerPlugin |
Plugin de corredor para aquisição de tokens através de um corretor nativo de tokens (ver também: intermediação) | INativeBrokerPlugin | null |
Opções de Configuração do Sistema
| Option | Description | Formato | Valor padrão |
|---|---|---|---|
loggerOptions |
Objeto de configuração para logger. | Veja abaixo. | Veja abaixo. |
NetworkClient |
Implementação HTTP personalizada | INetworkModule | HttpClient.ts |
protocolMode |
Enum representa o modo de protocolo a utilizar. Se "AAD", funcionará nos endpoints Microsoft Entra v2; se "OIDC", funcionará nos endpoints compatíveis com OIDC. |
cadeia (de caracteres) | "AAD" |
disableInternalRetries |
Se for verdade, o MSAL não tentará novamente pedidos de rede falhados | Booleano | false |
Note
No MSAL Node v5, os proxyUrl parâmetros e customAgentOptions foram removidos. Se a sua aplicação precisar de suporte de proxy, implemente um cliente HTTP personalizado usando o INetworkModule. Veja o exemplo personalizado do INetworkModule para um exemplo. O protocolMode parâmetro também foi movido da configuração de autenticação para a configuração do sistema.
Opções de Configuração do Logger
| Option | Description | Formato | Valor padrão |
|---|---|---|---|
loggerCallback |
Função de callback que gere o registo das instruções MSAL. | Função - loggerCallback: (level: LogLevel, message: string, containsPii: boolean): void |
Ver acima. |
piiLoggingEnabled |
Se for verdade, informações pessoais identificáveis (PII) são incluídas nos registos. | Booleano | false |
Opções de Configuração de Telemetria
| Option | Description | Formato | Valor padrão |
|---|---|---|---|
application |
Opções de telemetria para aplicações que utilizam MSAL.js | Ver abaixo | Ver abaixo |
Telemetria de Aplicação
| Option | Description | Formato | Valor padrão |
|---|---|---|---|
appName |
Nome único de cadeia de uma aplicação | cadeia (de caracteres) | Fio vazio "" |
appVersion |
Versão da aplicação usando MSAL | cadeia (de caracteres) | Fio vazio "" |
Próximas Etapas
Prossiga para compreender as APIs públicas fornecidas por msal-nodeaqui para adquirir tokens