Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Vytvořte KeyClient s příslušnými přihlašovacími údaji pro programové ověřování a pak pomocí klienta nastavte, aktualizujte a obměňte klíč ve službě Azure Key Vault.
Výběr šifrovacího algoritmu
Pokud chcete nejlépe využít sadu SDK a její poskytované výčty a typy, vyberte svůj šifrovací algoritmus, než budete pokračovat k další části.
- RSA – Rivest–Shamir–Adleman
- AES GCM – Režim čítače Galois úrovně Advanced Encryption Standard
- AES CBC – Řetězení bloků šifrovacích protokolů Advanced Encryption Standard
Pomocí výčtu KnownEncryptionAlgorithms vyberte konkrétní algoritmus.
import {
KnownEncryptionAlgorithms
} from '@azure/keyvault-keys';
const myAlgorithm = KnownEncryptionAlgorithms.RSAOaep256
Získání šifrovacího klíče
Vytvořte nebo získejte šifrovací klíč KeyVaultKey ze služby Key Vault, který se použije s šifrováním a dešifrováním.
Šifrování a dešifrování pomocí klíče
Šifrování vyžaduje jeden z následujících objektů parametrů:
Všechny tři objekty parametrů vyžadují algorithm a plaintext použité k šifrování. Příklad parametrů šifrování RSA je uvedený níže.
import { DefaultAzureCredential } from '@azure/identity';
import {
CryptographyClient,
KeyClient,
KnownEncryptionAlgorithms
} from '@azure/keyvault-keys';
// get service client using AZURE_KEYVAULT_NAME environment variable
const credential = new DefaultAzureCredential();
const serviceClient = new KeyClient(
`https://${process.env.AZURE_KEYVAULT_NAME}.vault.azure.net`,
credential
);
// get existing key
const keyVaultKey = await serviceClient.getKey('myRsaKey');
if (keyVaultKey?.name) {
// get encryption client
const encryptClient = new CryptographyClient(keyVaultKey, credential);
// set data to encrypt
const originalInfo = 'Hello World';
// set encryption algorithm
const algorithm = KnownEncryptionAlgorithms.RSAOaep256;
// encrypt settings: RsaEncryptParameters | AesGcmEncryptParameters | AesCbcEncryptParameters
const encryptParams = {
algorithm,
plaintext: Buffer.from(originalInfo)
};
// encrypt
const encryptResult = await encryptClient.encrypt(encryptParams);
// ... hand off encrypted result to another process
// ... other process needs to decrypt data
// decrypt settings: DecryptParameters
const decryptParams = {
algorithm,
ciphertext: encryptResult.result
};
// decrypt
const decryptResult = await encryptClient.decrypt(decryptParams);
console.log(decryptResult.result.toString());
}
Objekt encryptParams nastaví parametry pro šifrování. K nastavení vlastností použijte následující objekty parametru encrypt.
Objekt decryptParams nastaví parametry pro dešifrování. K nastavení vlastností použijte následující dešifrovací objekty parametrů.