Introducción a los secretos de Azure Key Vault en JavaScript

En este artículo se muestra cómo conectarse a Azure Key Vault mediante la biblioteca cliente de secretos de Azure Key Vault para JavaScript. Una vez conectado, el código puede funcionar con secretos y propiedades de secretos en el almacén.

Referencia de API | Paquete (npm) | Código fuente de la biblioteca | Muestras | Enviar comentarios

Prerrequisitos

Configuración del proyecto

  1. Abra un símbolo del sistema y cambie a la carpeta del proyecto. Cambie YOUR-DIRECTORY al nombre de la carpeta:

    cd YOUR-DIRECTORY
    
  2. Si aún no tiene un archivo package.json en el directorio, inicialice el proyecto para crearlo:

    npm init -y
    
  3. Instale la biblioteca cliente de secretos de Azure Key Vault para JavaScript:

    npm install @azure/keyvault-secrets
    
  4. Si quiere usar conexiones sin contraseña mediante Microsoft Entra ID, instale la biblioteca cliente de Azure Identity para JavaScript:

    npm install @azure/identity
    

Autorización de acceso y conexión a Key Vault

Microsoft Entra ID proporciona la conexión más segura mediante la administración de la identidad de conexión (identidad administrada). Esta funcionalidad sin contraseña permite desarrollar una aplicación que no requiere tener secretos (claves o cadenas de conexión) almacenados en el código.

Antes de autenticarse mediante programación en Azure para usar secretos de Azure Key Vault, asegúrese de configurar el entorno.

Diagram of Azure SDK for JavaScript credential flow.

Un desarrollador debe instalar la CLI de Azure e iniciar sesión de forma interactiva con el comando az login para iniciar sesión en Azure antes de usar DefaultAzureCredential en el código.

az login

Compilación de la aplicación

A medida que compile la aplicación, el código interactuará con dos tipos de recursos:

  • KeyVaultSecret, que incluye:
    • Nombre del secreto, un valor de cadena.
    • Valor del secreto, que es una cadena del secreto. Proporcione la serialización y deserialización del valor del secreto en una cadena y fuera de ella según sea necesario.
    • Propiedades del secreto.
  • SecretProperties, que incluye los metadatos del secreto, como su nombre, versión, etiquetas, datos de expiración y si está habilitado.

Si necesita el valor de KeyVaultSecret, use métodos que devuelvan KeyVaultSecret:

El resto de los métodos devuelven el objeto SecretProperties u otra forma de las propiedades, como:

Crear un objeto SecretClient

El objeto SecretClient es el objeto principal del SDK. Este cliente permite manipular los secretos.

Una vez configurados los roles de identidad de Azure Key Vault y el entorno local, cree un archivo JavaScript que incluya el paquete @azure/identity. Cree una credencial, como DefaultAzureCredential, para implementar conexiones sin contraseña en el almacén. Use esa credencial para autenticarse con un objeto SecretClient.

// Include required dependencies
import { DefaultAzureCredential } from '@azure/identity';  
import { SecretClient } from '@azure/keyvault-secrets';  

// Authenticate to Azure
const credential = new DefaultAzureCredential(); 

// Create SecretClient
const vaultName = '<your-vault-name>';  
const url = `https://${vaultName}.vault.azure.net`;  
const client = new SecretClient(url, credential);  

// Get secret
const secret = await client.getSecret("MySecretName");

Consulte también

Pasos siguientes