Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La libreria MSAL include un set di opzioni di configurazione che possono essere usate per personalizzare il comportamento dei flussi di autenticazione. Queste opzioni possono essere impostate nel costruttore dell'oggetto PublicClientApplication o come parte delle API di richiesta. Di seguito viene descritto l'oggetto di configurazione che può essere passato al costruttore PublicClientApplication .
Prerequisiti
- Una buona comprensione di come inizializzare un oggetto app.
Utilizzo
L'oggetto di configurazione può essere passato al PublicClientApplication costruttore. L'unico parametro di configurazione obbligatorio è l'oggetto client_id dell'applicazione. Tutto il resto è facoltativo, ma può essere necessario a seconda del flusso di autenticazione, del tenant e del modello di applicazione.
L'oggetto Configuration con tutti i parametri supportati è illustrato di seguito:
// 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
Opzioni di configurazione dell'autenticazione
| Option | Description | Formato | Valore predefinito |
|---|---|---|---|
clientId |
ID app dell'applicazione. La registrazione dell'app è disponibile nella registrazione dell'app Interfaccia di amministrazione di Microsoft Entra. | UUID/GUID | Nessuno. Questo parametro è obbligatorio affinché MSAL esegua qualsiasi azione. |
authority |
URI del tenant con cui eseguire l'autenticazione e l'autorizzazione. In genere assume la forma di https://{uri}/{tenantid} |
Stringa in formato URI con tenant - https://{uri}/{tenantid} |
https://login.microsoftonline.com/common |
knownAuthorities |
Matrice di URI noti come validi. Usato negli scenari B2C. | Matrice di stringhe in formato URI | Matrice vuota [] |
cloudDiscoveryMetadata |
Stringa contenente la risposta di Cloud Discovery. Usato negli scenari di Microsoft Entra. Per altre informazioni, vedi Prestazioni | Stringa | Stringa vuota "" |
authorityMetadata |
Stringa contenente la risposta dell'endpoint .well-known/openid-configuration. Per altre informazioni, vedi Prestazioni | Stringa | Stringa vuota "" |
clientCapabilities |
Matrice di funzionalità da aggiungere a tutte le richieste di rete come parte della xms_cc richiesta di attestazioni |
Matrice di stringhe | [] |
azureCloudOptions |
Un set definito di opzioni cloud di Azure per gli sviluppatori per impostazione predefinita per le autorità cloud specifiche, per cloud specifici supportati, vedere AzureCloudInstance | AzureCloudOptions | AzureCloudInstance.None |
Opzioni di configurazione della cache
| Option | Description | Formato | Valore predefinito |
|---|---|---|---|
cachePlugin |
Plug-in cache con callback alla lettura e scrittura nella persistenza della cache (vedere anche: memorizzazione nella cache) | ICachePlugin | Null |
Opzioni di configurazione broker
| Option | Description | Formato | Valore predefinito |
|---|---|---|---|
nativeBrokerPlugin |
Plug-in broker per l'acquisizione di token tramite un broker di token nativo (vedere anche: brokering) | INativeBrokerPlugin | Null |
Opzioni di configurazione del sistema
| Option | Description | Formato | Valore predefinito |
|---|---|---|---|
loggerOptions |
Oggetto Config per logger. | Vedere di seguito. | Vedere di seguito. |
NetworkClient |
Implementazione HTTP personalizzata | INetworkModule | HttpClient.ts |
protocolMode |
Enumerazione che rappresenta la modalità protocollo da utilizzare. Se "AAD", funzionerà negli endpoint Microsoft Entra v2; se "OIDC", funzionerà sugli endpoint conformi a OIDC. |
Stringa | "AAD" |
disableInternalRetries |
Se true, MSAL non ritenta le richieste di rete non riuscite | Boolean | false |
Note
Nel nodo MSAL v5 i proxyUrl parametri e customAgentOptions sono stati rimossi. Se l'applicazione richiede il supporto proxy, implementare un client HTTP personalizzato usando INetworkModule. Per un esempio, vedere l'esempio INetworkModule personalizzato . Il protocolMode parametro è stato inoltre spostato dalla configurazione di autenticazione alla configurazione di sistema.
Opzioni di configurazione del logger
| Option | Description | Formato | Valore predefinito |
|---|---|---|---|
loggerCallback |
Funzione di callback che gestisce la registrazione delle istruzioni MSAL. | Funzione- loggerCallback: (level: LogLevel, message: string, containsPii: boolean): void |
Vedere sopra. |
piiLoggingEnabled |
Se true, le informazioni personali vengono incluse nei log. | Boolean | false |
Opzioni di configurazione dei dati di telemetria
| Option | Description | Formato | Valore predefinito |
|---|---|---|---|
application |
Opzioni di telemetria per le applicazioni che usano MSAL.js | Vedere di seguito | Vedere di seguito |
Telemetria dell'applicazione
| Option | Description | Formato | Valore predefinito |
|---|---|---|---|
appName |
Nome stringa univoco di un'applicazione | Stringa | Stringa vuota "" |
appVersion |
Versione dell'applicazione con MSAL | Stringa | Stringa vuota "" |
Operazioni successive
Continuare a comprendere le API pubbliche fornite da msal-node per acquisire i token qui