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.
Antes de empezar aquí, asegúrese de comprender cómo inicializar un objeto de aplicación.
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 PublicClientApplication objeto o como parte de las API de solicitud. Aquí se describe el objeto de configuración que se puede pasar al PublicClientApplication constructor.
Uso del objeto config
El objeto de configuración tiene la estructura siguiente y se puede pasar al PublicClientApplication constructor. El único parámetro de configuración necesario es el identificador de cliente de la aplicación. Todo lo demás es opcional, pero puede ser necesario en función del inquilino y el modelo de aplicación.
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",
},
system: {
loggerOptions: {
loggerCallback: (
level: LogLevel,
message: string,
containsPii: boolean
): void => {
if (containsPii) {
return;
}
switch (level) {
case LogLevel.Error:
console.error(message);
return;
case LogLevel.Info:
console.info(message);
return;
case LogLevel.Verbose:
console.debug(message);
return;
case LogLevel.Warning:
console.warn(message);
return;
}
},
piiLoggingEnabled: false,
},
windowHashTimeout: 60000,
iframeHashTimeout: 6000,
loadFrameTimeout: 0,
protocolMode: "AAD"
},
telemetry: {
application: {
appName: "My Application",
appVersion: "1.0.0",
},
},
};
const msalInstance = new PublicClientApplication(msalConfig);
Opciones de configuración
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 panel de registro de aplicaciones de Azure Portal | 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. | string | Cadena vacía "" |
authorityMetadata |
Cadena que contiene la respuesta del punto de conexión .conocido/openid-configuration. | string | Cadena vacía "" |
redirectUri |
URI en el que se devuelve la respuesta del código de autorización. Cualquier ubicación especificada aquí debe tener la biblioteca MSAL disponible para controlar la respuesta. | Cadena en formato URI absoluto o relativo | Página de solicitud de inicio de sesión (window.location.href de la página que realizó la solicitud de autenticación) |
postLogoutRedirectUri |
URI al que se redirige después de realizar una llamada logout(). | Cadena en formato URI absoluto o relativo. Pase null para deshabilitar la redirección posterior al cierre de sesión. |
Página de solicitud de inicio de sesión (window.location.href de la página que realizó la solicitud de autenticación) |
navigateToLoginRequestUrl |
Si truees , volverá a la ubicación de solicitud original antes de procesar la respuesta del código de autorización.
redirectUri Si es el mismo que la ubicación de solicitud original, esta marca debe establecerse en false. |
booleano | true |
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 autoridades en la nube específicas. | AzureCloudOptions | AzureCloudInstance.None |
skipAuthorityMetadataCache |
Marca para elegir si se va a usar la caché de metadatos locales durante la inicialización de la autoridad. La caché de metadatos se usa si no se proporciona ningún metadato de autoridad y antes de realizar una llamada de red para los metadatos. | booleano | false |
onRedirectNavigate |
Una devolución de llamada que se pasa a la dirección URL MSAL navegará a en los flujos de redirección. Devolver false en la devolución de llamada detiene la navegación. |
Función : (url: string) => boolean \| void |
undefined |
instanceAware |
Marca que indica si el STS debe devolver parámetros adicionales para especificar dónde se deben recuperar los tokens. | booleano | false |
isMcp |
Si truees , se requiere un resource parámetro en todas las solicitudes de token. Se usa para los flujos del Protocolo de contexto de modelo (MCP). |
booleano | false |
Opciones de configuración de caché
| Opción | Description | Format | Valor predeterminado |
|---|---|---|---|
cacheLocation |
Ubicación de la caché de tokens en el explorador. | Valor de cadena que debe ser uno de los siguientes: "sessionStorage", "localStorage", "memoryStorage" |
sessionStorage |
temporaryCacheLocation |
(en desuso) Ubicación de la caché temporal en el explorador. Esta opción solo debe cambiarse para casos perimetrales específicos. Para obtener más información, consulte Almacenamiento en caché. | Valor de cadena que debe ser uno de los siguientes: "sessionStorage", "localStorage", "memoryStorage" |
sessionStorage |
storeAuthStateInCookie |
(en desuso) Si es true, almacena los elementos de caché en cookies, así como en la memoria caché del explorador. Anteriormente se usaba para Internet Explorer compatibilidad. | booleano | false |
secureCookies |
(en desuso) Si es true y storeAuthStateInCookie también está habilitado, MSAL agrega la Secure marca a la cookie del explorador para que solo se pueda enviar a través de HTTPS. |
booleano | false |
cacheMigrationEnabled |
Si es true, las entradas de caché de versiones anteriores de MSAL se actualizan para ajustarse al esquema de caché más reciente en el inicio. Si la aplicación no se ha actualizado recientemente a una nueva versión de MSAL.js, puede desactivarlo de forma segura. Si no se migran las entradas de caché antiguas, es posible que se produzca un error en la memoria caché al intentar recuperar cuentas o tokens, y es posible que los usuarios afectados necesiten volver a autenticarse para actualizarse. | booleano |
truecuando se usa localStorage, de lo contrario, false |
claimsBasedCachingEnabled |
Si truees , los tokens de acceso se almacenan en caché en una clave que contiene el hash de la cadena de notificaciones solicitada, lo que da lugar a una falta de caché y a una nueva solicitud de token cuando se realiza la misma solicitud de token con notificaciones diferentes o que faltan. Si se establece falseen , los tokens se almacenan en caché sin notificaciones, pero todas las solicitudes que contienen notificaciones van a la red y sobrescriben cualquier token previamente almacenado en caché con los mismos ámbitos. |
booleano | false |
Note
La temporaryCacheLocation opción ha quedado en desuso en versiones recientes de MSAL Browser y se puede quitar en una versión principal futura. No debe confiar en esta opción para las nuevas implementaciones.
Note
Las storeAuthStateInCookie opciones y secureCookies han quedado en desuso en versiones recientes de MSAL Browser. Estas opciones se usaron principalmente para Internet Explorer compatibilidad, que ya no se admite. Se pueden quitar en una versión principal futura.
Consulte Almacenamiento en caché en MSAL para obtener más información.
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. |
windowHashTimeout |
Tiempo de espera en milisegundos para esperar a que se resuelvan las operaciones emergentes. | entero (milisegundos) | 60000 |
iframeHashTimeout |
Tiempo de espera en milisegundos para esperar a que se resuelvan las operaciones de iframe. | entero (milisegundos) | 6000 |
loadFrameTimeout |
Tiempo de espera en milisegundos para esperar a que se resuelvan las operaciones iframe/popup. Si se proporciona, establecerá valores predeterminados para windowHashTimeout y iframeHashTimeout. |
entero (milisegundos) | undefined |
navigateFrameWait |
Retraso en milisegundos para esperar a que el iframe se cargue en la ventana. | entero (milisegundos) | En IE o Edge: 500, en todos los demás exploradores: 0 |
asyncPopups |
(En desuso , use navigatePopups en su lugar). Establece si los elementos emergentes se abren de forma asincrónica. Cuando se establece en false, los elementos emergentes en blanco se abren antes de que ocurra cualquier otra cosa. Cuando se establece en true, los elementos emergentes se abren al realizar la solicitud de red. |
booleano | false |
navigatePopups |
Establece si los elementos emergentes se abren y navegan a más adelante. Cuando se establece en true, se abren ventanas emergentes en blanco y, a continuación, navegan al dominio de inicio de sesión. Cuando se establece en false, los elementos emergentes se abren directamente en el dominio de inicio de sesión. Esto se puede establecer false en para escenarios en about:blank los que no se admite, como aplicaciones de escritorio o aplicaciones web progresivas. |
booleano | true |
allowRedirectInIframe |
De forma predeterminada, MSAL no permite que las operaciones de redirección se inicien cuando la aplicación está dentro de un iframe. Establezca esta marca en true para quitar esta comprobación. |
booleano | false |
cryptoOptions |
Objeto config para operaciones criptográficas en el explorador. | Consulte Opciones de configuración criptográfica. | Consulte Opciones de configuración criptográfica. |
pollIntervalMilliseconds |
Intervalo de tiempo en milisegundos entre sondeos de hash de dirección URL emergente durante la autenticación. | entero (milisegundos) | 30 |
protocolMode |
Enumeración que representa el modo de protocolo que se va a usar. Si "AAD"es , MSAL funciona en los puntos de conexión de AAD v2 compatibles con OIDC; si "OIDC"es , funciona en otros puntos de conexión compatibles con OIDC. |
string | "AAD" |
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 criptográfica
| Opción | Description | Format | Valor predeterminado |
|---|---|---|---|
useMsrCrypto |
Si se usa MSR Crypto si está disponible en el explorador (y otras interfaces criptográficas no están disponibles). | booleano | false |
entropy |
Valores aleatorios criptográficos seguros usados para inicializar MSR Crypto (por ejemplo crypto.randomBytes(48) , desde Node). Se recomiendan 48 bits de entropía. Obligatorio si useMsrCrypto está habilitado. |
Uint8Array |
undefined |
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 |
client |
Instancia de cliente de rendimiento de telemetría | IPerformanceClient | StubPerformanceClient |
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 "" |