Biblioteka klienta usługi Azure Key Vault Administration dla języka JavaScript — wersja 4.5.0
Zarządzany moduł HSM platformy Azure Key Vault to w pełni zarządzana, wysoce dostępna, jednodostępna, zgodna ze standardami usługa w chmurze, która umożliwia ochronę kluczy kryptograficznych dla aplikacji w chmurze przy użyciu zweryfikowanych modułów HSM fiPS 140-2 na poziomie 3. Jeśli chcesz dowiedzieć się więcej na temat zarządzanego modułu HSM platformy Azure Key Vault, warto przejrzeć: Co to jest zarządzany moduł HSM platformy Azure Key Vault?
Pakiet @azure/keyvault-admin
zapewnia obsługę zadań administracyjnych Key Vault, takich jak pełna kopia zapasowa/ przywracanie i kontrola dostępu oparta na rolach na poziomie klucza (RBAC).
Uwaga: Biblioteka administracyjna działa tylko z modułem HSM zarządzanym przez usługę Azure Key Vault — funkcje przeznaczone dla Key Vault zakończy się niepowodzeniem.
Uwaga: ten pakiet nie może być używany w przeglądarce ze względu na ograniczenia usługi Azure Key Vault, zapoznaj się z tym dokumentem, aby uzyskać wskazówki.
Kluczowe linki:
Wprowadzenie
Instalowanie pakietu
Zainstaluj bibliotekę klienta administracyjnej usługi Azure Key Vault dla języków JavaScript i TypeScript przy użyciu narzędzia NPM:
npm install @azure/keyvault-admin
Konfigurowanie języka TypeScript
Użytkownicy języka TypeScript muszą mieć zainstalowane definicje typu węzła:
npm install @types/node
Należy również włączyć compilerOptions.allowSyntheticDefaultImports
w tsconfig.json. Pamiętaj, że jeśli włączono compilerOptions.esModuleInterop
usługę , allowSyntheticDefaultImports
jest domyślnie włączona. Aby uzyskać więcej informacji, zobacz podręcznik dotyczący opcji kompilatora języka TypeScript .
Obecnie obsługiwane środowiska
Wymagania wstępne
- Subskrypcja platformy Azure
- Istniejący Key Vault zarządzany moduł HSM. Jeśli musisz utworzyć zarządzany moduł HSM, możesz to zrobić przy użyciu interfejsu wiersza polecenia platformy Azure, wykonując kroki opisane w tym dokumencie.
Uwierzytelnianie klienta
Aby móc korzystać z usługi Azure Key Vault, musisz utworzyć wystąpienie KeyVaultAccessControlClient
klasy lub KeyVaultBackupClient
klasy, a także adres URL magazynu (który może być widoczny jako "Nazwa DNS" w witrynie Azure Portal) i obiekt poświadczeń. Przykłady przedstawione w tym dokumencie używają obiektu poświadczeń o nazwie DefaultAzureCredential
, który jest odpowiedni dla większości scenariuszy, w tym lokalnych środowisk programistycznych i produkcyjnych. Ponadto zalecamy użycie tożsamości zarządzanej do uwierzytelniania w środowiskach produkcyjnych.
Więcej informacji na temat różnych sposobów uwierzytelniania i odpowiadających im typów poświadczeń można znaleźć w dokumentacji usługi Azure Identity.
Tworzenie obiektu KeyVaultAccessControlClient
Po uwierzytelnieniu przy użyciu metody uwierzytelniania, która jest odpowiednia dla Ciebie najlepiej, możesz utworzyć element KeyVaultAccessControlClient
w następujący sposób, zastępując adres URL zarządzanego modułu HSM w konstruktorze:
const { DefaultAzureCredential } = require("@azure/identity");
const { KeyVaultAccessControlClient } = require("@azure/keyvault-admin");
const credentials = new DefaultAzureCredential();
const client = new KeyVaultAccessControlClient(`<your Managed HSM URL>`, credentials);
Tworzenie elementu KeyVaultBackupClient
Po uwierzytelnieniu przy użyciu metody uwierzytelniania, która jest odpowiednia dla Ciebie najlepiej, możesz utworzyć element KeyVaultBackupClient
w następujący sposób, zastępując adres URL zarządzanego modułu HSM w konstruktorze:
const { DefaultAzureCredential } = require("@azure/identity");
const { KeyVaultBackupClient } = require("@azure/keyvault-admin");
const credentials = new DefaultAzureCredential();
const client = new KeyVaultBackupClient(`<your Managed HSM URL>`, credentials);
Kluczowe pojęcia
KeyVaultRoleDefinition
Definicja roli to kolekcja uprawnień. Definicja roli definiuje operacje, które można wykonać, takie jak odczyt, zapis i usuwanie. Może również definiować operacje wykluczone z dozwolonych operacji.
Definicje ról można wyświetlać i określać jako część KeyVaultRoleAssignment
elementu .
KeyVaultRoleAssignment
Przypisanie roli jest skojarzeniem definicji roli z jednostką usługi. Można je tworzyć, wyświetlać, pobierać indywidualnie i usuwać.
KeyVaultAccessControlClient
Element zapewnia KeyVaultAccessControlClient
operacje umożliwiające zarządzanie definicjami ról (wystąpieniami KeyVaultRoleDefinition
) i przypisaniami ról (wystąpieniami programu KeyVaultRoleAssignment
).
KeyVaultBackupClient
Element zapewnia KeyVaultBackupClient
operacje wykonywania pełnych kopii zapasowych kluczy, przywracania pełnych kluczy i selektywnych przywracania kluczy.
Długotrwałe operacje
Operacje wykonywane przez KeyVaultBackupClient
zasoby platformy Azure mogą zająć tyle czasu, ile wymagają warstwy klienta, aby śledzić, serializować i wznawiać operacje za pośrednictwem cyklu życia programów oczekujących na ich zakończenie. Odbywa się to za pośrednictwem wspólnej abstrakcji za pośrednictwem pakietu @azure/core-lro.
Oferuje KeyVaultBackupClient
trzy metody, które wykonują długotrwałe operacje:
beginBackup
program rozpoczyna generowanie kopii zapasowej zarządzanego modułu HSM platformy Azure Key Vault na określonym koncie obiektu blob usługi Storage.beginRestore
program rozpoczyna przywracanie wszystkich kluczowych materiałów przy użyciu tokenu SAS wskazującego wcześniej przechowywany folder kopii zapasowej usługi Azure Blob Storage.beginSelectiveRestore
program rozpoczyna przywracanie wszystkich kluczowych wersji danego klucza przy użyciu tokenu SAS dostarczonego przez użytkownika wskazującego wcześniej przechowywany folder kopii zapasowej usługi Azure Blob Storage.
Metody, które rozpoczynają długotrwałe operacje, zwracają element poller, który umożliwia oczekiwanie na czas nieokreślony, aż operacja zostanie ukończona. Więcej informacji można znaleźć w poniższych przykładach.
Przykłady
Mamy przykłady zarówno w języku JavaScript, jak i TypeScript, które pokazują funkcje kontroli dostępu i tworzenia kopii zapasowych/przywracania w tym pakiecie. Postępuj zgodnie z odpowiednimi readmes, aby uzyskać szczegółowe kroki, aby uruchomić przykłady.
Rozwiązywanie problemów
Zobacz nasz przewodnik rozwiązywania problemów, aby uzyskać szczegółowe informacje na temat diagnozowania różnych scenariuszy awarii.
Włączenie rejestrowania może pomóc odkryć przydatne informacje o błędach. Aby wyświetlić dziennik żądań HTTP i odpowiedzi, ustaw zmienną AZURE_LOG_LEVEL
środowiskową na info
. Możesz też włączyć rejestrowanie w czasie wykonywania, wywołując polecenie w elemecie setLogLevel
@azure/logger
:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Następne kroki
Więcej przykładów kodu można znaleźć za pośrednictwem następujących linków:
- przykłady administracji Key Vault (JavaScript)
- przykłady administracji Key Vault (TypeScript)
- Key Vault Przypadki testowe administracji
Współtworzenie
Jeśli chcesz współtworzyć tę bibliotekę, przeczytaj przewodnik współtworzenia , aby dowiedzieć się więcej na temat sposobu kompilowania i testowania kodu.
Azure SDK for JavaScript