Activation des autorités régionales

Important

Les autorités régionales sont une fonctionnalité héritée qui n’est disponible que pour les services Microsoft internes et le flux d’informations d’identification du client. Il est recommandé d’utiliser l’identité managée à la place.

Pour accroître la fiabilité, la disponibilité et les performances de Azure, la régionalisation vise à maintenir tout le trafic à l’intérieur d’une zone géographique. Par exemple, si une application doit récupérer des données à partir de Key Vault dans WestUs2, tout le trafic qui implique , y compris le trafic généré par MSAL, doit rester dans WestUs2.

Quelques remarques importantes sur les autorités régionales :

  • Les jetons d’accès sont identiques, quelle que soit la région à partir de laquelle ils proviennent

  • Un jeton obtenu pour une région est valide pour le point de terminaison non régional (les jetons pour « westus2.login.microsoft.com » sont identiques aux jetons pour « login.microsoftonline.com »). Et vice-versa. C’est le même jeton, à l’exception d’une revendication appelée « rh »

Note

Cette fonctionnalité héritée est disponible uniquement pour les services Microsoft internes et le flux d’informations d’identification du client.

Configuration

Pour configurer votre application de manière à utiliser les autorités régionales, vous devez fournir une région dans le champ dans le azureRegion corps de la demande d’informations d’identification du client.

Utilisation sécurisée des secrets

Les secrets ne doivent jamais être codés en dur. Le package npm dotenv peut être utilisé pour stocker des secrets dans un fichier .env (situé dans le répertoire racine du projet) qui doit être inclus dans .gitignore pour empêcher les chargements accidentels des secrets.

var msal = require('@azure/msal-node');
require('dotenv').config(); // process.env now has the values defined in a .env file

const config = {
    auth: {
        clientId: "<CLIENT_ID>",
        authority: "https://login.microsoftonline.com/<TENANT_ID>",
        clientSecret: process.env.clientSecret,
    }
};

// Create msal application object
const cca = new msal.ConfidentialClientApplication(config);

const clientCredentialRequest = {
    scopes: ["<SCOPE_1>, <SCOPE_2>"],
    azureRegion: "REGION_NAME" // Specify the region you will deploy your application to here. E.g. "westus2"
};

cca
    .acquireTokenByClientCredential(clientCredentialRequest)
    .then((response) => {
        // Handle a successful authentication 
    })
    .catch((error) => {
        // Handle a failed authentication 
    });

Note

Si vous fournissez la valeur "TryAutoDetect" dans le azureRegion champ, la bibliothèque MSAL tente de découvrir la région dans laquelle l’application a été déployée et l’utilise. Cette détection automatique n’est pas fiable et doit être évitée. Spécifiez la région explicitement à la place.

Voir aussi

  • Vous trouverez un exemple fonctionnel de cette fonctionnalité dans l’exemple d’informations d’identification du client