Share via


Azure Key Vault Administration-klientbibliotek för JavaScript – version 4.5.0

Azure Key Vault Managed HSM är en fullständigt hanterad, högtillgänglig molntjänst med enkel klientorganisation som är standardkompatibel och som gör att du kan skydda kryptografiska nycklar för dina molnprogram med FIPS 140-2 Level 3-verifierade HSM:er. Om du vill veta mer om Azure Key Vault Managed HSM kanske du vill granska: Vad är Azure Key Vault Managed HSM?

Paketet @azure/keyvault-admin ger stöd för administrativa Key Vault uppgifter som fullständig säkerhetskopiering/återställning och rollbaserad åtkomstkontroll på nyckelnivå (RBAC).

Obs! Administrationsbiblioteket fungerar bara med Azure Key Vault Managed HSM – funktioner som är inriktade på en Key Vault misslyckas.

Obs! Det här paketet kan inte användas i webbläsaren på grund av begränsningar för Azure Key Vault-tjänsten. Mer information finns i det här dokumentet.

Nyckellänkar:

Komma igång

Installera paketet

Installera Azure Key Vault administrationsklientbiblioteket för JavaScript och TypeScript med NPM:

npm install @azure/keyvault-admin

Konfigurera TypeScript

TypeScript-användare måste ha definitioner av nodtyp installerade:

npm install @types/node

Du måste också aktivera compilerOptions.allowSyntheticDefaultImports i din tsconfig.json. Observera att om du har aktiverat compilerOptions.esModuleInteropallowSyntheticDefaultImports är aktiverad som standard. Mer information finns i TypeScripts handbok för kompilatoralternativ .

Miljöer som stöds för närvarande

Förutsättningar

Autentisera klienten

För att kunna interagera med Azure Key Vault-tjänsten måste du skapa en instans av antingen KeyVaultAccessControlClient klassen eller KeyVaultBackupClient klassen, samt en valv-URL (som du kan se som "DNS-namn" i Azure-portalen) och ett autentiseringsobjekt. Exemplen som visas i det här dokumentet använder ett autentiseringsobjekt med namnet DefaultAzureCredential, som är lämpligt för de flesta scenarier, inklusive lokala utvecklings- och produktionsmiljöer. Dessutom rekommenderar vi att du använder en hanterad identitet för autentisering i produktionsmiljöer.

Du hittar mer information om olika sätt att autentisera och deras motsvarande typer av autentiseringsuppgifter i Azure Identity-dokumentationen.

Skapa KeyVaultAccessControlClient

När du har autentiserat med den autentiseringsmetod som passar dig bäst kan du skapa en KeyVaultAccessControlClient på följande sätt och ersätta den i din hanterade HSM-URL i konstruktorn:

const { DefaultAzureCredential } = require("@azure/identity");
const { KeyVaultAccessControlClient } = require("@azure/keyvault-admin");

const credentials = new DefaultAzureCredential();

const client = new KeyVaultAccessControlClient(`<your Managed HSM URL>`, credentials);

Skapa KeyVaultBackupClient

När du har autentiserat med den autentiseringsmetod som passar dig bäst kan du skapa en KeyVaultBackupClient på följande sätt och ersätta den i din hanterade HSM-URL i konstruktorn:

const { DefaultAzureCredential } = require("@azure/identity");
const { KeyVaultBackupClient } = require("@azure/keyvault-admin");

const credentials = new DefaultAzureCredential();

const client = new KeyVaultBackupClient(`<your Managed HSM URL>`, credentials);

Viktiga begrepp

KeyVaultRoleDefinition

En rolldefinition är en samling behörigheter. En rolldefinition definierar de åtgärder som kan utföras, till exempel läsa, skriva och ta bort. Den kan också definiera de åtgärder som undantas från tillåtna åtgärder.

Rolldefinitioner kan visas och anges som en del av en KeyVaultRoleAssignment.

KeyVaultRoleAssignment

En rolltilldelning är associationen mellan en rolldefinition och ett tjänsthuvudnamn. De kan skapas, visas, hämtas individuellt och tas bort.

KeyVaultAccessControlClient

A KeyVaultAccessControlClient tillhandahåller åtgärder som möjliggör hantering av rolldefinitioner (instanser av KeyVaultRoleDefinition) och rolltilldelningar (instanser av KeyVaultRoleAssignment).

KeyVaultBackupClient

A KeyVaultBackupClient tillhandahåller åtgärder för att utföra fullständiga nyckelsäkerhetskopior, fullständiga nyckelåterställningar och selektiva nyckelåterställningar.

Långvariga åtgärder

De åtgärder som utförs av KeyVaultBackupClient kan ta så mycket tid som behövs av Azure-resurserna, vilket kräver ett klientlager för att hålla reda på, serialisera och återuppta åtgärderna genom livscykeln för de program som väntar på att de ska slutföras. Detta görs via en gemensam abstraktion via paketet @azure/core-lro.

Erbjuder KeyVaultBackupClient tre metoder som kör långvariga åtgärder:

  • beginBackupbörjar generera en säkerhetskopia av en Azure Key Vault Managed HSM på det angivna Storage Blob-kontot.
  • beginRestorebörjar återställa allt nyckelmaterial med hjälp av SAS-token som pekar på en tidigare lagrad Azure Blob Storage-säkerhetskopieringsmapp.
  • beginSelectiveRestorebörjar återställa alla nyckelversioner av en viss nyckel med hjälp av en SAS-token som angetts av användaren och pekar på en tidigare lagrad Azure Blob Storage-säkerhetskopieringsmapp.

De metoder som påbörjar långvariga åtgärder returnerar en poller som gör att du kan vänta på obestämd tid tills åtgärden har slutförts. Mer information finns i exemplen nedan.

Exempel

Vi har exempel både i JavaScript och TypeScript som visar funktionerna för åtkomstkontroll och säkerhetskopiering/återställning i det här paketet. Följ motsvarande readmes för detaljerade steg för att köra exemplen.

Felsökning

Mer information om hur du diagnostiserar olika felscenarier finns i vår felsökningsguide .

Aktivering av loggning kan hjälpa dig att hitta användbar information om fel. Om du vill se en logg över HTTP-begäranden och svar anger du AZURE_LOG_LEVEL miljövariabeln till info. Du kan också aktivera loggning vid körning genom att anropa setLogLevel i @azure/logger:

const { setLogLevel } = require("@azure/logger");

setLogLevel("info");

Nästa steg

Du hittar fler kodexempel via följande länkar:

Bidra

Om du vill bidra till det här biblioteket kan du läsa bidragsguiden för att lära dig mer om hur du skapar och testar koden.

Visningar