Introdução aos segredos do Azure Key Vault no JavaScript

Este artigo mostra como se conectar ao Azure Key Vault usando a biblioteca cliente de segredos do Azure Key Vault para JavaScript. Uma vez conectado, seu código pode operar em segredos e propriedades secretas no cofre.

Referência de API | Pacote (npm) | Código-fonte da biblioteca | Amostras | Enviar comentários

Pré-requisitos

Configurar o seu projeto

  1. Abra um prompt de comando e mude para a pasta do projeto. Altere YOUR-DIRECTORY para o nome da pasta:

    cd YOUR-DIRECTORY
    
  2. Se você ainda não tiver um arquivo package.json no diretório, inicialize o projeto para criar o arquivo:

    npm init -y
    
  3. Instale a biblioteca de clientes de segredo do Azure Key Vault para JavaScript:

    npm install @azure/keyvault-secrets
    
  4. Se você quiser usar conexões sem senha usando o Microsoft Entra ID, instale a biblioteca de clientes da Identidade do Azure para JavaScript:

    npm install @azure/identity
    

Autorizar o acesso e se conectar ao Key Vault

O Microsoft Entra ID fornece a conexão mais segura gerenciando a identidade de conexão (identidade gerenciada). Essa funcionalidade sem senha permite que você desenvolva um aplicativo que não requer nenhum segredo (chaves ou cadeias de conexão) armazenado no código.

Antes de se autenticar programaticamente no Azure para usar os segredos do Azure Key Vault, configure seu ambiente.

Diagrama do Azure SDK para fluxo de credenciais do JavaScript.

Um desenvolvedor deve instalar a CLI do Azure e entrar interativamente com o comando az login para fazer logon no Azure antes de usar o DefaultAzureCredential no código.

az login

Crie seu aplicativo

Conforme você compila seu aplicativo, seu código interage com dois tipos de recursos:

  • KeyVaultSecret, que inclui:
    • Nome do segredo, um valor de cadeia de caracteres.
    • Valor do segredo, que é uma cadeia de caracteres do segredo. Você fornece a serialização e desserialização do valor do segredo dentro e fora de uma cadeia de caracteres, conforme necessário.
    • Propriedades do segredo.
  • SecretProperties, que incluem os metadados do segredo, como seu nome, versão, marcas, dados de expiração e se está habilitado.

Se você precisar do valor de KeyVaultSecret, use métodos que retornam o KeyVaultSecret:

O restante dos métodos retorna o objeto SecretProperties ou outra forma das propriedades, como:

Criar um objeto SecretClient

O objeto SecretClient é o principal objeto no SDK. O cliente permite que você manipule os segredos.

Depois que as funções de acesso do Azure Key Vault e seu ambiente local forem configuradas, crie um arquivo JavaScript que inclua o pacote @azure/identity. Crie uma credencial, como DefaultAzureCredential, para implementar conexões sem senha com o seu cofre. Use essa credencial para autenticar com um 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");

Confira também

Próximas etapas