Skip to main content Inicio Creadores beko2210 firstbrain azure-keyvault-keys-ts
azure-keyvault-keys-ts Manage cryptographic keys using Azure Key Vault Keys SDK for JavaScript (@azure/keyvault-keys). Use when creating, encrypting/decrypting, signing, or rotating keys.
Ir a la instalación Skills Marketplace Descubre y explora habilidades de IA creadas por la comunidad.
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Copiar promptMostrar detalles del prompt Un comando directo omite el prompt de revisión. Revisa el origen antes de ejecutarlo.
npx skills add https://github.com/BEKO2210/Firstbrain --skill azure-keyvault-keys-tsEl comando permanece en una sola línea. Desplázate horizontalmente para revisarlo antes de copiarlo.
¿Prefieres una copia local? Descarga los archivos que SkillsMP tiene disponibles ahora.
Descargar Zip Descargando... Ocupaciones relacionadas SOC
Basado en la clasificación ocupacional SOC
name azure-keyvault-keys-ts description Manage cryptographic keys using Azure Key Vault Keys SDK for JavaScript (@azure/keyvault-keys). Use when creating, encrypting/decrypting, signing, or rotating keys. type skill created 2026-02-27T00:00:00.000Z domain cloud-infrastructure category azure risk unknown source community tags ["skill","cloud-infrastructure","azure","keyvault","keys"]
Azure Key Vault Keys SDK for TypeScript
Manage cryptographic keys with Azure Key Vault.
Installation
npm install @azure/keyvault-keys @azure/identity
Environment Variables
KEY_VAULT_URL=https://<vault-name>.vault.azure.net
AZURE_KEYVAULT_NAME=<vault-name>
Authentication
import { DefaultAzureCredential } from "@azure/identity" ;
import { KeyClient , CryptographyClient } from "@azure/keyvault-keys" ;
const credential = new DefaultAzureCredential ();
const vaultUrl = `https://${process.env.AZURE_KEYVAULT_NAME} .vault.azure.net` ;
const keyClient = new KeyClient (vaultUrl, credential);
const secretClient = new SecretClient (vaultUrl, credential);
Secrets Operations
Create/Set Secret
const secret = await secretClient.setSecret ("MySecret" , "secret-value" );
const secretWithAttrs = await secretClient.setSecret ("MySecret" , "value" , {
enabled : true ,
expiresOn : new Date ( ),
: ,
: { : }
});
"2025-12-31"
contentType
"application/json"
tags
environment
"production"
Get Secret
const secret = await secretClient.getSecret ("MySecret" );
console .log (secret.value );
const specificSecret = await secretClient.getSecret ("MySecret" , {
version : secret.properties .version
});
List Secrets for await (const secretProperties of secretClient.listPropertiesOfSecrets ()) {
console .log (secretProperties.name );
}
for await (const version of secretClient.listPropertiesOfSecretVersions ("MySecret" )) {
console .log (version.version );
}
Delete Secret
const deletePoller = await secretClient.beginDeleteSecret ("MySecret" );
await deletePoller.pollUntilDone ();
await secretClient.purgeDeletedSecret ("MySecret" );
const recoverPoller = await secretClient.beginRecoverDeletedSecret ("MySecret" );
await recoverPoller.pollUntilDone ();
Keys Operations
Create Keys
const key = await keyClient.createKey ("MyKey" , "RSA" );
const rsaKey = await keyClient.createRsaKey ("MyRsaKey" , { keySize : 2048 });
const ecKey = await keyClient.createEcKey ("MyEcKey" , { curve : "P-256" });
const keyWithAttrs = await keyClient.createKey ("MyKey" , "RSA" , {
enabled : true ,
expiresOn : new Date ("2025-12-31" ),
tags : { purpose : "encryption" },
keyOps : ["encrypt" , "decrypt" , "sign" , "verify" ]
});
Get Key const key = await keyClient.getKey ("MyKey" );
console .log (key.name , key.keyType );
List Keys for await (const keyProperties of keyClient.listPropertiesOfKeys ()) {
console .log (keyProperties.name );
}
Rotate Key
const rotatedKey = await keyClient.rotateKey ("MyKey" );
await keyClient.updateKeyRotationPolicy ("MyKey" , {
lifetimeActions : [{ action : "Rotate" , timeBeforeExpiry : "P30D" }],
expiresIn : "P90D"
});
Delete Key const deletePoller = await keyClient.beginDeleteKey ("MyKey" );
await deletePoller.pollUntilDone ();
await keyClient.purgeDeletedKey ("MyKey" );
Cryptographic Operations
Create CryptographyClient import { CryptographyClient } from "@azure/keyvault-keys" ;
const cryptoClient = new CryptographyClient (key, credential);
const cryptoClient = new CryptographyClient (key.id !, credential);
Encrypt/Decrypt
const encryptResult = await cryptoClient.encrypt ({
algorithm : "RSA-OAEP" ,
plaintext : Buffer .from ("My secret message" )
});
const decryptResult = await cryptoClient.decrypt ({
algorithm : "RSA-OAEP" ,
ciphertext : encryptResult.result
});
console .log (decryptResult.result .toString ());
Sign/Verify import { createHash } from "node:crypto" ;
const hash = createHash ("sha256" ).update ("My message" ).digest ();
const signResult = await cryptoClient.sign ("RS256" , hash);
const verifyResult = await cryptoClient.verify ("RS256" , hash, signResult.result );
console .log ("Valid:" , verifyResult.result );
Wrap/Unwrap Keys
const wrapResult = await cryptoClient.wrapKey ("RSA-OAEP" , Buffer .from ("key-material" ));
const unwrapResult = await cryptoClient.unwrapKey ("RSA-OAEP" , wrapResult.result );
Backup and Restore
const keyBackup = await keyClient.backupKey ("MyKey" );
const secretBackup = await secretClient.backupSecret ("MySecret" );
const restoredKey = await keyClient.restoreKeyBackup (keyBackup!);
const restoredSecret = await secretClient.restoreSecretBackup (secretBackup!);
Key Types import {
KeyClient ,
KeyVaultKey ,
KeyProperties ,
DeletedKey ,
CryptographyClient ,
KnownEncryptionAlgorithms ,
KnownSignatureAlgorithms
} from "@azure/keyvault-keys" ;
import {
SecretClient ,
KeyVaultSecret ,
SecretProperties ,
DeletedSecret
} from "@azure/keyvault-secrets" ;
Error Handling try {
const secret = await secretClient.getSecret ("NonExistent" );
} catch (error : any ) {
if (error.code === "SecretNotFound" ) {
console .log ("Secret does not exist" );
} else {
throw error;
}
}
Best Practices
Use DefaultAzureCredential - Works across dev and production
Enable soft-delete - Required for production vaults
Set expiration dates - On both keys and secrets
Use key rotation policies - Automate key rotation
Limit key operations - Only grant needed operations (encrypt, sign, etc.)
Browser not supported - These SDKs are Node.js only
When to Use This skill is applicable to execute the workflow or actions described in the overview.
Connections
Domain: [[Cloud & Infrastruktur]]
Kategorie: [[Microsoft Azure]]
Navigation: [[Skills Uebersicht]], [[Home]]