Azure Key Vault Administration-clientbibliotheek voor JavaScript - versie 4.5.0
Azure Key Vault Managed HSM is een volledig beheerde, maximaal beschikbare cloudservice met één tenant en voldoet aan standaarden waarmee u cryptografische sleutels voor uw cloudtoepassingen kunt beveiligen met behulp van HSM's met FIPS 140-2 Niveau 3. Als u meer wilt weten over Azure Key Vault Managed HSM, kunt u het volgende lezen: Wat is Azure Key Vault Managed HSM?
Het pakket @azure/keyvault-admin
biedt ondersteuning voor administratieve Key Vault taken, zoals volledige back-up/herstel en op rollen gebaseerd toegangsbeheer (RBAC) op sleutelniveau.
Opmerking: de beheerbibliotheek werkt alleen met Azure Key Vault Managed HSM. Functies die zijn gericht op een Key Vault mislukken.
Opmerking: dit pakket kan niet worden gebruikt in de browser vanwege beperkingen van de Azure Key Vault-service. Raadpleeg dit document voor hulp.
Belangrijke koppelingen:
Aan de slag
Het pakket installeren
Installeer de Azure Key Vault-beheerclientbibliotheek voor JavaScript en TypeScript met NPM:
npm install @azure/keyvault-admin
TypeScript configureren
TypeScript-gebruikers moeten knooppunttypedefinities hebben geïnstalleerd:
npm install @types/node
U moet ook inschakelen compilerOptions.allowSyntheticDefaultImports
in uw tsconfig.json. Houd er rekening mee dat als u hebt ingeschakeld compilerOptions.esModuleInterop
, allowSyntheticDefaultImports
standaard is ingeschakeld. Zie het handboek voor compileropties van TypeScript voor meer informatie.
Momenteel ondersteunde omgevingen
Vereisten
- Een Azure-abonnement
- Een bestaande Key Vault beheerde HSM. Als u een beheerde HSM wilt maken, kunt u dit doen met behulp van de Azure CLI door de stappen in dit document te volgen.
De client verifiëren
Als u wilt communiceren met de Azure Key Vault-service, moet u een exemplaar van de KeyVaultAccessControlClient
klasse of de KeyVaultBackupClient
klasse maken, evenals een kluis-URL (die u mogelijk ziet als 'DNS-naam' in de Azure-portal) en een referentieobject. De voorbeelden in dit document maken gebruik van een referentieobject met de naam DefaultAzureCredential
, dat geschikt is voor de meeste scenario's, waaronder lokale ontwikkelings- en productieomgevingen. Daarnaast raden we u aan een beheerde identiteit te gebruiken voor verificatie in productieomgevingen.
Meer informatie over verschillende manieren van verificatie en de bijbehorende referentietypen vindt u in de Documentatie over Azure Identity.
KeyVaultAccessControlClient maken
Zodra u bent geverifieerd met de verificatiemethode die het beste bij u past, kunt u als volgt een KeyVaultAccessControlClient
maken, waarbij u de URL van uw beheerde HSM in de constructor vervangt:
const { DefaultAzureCredential } = require("@azure/identity");
const { KeyVaultAccessControlClient } = require("@azure/keyvault-admin");
const credentials = new DefaultAzureCredential();
const client = new KeyVaultAccessControlClient(`<your Managed HSM URL>`, credentials);
KeyVaultBackupClient maken
Zodra u bent geverifieerd met de verificatiemethode die het beste bij u past, kunt u als volgt een KeyVaultBackupClient
maken, waarbij u de URL van uw beheerde HSM in de constructor vervangt:
const { DefaultAzureCredential } = require("@azure/identity");
const { KeyVaultBackupClient } = require("@azure/keyvault-admin");
const credentials = new DefaultAzureCredential();
const client = new KeyVaultBackupClient(`<your Managed HSM URL>`, credentials);
Belangrijkste concepten
KeyVaultRoleDefinition
Een roldefinitie is een verzameling machtigingen. Een roldefinitie definieert de bewerkingen die kunnen worden uitgevoerd, zoals lezen, schrijven en verwijderen. Het kan ook de bewerkingen definiëren die zijn uitgesloten van toegestane bewerkingen.
Roldefinities kunnen worden vermeld en opgegeven als onderdeel van een KeyVaultRoleAssignment
.
KeyVaultRoleAssignment
Een roltoewijzing is de koppeling van een roldefinitie aan een service-principal. Ze kunnen afzonderlijk worden gemaakt, weergegeven, opgehaald en verwijderd.
KeyVaultAccessControlClient
A KeyVaultAccessControlClient
biedt bewerkingen voor het beheer van roldefinities (exemplaren van KeyVaultRoleDefinition
) en roltoewijzingen (exemplaren van KeyVaultRoleAssignment
).
KeyVaultBackupClient
Een KeyVaultBackupClient
biedt bewerkingen voor het uitvoeren van volledige sleutelback-ups, volledige sleutelherstel en selectieve sleutelherstel.
Langlopende bewerkingen
De bewerkingen die door de KeyVaultBackupClient
worden uitgevoerd, kunnen zoveel tijd in beslag nemen als nodig is voor de Azure-resources, waardoor een clientlaag nodig is om de bewerkingen bij te houden, te serialiseren en te hervatten gedurende de levenscyclus van de programma's die wachten totdat ze zijn voltooid. Dit gebeurt via een algemene abstractie via het pakket @azure/core-lro.
De KeyVaultBackupClient
biedt drie methoden voor het uitvoeren van langdurige bewerkingen:
beginBackup
, begint met het genereren van een back-up van een Azure Key Vault Managed HSM voor het opgegeven Storage Blob-account.beginRestore
, begint met het herstellen van alle belangrijke materialen met behulp van het SAS-token dat verwijst naar een eerder opgeslagen back-upmap van Azure Blob Storage.beginSelectiveRestore
, begint met het herstellen van alle sleutelversies van een bepaalde sleutel met behulp van door de gebruiker opgegeven SAS-token dat verwijst naar een eerder opgeslagen Back-upmap van Azure Blob Storage.
De methoden die langdurige bewerkingen starten, retourneren een poller waarmee u voor onbepaalde tijd kunt wachten totdat de bewerking is voltooid. Meer informatie vindt u in de onderstaande voorbeelden.
Voorbeelden
We hebben voorbeelden in Zowel JavaScript als TypeScript die de functies voor toegangsbeheer en back-up/herstel in dit pakket weergeven. Volg de bijbehorende leesbewerkingen voor gedetailleerde stappen om de voorbeelden uit te voeren.
Problemen oplossen
Zie onze gids voor probleemoplossing voor meer informatie over het diagnosticeren van verschillende foutscenario's.
Het inschakelen van logboekregistratie kan helpen bij het ontdekken van nuttige informatie over fouten. Als u een logboek met HTTP-aanvragen en -antwoorden wilt zien, stelt u de AZURE_LOG_LEVEL
omgevingsvariabele in op info
. U kunt logboekregistratie ook tijdens runtime inschakelen door aan te roepen setLogLevel
in de @azure/logger
:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Volgende stappen
Meer codevoorbeelden vindt u via de volgende koppelingen:
- voorbeelden van Key Vault-beheer (JavaScript)
- Key Vault-beheervoorbeelden (TypeScript)
- testcases voor Key Vault-beheer
Bijdragen
Als u een bijdrage wilt leveren aan deze bibliotheek, leest u de handleiding voor bijdragen voor meer informatie over het bouwen en testen van de code.
Azure SDK for JavaScript