Udostępnij za pośrednictwem


Tworzenie kopii zapasowej, usuwanie i przywracanie kluczy w usłudze Azure Key Vault za pomocą języka JavaScript

Utwórz klienta KeyClient z odpowiednimi poświadczeniami uwierzytelniania programowego, a następnie utwórz klienta CryptographyClient , aby ustawić, zaktualizować i obrócić klucz w usłudze Azure Key Vault.

Tworzenie kopii zapasowej, usuwanie, przeczyszczanie i przywracanie klucza

Przed usunięciem klucza i jego wersji utwórz kopię zapasową klucza i serializuj go w bezpiecznym magazynie danych. Po utworzeniu kopii zapasowej klucza usuń klucz i wszystkie wersje. Jeśli magazyn używa usuwania nietrwałego, możesz poczekać na przekazanie lub przeczyszczenie klucza ręcznie. Po przeczyszczeniu klucza można przywrócić klucz i całą wersję z kopii zapasowej. Jeśli chcesz przywrócić klucz przed przeczyszczeniem, nie musisz używać obiektu kopii zapasowej, ale zamiast tego możesz odzyskać klucz usunięty nietrwale i wszystkie wersje.

// Authenticate to Azure Key Vault
const credential = new DefaultAzureCredential();
const client = new KeyClient(
    `https://${process.env.AZURE_KEYVAULT_NAME}.vault.azure.net`,
    credential
);

// Create key
const keyName = `myKey-${Date.now()}`;
const key = await client.createRsaKey(keyName);
console.log(`${key.name} is created`);

// Backup key and all versions (as Uint8Array)
const keyBackup = await client.backupKey(keyName);
console.log(`${key.name} is backed up`);

// Delete key - wait until delete is complete
await (await client.beginDeleteKey(keyName)).pollUntilDone();
console.log(`${key.name} is deleted`);

// Purge soft-deleted key 
await client.purgeDeletedKey(keyName);
console.log(`Soft-deleted key, ${key.name}, is purged`);

if (keyBackup) {
    // Restore key and all versions to
    // Get last version
    const { name, key, properties } = await client.restoreKeyBackup(keyBackup);
    console.log(`${name} is restored from backup, latest version is ${properties.version}`);
    
    // do something with key
}

Następne kroki