Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La bibliothèque MSAL a un ensemble d’options de configuration qui peuvent être utilisées pour personnaliser le comportement de vos flux d’authentification. Ces options peuvent être définies dans le constructeur de l’objet PublicClientApplication ou dans le cadre des API de requête. Ici, nous décrivons l’objet de configuration qui peut être transmis au constructeur PublicClientApplication .
Prerequisites
- Une bonne compréhension de l’initialisation d’un objet d’application.
Usage
L’objet de configuration peut être passé dans le PublicClientApplication constructeur. Le seul paramètre de configuration requis est l’application client_id . Tout le reste est facultatif, mais peut être nécessaire en fonction de votre flux d’authentification, locataire et modèle d’application.
L’objet Configuration avec tous les paramètres pris en charge est illustré ci-dessous :
// 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
Options de configuration d’authentification
| Option | Description | Format | Valeur par défaut |
|---|---|---|---|
clientId |
ID d’application de votre application. Se trouve dans l’inscription de votre application dans l’inscription de l’application centre d’administration Microsoft Entra. | UUID/GUID | Aucun. Ce paramètre est requis pour que MSAL effectue toutes les actions. |
authority |
URI du locataire avec authentification et autorisation. Prend généralement la forme de https://{uri}/{tenantid} |
Chaîne au format URI avec le locataire - https://{uri}/{tenantid} |
https://login.microsoftonline.com/common |
knownAuthorities |
Tableau d’URI connus comme valides. Utilisé dans les scénarios B2C. | Tableau de chaînes au format URI | Tableau vide [] |
cloudDiscoveryMetadata |
Chaîne contenant la réponse de découverte cloud. Utilisé dans Microsoft Entra scénarios. Pour plus d’informations sur les performances | ficelle | Chaîne vide "" |
authorityMetadata |
Chaîne contenant la réponse du point de terminaison .well-known/openid-configuration. Pour plus d’informations sur les performances | ficelle | Chaîne vide "" |
clientCapabilities |
Tableau de fonctionnalités à ajouter à toutes les demandes réseau dans le cadre de la xms_cc demande de revendications |
Tableau de chaînes | [] |
azureCloudOptions |
Un ensemble défini d’options cloud Azure pour les développeurs par défaut avec leurs autorités cloud spécifiques, pour des clouds spécifiques pris en charge, reportez-vous à AzureCloudInstance. | AzureCloudOptions | AzureCloudInstance.None |
Options de configuration du cache
| Option | Description | Format | Valeur par défaut |
|---|---|---|---|
cachePlugin |
Plug-in de cache avec rappels pour la lecture et l’écriture dans la persistance du cache (voir aussi : mise en cache) | ICachePlugin | zéro |
Options de configuration du répartiteur
| Option | Description | Format | Valeur par défaut |
|---|---|---|---|
nativeBrokerPlugin |
Plug-in Broker pour l’acquisition de jetons via un répartiteur de jetons natif (voir également : brokering) | INativeBrokerPlugin | zéro |
Options de configuration système
| Option | Description | Format | Valeur par défaut |
|---|---|---|---|
loggerOptions |
Objet config pour l’enregistreur d’événements. | Voir ci-dessous. | Voir ci-dessous. |
NetworkClient |
Implémentation HTTP personnalisée | INetworkModule | HttpClient.ts |
protocolMode |
Énumération représentant le mode de protocole à utiliser. Si "AAD", fonctionne sur les points de terminaison Microsoft Entra v2 ; si "OIDC", fonctionne sur les points de terminaison conformes à OIDC. |
ficelle | "AAD" |
disableInternalRetries |
Si la valeur est true, MSAL ne réessaye pas les demandes réseau ayant échoué | booléen | false |
Note
Dans MSAL Node v5, les paramètres et customAgentOptions les proxyUrl paramètres ont été supprimés. Si votre application nécessite une prise en charge du proxy, implémentez un client HTTP personnalisé à l’aide d’INetworkModule. Consultez l’exemple INetworkModule personnalisé pour obtenir un exemple. Le protocolMode paramètre a également été déplacé de la configuration d’authentification à la configuration système.
Options de configuration de l’enregistreur d’événements
| Option | Description | Format | Valeur par défaut |
|---|---|---|---|
loggerCallback |
Fonction de rappel qui gère la journalisation des instructions MSAL. | Fonction - loggerCallback: (level: LogLevel, message: string, containsPii: boolean): void |
Voir ci-dessus. |
piiLoggingEnabled |
Si la valeur est true, les informations d’identification personnelle (PII) sont incluses dans les journaux. | booléen | false |
Options de configuration de télémétrie
| Option | Description | Format | Valeur par défaut |
|---|---|---|---|
application |
Options de télémétrie pour les applications utilisant MSAL.js | Voir ci-dessous | Voir ci-dessous |
Télémétrie d’application
| Option | Description | Format | Valeur par défaut |
|---|---|---|---|
appName |
Nom de chaîne unique d’une application | ficelle | Chaîne vide « » |
appVersion |
Version de l’application à l’aide de MSAL | ficelle | Chaîne vide « » |
Prochaines étapes
Passez à la compréhension des API publiques fournies msal-node par l’acquisition de jetons ici