Klientská knihovna azure Key Vault Administration pro JavaScript – verze 4.5.0
Azure Key Vault Managed HSM je plně spravovaná, vysoce dostupná cloudová služba s jedním tenantem kompatibilní se standardy, která umožňuje chránit kryptografické klíče pro cloudové aplikace pomocí modulů HSM ověřených standardem FIPS 140-2 Úrovně 3. Pokud se chcete dozvědět více o spravovaném modulu HSM Azure Key Vault, můžete si projít téma Co je Azure Key Vault Managed HSM?
Balíček @azure/keyvault-admin
poskytuje podporu pro úlohy správy Key Vault, jako je úplné zálohování a obnovení a řízení přístupu na základě role na úrovni klíče (RBAC).
Poznámka: Knihovna pro správu funguje jenom se spravovaným modulem HSM Azure Key Vault – funkce cílené na Key Vault selžou.
Poznámka: Tento balíček nelze použít v prohlížeči kvůli omezením služby Azure Key Vault. Pokyny najdete v tomto dokumentu.
Klíčové odkazy:
Začínáme
Instalace balíčku
Nainstalujte klientskou knihovnu pro správu Azure Key Vault pro JavaScript a TypeScript pomocí NPM:
npm install @azure/keyvault-admin
Konfigurace TypeScriptu
Uživatelé TypeScriptu musí mít nainstalované definice typů uzlů:
npm install @types/node
Musíte také povolit compilerOptions.allowSyntheticDefaultImports
v tsconfig.json. Všimněte si, že pokud jste povolili compilerOptions.esModuleInterop
, allowSyntheticDefaultImports
je ve výchozím nastavení povolená. Další informace najdete v příručce k možnostem kompilátoru TypeScriptu .
Aktuálně podporovaná prostředí
Požadavky
- Předplatné Azure
- Existující Key Vault spravovaný HSM. Pokud potřebujete vytvořit spravovaný hsm, můžete to udělat pomocí Azure CLI podle kroků v tomto dokumentu.
Ověření klienta
Abyste mohli pracovat se službou Azure Key Vault, budete muset vytvořit instanci KeyVaultAccessControlClient
třídy nebo KeyVaultBackupClient
třídy a také adresu URL trezoru (která se na webu Azure Portal může zobrazit jako název DNS) a objekt přihlašovacích údajů. Příklady uvedené v tomto dokumentu používají objekt přihlašovacích údajů s názvem DefaultAzureCredential
, který je vhodný pro většinu scénářů, včetně místních vývojových a produkčních prostředí. Kromě toho doporučujeme použít spravovanou identitu pro ověřování v produkčních prostředích.
Další informace o různých způsobech ověřování a jejich odpovídajících typech přihlašovacích údajů najdete v dokumentaci k Identitě Azure.
Vytvoření KeyVaultAccessControlClient
Po ověření pomocí metody ověřování, která vám nejlépe vyhovuje, můžete následujícím způsobem vytvořit KeyVaultAccessControlClient
adresu URL spravovaného HSM v konstruktoru:
const { DefaultAzureCredential } = require("@azure/identity");
const { KeyVaultAccessControlClient } = require("@azure/keyvault-admin");
const credentials = new DefaultAzureCredential();
const client = new KeyVaultAccessControlClient(`<your Managed HSM URL>`, credentials);
Vytvoření KeyVaultBackupClient
Po ověření pomocí metody ověřování, která vám nejlépe vyhovuje, můžete následujícím způsobem vytvořit KeyVaultBackupClient
adresu URL spravovaného HSM v konstruktoru:
const { DefaultAzureCredential } = require("@azure/identity");
const { KeyVaultBackupClient } = require("@azure/keyvault-admin");
const credentials = new DefaultAzureCredential();
const client = new KeyVaultBackupClient(`<your Managed HSM URL>`, credentials);
Klíčové koncepty
KeyVaultRoleDefinition
Definice role je kolekce oprávnění. Definice role definuje operace, které je možné provádět, jako je čtení, zápis a odstranění. Může také definovat operace, které jsou vyloučeny z povolených operací.
Definice rolí je možné uvést a zadat jako součást .KeyVaultRoleAssignment
KeyVaultRoleAssignment
Přiřazení role je přidružení definice role k instančnímu objektu. Je možné je vytvářet, vypisovat, načítat jednotlivě a odstraňovat.
KeyVaultAccessControlClient
A KeyVaultAccessControlClient
poskytuje operace umožňující správu definic rolí (instancí KeyVaultRoleDefinition
) a přiřazení rolí (instance ).KeyVaultRoleAssignment
KeyVaultBackupClient
A KeyVaultBackupClient
poskytuje operace pro provádění úplných záloh klíčů, obnovení úplného klíče a selektivního obnovení klíčů.
Dlouhotrvající operace
Operace provedené nástrojem KeyVaultBackupClient
můžou trvat tolik času, kolik potřebují prostředky Azure, což vyžaduje, aby klientská vrstva sledovala, serializovala a obnovila operace v rámci životního cyklu programů, které čekají na jejich dokončení. To se provádí prostřednictvím běžné abstrakce prostřednictvím balíčku @azure/core-lro.
Nabízí KeyVaultBackupClient
tři metody, které provádějí dlouhotrvající operace:
beginBackup
začne generovat zálohu spravovaného modulu HSM Azure Key Vault v zadaném účtu objektu blob služby Storage.beginRestore
začne obnovovat všechny klíčové materiály pomocí tokenu SAS odkazujícího na dříve uloženou záložní složku úložiště objektů blob v Azure.beginSelectiveRestore
zahájí obnovení všech verzí klíčů daného klíče pomocí uživatelem zadaného tokenu SAS odkazujícího na dříve uloženou záložní složku úložiště objektů blob v Azure.
Metody, které zahají dlouhotrvající operace, vrátí poller, který vám umožní čekat neomezeně dlouho, dokud operace nebude dokončena. Další informace najdete v následujících příkladech.
Příklady
Máme ukázky v JavaScriptu i TypeScriptu, které ukazují funkce řízení přístupu a zálohování/obnovení v tomto balíčku. Pokud chcete spustit ukázky, postupujte podle odpovídajících souborů readme.
Poradce při potížích
Podrobnosti o tom, jak diagnostikovat různé scénáře selhání, najdete v našem průvodci odstraňováním potíží.
Povolení protokolování může pomoct odhalit užitečné informace o selháních. Pokud chcete zobrazit protokol požadavků a odpovědí HTTP, nastavte proměnnou AZURE_LOG_LEVEL
prostředí na info
. Případně je možné protokolování povolit za běhu voláním setLogLevel
v :@azure/logger
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Další kroky
Další ukázky kódu najdete na následujících odkazech:
- Ukázky správy Key Vault (JavaScript)
- Ukázky správy Key Vault (TypeScript)
- Testovací případy správy Key Vault
Přispívání
Pokud chcete přispívat do této knihovny, přečtěte si prosím průvodce přispívání , kde se dozvíte více o tom, jak sestavit a otestovat kód.
Azure SDK for JavaScript