Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La biblioteca MSAL tiene un conjunto de opciones de configuración que se pueden usar para personalizar el comportamiento de los flujos de autenticación. Estas opciones se pueden establecer en el constructor del objeto PublicClientApplication o como parte de las API de solicitud. Aquí se describe el objeto de configuración que se puede pasar al constructor PublicClientApplication .
Prerequisites
- Una buena comprensión de cómo inicializar un objeto de aplicación.
Uso
El objeto de configuración se puede pasar al PublicClientApplication constructor . El único parámetro de configuración necesario es el client_id de la aplicación. Todo lo demás es opcional, pero puede ser necesario en función del flujo de autenticación, el inquilino y el modelo de aplicación.
A continuación se muestra el objeto Configuration con todos los parámetros admitidos:
// 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);
Options
Opciones de configuración de autenticación
| Opción | Description | Format | Valor predeterminado |
|---|---|---|---|
clientId |
Id. de aplicación de la aplicación. Puede encontrarse en el registro de la aplicación en el registro de la aplicación Centro de administración Microsoft Entra. | UUID/GUID | None. Este parámetro es necesario para que MSAL realice cualquier acción. |
authority |
URI del inquilino con el que autenticar y autorizar. Normalmente toma la forma de https://{uri}/{tenantid} |
Cadena en formato URI con inquilino: https://{uri}/{tenantid} |
https://login.microsoftonline.com/common |
knownAuthorities |
Matriz de URI que se sabe que son válidas. Se usa en escenarios B2C. | Matriz de cadenas en formato URI | Matriz vacía [] |
cloudDiscoveryMetadata |
Cadena que contiene la respuesta de Cloud Discovery. Se usa en escenarios de Microsoft Entra. Consulte Rendimiento para obtener más información. | string | Cadena vacía "" |
authorityMetadata |
Cadena que contiene la respuesta del punto de conexión .conocido/openid-configuration. Consulte Rendimiento para obtener más información. | string | Cadena vacía "" |
clientCapabilities |
Matriz de funcionalidades que se van a agregar a todas las solicitudes de red como parte de la xms_cc solicitud de notificaciones |
Matriz de cadenas | [] |
azureCloudOptions |
Un conjunto definido de opciones de nube de Azure para que los desarrolladores usen de forma predeterminada sus entidades de nube específicas, para nubes específicas admitidas, consulte AzureCloudInstance. | AzureCloudOptions | AzureCloudInstance.None |
Opciones de configuración de caché
| Opción | Description | Format | Valor predeterminado |
|---|---|---|---|
cachePlugin |
Complemento de caché con devoluciones de llamada para leer y escribir en la persistencia de caché (consulte también: almacenamiento en caché) | ICachePlugin | nulo |
Opciones de configuración de Broker
| Opción | Description | Format | Valor predeterminado |
|---|---|---|---|
nativeBrokerPlugin |
Complemento de agente para adquirir tokens a través de un agente de tokens nativo (consulte también: brokering) | INativeBrokerPlugin | nulo |
Opciones de configuración del sistema
| Opción | Description | Format | Valor predeterminado |
|---|---|---|---|
loggerOptions |
Objeto config para el registrador. | Consulte a continuación. | Consulte a continuación. |
NetworkClient |
Implementación de HTTP personalizada | INetworkModule | HttpClient.ts |
protocolMode |
Enumeración que representa el modo de protocolo que se va a usar. Si "AAD"es , funcionará en los puntos de conexión de Microsoft Entra v2; si "OIDC", funcionará en puntos de conexión compatibles con OIDC. |
string | "AAD" |
disableInternalRetries |
Si es true, MSAL no reintentará las solicitudes de red con errores. | booleano | false |
Note
En MSAL Node v5, se quitaron los proxyUrl parámetros y customAgentOptions . Si la aplicación requiere compatibilidad con proxy, implemente un cliente HTTP personalizado mediante INetworkModule. Consulte el ejemplo personalizado INetworkModule para obtener un ejemplo. El protocolMode parámetro también se ha movido de la configuración de autenticación a la configuración del sistema.
Opciones de configuración del registrador
| Opción | Description | Format | Valor predeterminado |
|---|---|---|---|
loggerCallback |
Función de devolución de llamada que controla el registro de instrucciones MSAL. | Función : loggerCallback: (level: LogLevel, message: string, containsPii: boolean): void |
Consulte lo anterior. |
piiLoggingEnabled |
Si es true, la información de identificación personal (PII) se incluye en los registros. | booleano | false |
Opciones de configuración de telemetría
| Opción | Description | Format | Valor predeterminado |
|---|---|---|---|
application |
Opciones de telemetría para aplicaciones que usan MSAL.js | Consulte a continuación | Consulte a continuación |
Telemetría de aplicaciones
| Opción | Description | Format | Valor predeterminado |
|---|---|---|---|
appName |
Nombre de cadena único de una aplicación | string | Cadena vacía "" |
appVersion |
Versión de la aplicación mediante MSAL | string | Cadena vacía "" |
Pasos siguientes
Continúe para comprender las API públicas proporcionadas por msal-node para adquirir tokens aquí.