Plug-in d’identité Azure pour la persistance du cache de jetons
Ce package fournit un plug-in à la bibliothèque d’identités Azure pour JavaScript (@azure/identity
) qui active la mise en cache persistante des jetons. La persistance du cache de jetons permet au cache de jetons intégré de persister entre les sessions à l’aide d’un système de stockage sécurisé fourni par le système d’exploitation local.
Prise en main
import { useIdentityPlugin } from "@azure/identity";
import { cachePersistencePlugin } from "@azure/identity-cache-persistence";
useIdentityPlugin(cachePersistencePlugin);
Prérequis
- Un abonnement Azure.
Installer le package
Ce package est conçu pour être utilisé avec Azure Identity pour JavaScript.
@azure/identity
Installez et ce package à l’aide de npm
:
$ npm install --save @azure/identity
$ npm install --save @azure/identity-cache-persistence
Environnements pris en charge
Les plug-ins Azure Identity pour JavaScript prennent en charge les versions stables (même numérotées) de Node.js à partir de la version v12. Bien que les plug-ins puissent s’exécuter dans d’autres versions de Node, aucune prise en charge n’est garantie.
@azure/identity-cache-persistence
ne prend pas en charge les environnements de navigateur.
Concepts clés
Si vous utilisez @azure/identity
ou la plateforme d’identités Microsoft (Azure Active Directory) pour la première fois, nous vous recommandons de commencer par lire Utiliser @azure/identity
avec la plateforme d’identités Microsoft. Ce document vous permettra de mieux comprendre le fonctionnement de la plateforme et vous expliquera comment configurer correctement votre compte Azure.
Plug-ins d’identité Azure
À compter de la @azure/identity
version 2.0.0, la bibliothèque de client Identity pour JavaScript inclut une API de plug-in. Ce package (@azure/identity-cache-persistence
) exporte un objet de plug-in que vous devez passer en tant qu’argument à la fonction de niveau useIdentityPlugin
supérieur à partir du @azure/identity
package. Activez la persistance du cache de jetons dans votre programme comme suit :
import { useIdentityPlugin } from "@azure/identity";
import { cachePersistencePlugin } from "@azure/identity-cache-persistence";
useIdentityPlugin(cachePersistencePlugin);
Après l’appel useIdentityPlugin
de , le plug-in de cache de jetons persistants est inscrit dans le @azure/identity
package et est disponible sur toutes les informations d’identification qui prennent en charge la mise en cache des jetons persistants (celles qui ont tokenCachePersistenceOptions
dans leurs options de constructeur).
Exemples
Une fois le plug-in inscrit, vous pouvez activer la persistance du cache de jetons en passant tokenCachePersistenceOptions
avec une enabled
propriété définie sur true
à un constructeur d’informations d’identification. Dans l’exemple suivant, nous utilisons le , car la DeviceCodeCredential
mise en cache persistante de ses jetons vous permet d’ignorer le flux d’authentification interactif par code d’appareil si un jeton mis en cache est disponible.
import { useIdentityPlugin, DeviceCodeCredential } from "@azure/identity";
import { cachePersistencePlugin } from "@azure/identity-cache-persistence";
useIdentityPlugin(cachePersistencePlugin);
async function main() {
const credential = new DeviceCodeCredential({
tokenCachePersistenceOptions: {
enabled: true
}
});
// We'll use the Microsoft Graph scope as an example
const scope = "https://graph.microsoft.com/.default";
// Print out part of the access token
console.log((await credential.getToken(scope)).token.substr(0, 10), "...");
}
main().catch((error) => {
console.error("An error occurred:", error);
process.exit(1);
});
Résolution des problèmes
Journalisation
L’activation de la journalisation peut vous aider à mieux comprendre les échecs. Pour avoir un journal des requêtes et réponses HTTP, définissez la variable d’environnement AZURE_LOG_LEVEL
sur info
. Vous pouvez également activer la journalisation au moment de l’exécution en appelant setLogLevel
dans @azure/logger
:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Étapes suivantes
Fournir des commentaires
Si vous rencontrez des bogues ou si vous avez des suggestions, signalez un problème.
Contribution
Si vous souhaitez contribuer à cette bibliothèque, lisez le guide de contribution pour en savoir plus sur la génération et le test du code.
Azure SDK for JavaScript