다음을 통해 공유


JavaScript를 사용하여 Azure Key Vault에서 키 백업, 삭제 및 복원

적절한 프로그래매틱 인증 자격 증명을 사용하여 KeyClient를 만든 다음, CryptographyClient를 만듭니다. 클라이언트를 사용하여 Azure Key Vault에서 키를 설정, 업데이트 및 순환합니다.

키 백업, 삭제, 제거 및 복원

키 및 해당 버전을 삭제하기 전에 키를 백업하고 보안 데이터 저장소에 직렬화합니다. 키가 백업되면 키와 모든 버전을 삭제합니다. 자격 증명 모음에서 일시 삭제를 사용하는 경우 제거 날짜가 지나거나 키를 수동으로 제거할 때까지 기다릴 수 있습니다. 키가 제거되면 백업에서 키와 모든 버전을 복원할 수 있습니다. 제거 전에 키를 복원하려는 경우 백업 개체를 사용할 필요가 없지만 대신 일시 삭제된 키와 모든 버전을 복구할 수 있습니다.

// 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
}

다음 단계