Complemento de identidad de Azure para la persistencia de la caché de tokens
Este paquete proporciona un complemento a la biblioteca de identidades de Azure para JavaScript (@azure/identity
) que permite el almacenamiento en caché de tokens persistente. La persistencia de la caché de tokens permite que la caché de tokens integrada persista entre sesiones mediante un sistema de almacenamiento seguro proporcionado por el sistema operativo local.
Introducción
import { useIdentityPlugin } from "@azure/identity";
import { cachePersistencePlugin } from "@azure/identity-cache-persistence";
useIdentityPlugin(cachePersistencePlugin);
Requisitos previos
- Una suscripción de Azure.
Instalar el paquete
Este paquete está diseñado para usarse con Azure Identity para JavaScript. Instale tanto como @azure/identity
este paquete mediante npm
:
$ npm install --save @azure/identity
$ npm install --save @azure/identity-cache-persistence
Entornos compatibles
Los complementos de Identidad de Azure para JavaScript admiten versiones estables (incluso numeradas) de Node.js a partir de la versión 12. Aunque los complementos se pueden ejecutar en otras versiones de Node, no se garantiza ninguna compatibilidad.
@azure/identity-cache-persistence
no admite entornos de explorador.
Conceptos clave
Si es la primera vez que usa @azure/identity
o la plataforma de identidad de Microsoft (Azure Active Directory), le recomendamos que primero lea Uso de @azure/identity
con la plataforma de identidad de Microsoft. Este documento le proporcionará una comprensión más profunda de la plataforma y cómo configurar correctamente la cuenta de Azure.
Complementos de identidad de Azure
A partir de la @azure/identity
versión 2.0.0, la biblioteca cliente de identidad para JavaScript incluye una API de complemento. Este paquete (@azure/identity-cache-persistence
) exporta un objeto de complemento que debe pasar como argumento a la función de nivel useIdentityPlugin
superior del @azure/identity
paquete. Habilite la persistencia de la caché de tokens en el programa de la siguiente manera:
import { useIdentityPlugin } from "@azure/identity";
import { cachePersistencePlugin } from "@azure/identity-cache-persistence";
useIdentityPlugin(cachePersistencePlugin);
Después de llamar a useIdentityPlugin
, el complemento de caché de tokens persistente se registra en el @azure/identity
paquete y estará disponible en todas las credenciales que admiten el almacenamiento en caché de tokens persistentes (aquellos que tienen tokenCachePersistenceOptions
en sus opciones de constructor).
Ejemplos
Una vez registrado el complemento, puede habilitar la persistencia de la caché de tokens pasando tokenCachePersistenceOptions
con una enabled
propiedad establecida en true
a un constructor de credenciales. En el ejemplo siguiente, usamos , ya que el DeviceCodeCredential
almacenamiento en caché persistente de sus tokens permite omitir el flujo interactivo de autenticación de código de dispositivo si hay disponible un token almacenado en caché.
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);
});
Solución de problemas
Registro
La habilitación del registro puede ayudar a descubrir información útil sobre los errores. Para ver un registro de solicitudes y respuestas HTTP, establezca la variable de entorno AZURE_LOG_LEVEL
en info
. Como alternativa, el registro se puede habilitar en tiempo de ejecución llamando a setLogLevel
en @azure/logger
:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Pasos siguientes
Envío de comentarios
Si encuentra errores o tiene sugerencias, cree una incidencia.
Contribuciones
Si desea contribuir a esta biblioteca, lea la guía de contribución para obtener más información sobre cómo compilar y probar el código.
Azure SDK for JavaScript