Spolehlivost v Azure Key Vault

Azure Key Vault je cloudová služba, která poskytuje zabezpečené úložiště tajných kódů, jako jsou klíče, hesla, certifikáty a další citlivé informace. Key Vault poskytuje řadu integrovaných funkcí spolehlivosti, které vám pomůžou zajistit, aby vaše tajné kódy zůstaly dostupné.

Při použití Azure je spolehlivost sdílenou odpovědností. Microsoft nabízí celou řadu možností, které podporují odolnost a obnovení. Zodpovídáte za pochopení toho, jak tyto možnosti fungují ve všech službách, které používáte, a výběrem možností, které potřebujete ke splnění vašich obchodních cílů a cílů dostupnosti.

Tento článek popisuje, že Key Vault je odolný vůči nejrůznějším potenciálním výpadkům a problémům, včetně přechodných chyb, výpadků zón dostupnosti a výpadků oblastí. Popisuje také, jak můžete použít zálohy k obnovení z jiných typů problémů, funkcí obnovení, aby se zabránilo náhodnému odstranění, a zvýrazňuje některé klíčové informace o smlouvě o úrovni služeb (SLA) Key Vault.

Doporučení pro produkční nasazení pro spolehlivost

Pro produkční úlohy doporučujeme:

  • Používejte trezory klíčů úrovně Standard nebo Premium.
  • Povolte měkké odstranění a ochranu proti vyčištění, abyste zabránili náhodnému nebo škodlivému odstranění.
  • U důležitých úloh zvažte implementaci strategií ve více oblastech, které jsou popsány v této příručce.

Přehled architektury spolehlivosti

Pokud chcete zajistit vysokou odolnost a dostupnost klíčů, tajných kódů a certifikátů, pokud dojde k selhání hardwaru nebo výpadku sítě, Key Vault poskytuje několik vrstev redundance, které zajistí zachování dostupnosti během následujících událostí:

  • Selhání hardwaru
  • Výpadky sítě
  • Lokalizované havárie
  • Aktivity údržby

Ve výchozím nastavení Key Vault dosáhne redundance replikací úložiště klíčů a jeho obsahu v regionu.

Pokud má oblast spárovanou oblast a tato spárovaná oblast je ve stejné zeměpisné oblasti jako primární oblast, obsah se také replikuje do spárované oblasti. Tento přístup zajišťuje vysokou odolnost klíčů a tajných kódů, které chrání před selháním hardwaru, výpadky sítě nebo lokalizovanými haváriemi.

Odolnost proti přechodným chybám

Přechodné chyby jsou krátká, přerušovaná selhání ve složkách. V distribuovaném prostředí, jako je cloud, se vyskytují často a jsou normální součástí provozu. Přechodné chyby se opravují po krátké době. Je důležité, aby vaše aplikace mohly zpracovávat přechodné chyby, obvykle opakováním ovlivněných požadavků.

Všechny aplikace hostované v cloudu by měly postupovat podle Azure pokynů pro zpracování přechodných chyb, když komunikují s libovolnými rozhraními API, databázemi a dalšími komponentami hostovanými v cloudu. Další informace viz Doporučení pro zpracování přechodných selhání.

Aby bylo možné zvládnout přechodné chyby, klientské aplikace by měly implementovat logiku opakování při interakci s Key Vault. Zvažte následující osvědčené postupy:

  • Použijte Sady Azure SDK, které obvykle zahrnují integrované mechanismy opakování.

  • Implementujte zásady opakování exponenciálního zpožování, pokud se klienti připojují přímo k Key Vault.

  • Pokud je to možné, ukládejte tajné kódy do mezipaměti, aby se snížily přímé požadavky na Key Vault.

  • Sledujte chyby škrcení, protože překročení limitů služby Key Vault způsobuje škrcení.

Pokud používáte Key Vault ve scénářích s vysokou propustností, zvažte distribuci vašich operací napříč několika trezory klíčů, abyste se vyhnuli limitům škrcení. Pro následující scénáře zvažte pokyny specifické pro Key Vault:

  • Scénář s vysokou propustností je takový, který se blíží nebo překračuje limity služby pro operace Key Vault, například 200 operací za sekundu pro klíče chráněné softwarem.

  • U úloh s vysokou propustností rozdělte provoz Key Vault mezi několik trezorů a různých oblastí.

  • Limit pro všechny typy transakcí v rámci předplatného je pětkrát limit jednotlivých trezorů klíčů.

  • Pro každou doménu zabezpečení nebo dostupnosti použijte samostatný trezor. Pokud máte například pět aplikací ve dvou oblastech, zvažte použití 10 trezorů.

  • Pro operace veřejného klíče, jako je šifrování, zabalení a ověření, proveďte tyto operace místně uložením do mezipaměti materiálu veřejného klíče.

Pro více informací se podívejte na pokyny k omezování Key Vault.

Odolnost proti chybám zóny dostupnosti

zóny dostupnosti jsou fyzicky oddělené skupiny datacenter v rámci Azure oblasti. Když jedna zóna selže, mohou služby přejít na jednu ze zbývajících zón.

Key Vault automaticky poskytuje redundanci zón v oblastech regionů, které podporují zóny dostupnosti. Tato redundance poskytuje vysokou dostupnost v rámci oblasti bez nutnosti jakékoli konkrétní konfigurace.

Když se zóna dostupnosti stane nedostupnou, Key Vault automaticky přesměruje vaše požadavky na jiné zóny dostupnosti, které jsou v pořádku, aby se zajistila vysoká dostupnost.

Požadavky

  • Region support: Key Vault ve výchozím nastavení umožňuje redundanci zón ve všechny oblasti Azure, které podporují zóny dostupnosti.
  • Všechny skladové položky Key Vault, Standard a Premium podporují stejnou úroveň dostupnosti a odolnosti. Pro zajištění odolnosti zón neexistují žádné požadavky specifické pro vrstvu.

Náklady

V Key Vault nejsou spojené žádné další náklady spojené s redundancí zón. Ceny vycházejí ze skladové položky Standard nebo Premium a počtu provedených operací.

Chování, když jsou všechny zóny v pořádku

Tato část popisuje, co očekávat, když jsou trezory klíčů v oblasti, ve které jsou zóny dostupnosti a všechny zóny dostupnosti jsou funkční:

  • Směrování provozu mezi zónami: Key Vault automaticky spravuje směrování provozu mezi zónami dostupnosti. Během normálních operací se požadavky transparentně distribuují napříč zónami.

  • Replikace dat mezi zónami: Data Key Vault se synchronně replikují napříč zónami dostupnosti v oblastech, které podporují zóny. Tato replikace zajišťuje, že vaše klíče, tajné kódy a certifikáty zůstanou konzistentní a dostupné i v případě, že zóna přestane být dostupná.

Chování při selhání zóny

Následující část popisuje, co očekávat, když jsou trezory klíčů v oblasti, ve které jsou zóny dostupnosti a jedna nebo více zón dostupnosti nejsou k dispozici:

  • Detection a response: Služba Key Vault zodpovídá za zjišťování selhání zón a automatickou reakci na ně. Během selhání zóny nemusíte provádět žádnou akci.
  • Oznámení: Microsoft vás automaticky neoznámí, když je zóna mimo provoz. Pomocí Azure Resource Health ale můžete monitorovat stav jednotlivých prostředků a můžete nastavit Resource Health výstrahy, které vás upozorní na problémy. Můžete také použít Azure Service Health k pochopení celkového stavu služby, včetně jakýchkoli selhání zóny, a můžete nastavit upozornění služby Service Health, která vás upozorní na problémy.
  • Aktivní požadavky: Během selhání zóny může ovlivněná zóna selhat ve zpracování probíhajících požadavků, což vyžaduje, aby je klientské aplikace opakovaly. Klientské aplikace by měly dodržovat přechodné postupy zpracování chyb , aby se zajistilo, že můžou opakovat požadavky, pokud dojde k selhání zóny.

  • Očekávaná ztráta dat: Během selhání zóny se neočekává žádná ztráta dat kvůli synchronní replikaci mezi zónami.

  • Očekávaný výpadek: V případě operací čtení by během selhání zóny nemělo dojít k žádnému výpadku. Operace zápisu mohou zaznamenat dočasnou nedostupnost, zatímco se služba přizpůsobuje selhání zóny. Očekává se, že operace čtení zůstanou dostupné během selhání zóny.

  • Traffic rerouting: Key Vault automaticky směruje provoz z ovlivněné zóny do zón v pořádku bez nutnosti zásahu zákazníka.

Obnovení zóny

Když se ovlivněná zóna dostupnosti obnoví, Key Vault automaticky obnoví operace do této zóny. Platforma Azure tento proces plně spravuje a nevyžaduje žádný zásah zákazníka.

Odolnost proti selháním v celé oblasti

Key Vault prostředky se nasazují do jedné Azure oblasti. Pokud se oblast stane nedostupnou, nebude dostupný ani trezor klíčů. Existují ale přístupy, které můžete použít k zajištění odolnosti vůči výpadkům oblastí. Tyto přístupy závisejí na tom, jestli je trezor klíčů ve spárovaném nebo nepárovaném regionu a na vašich konkrétních požadavcích a konfiguraci.

Převzetí služeb při selhání spravované Microsoftem do spárované oblasti

Key Vault podporuje replikaci spravovanou Microsoftem a převzetí služeb při selhání pro trezory klíčů ve většině spárovaných oblastí. Obsah trezoru klíčů se automaticky replikuje jak v rámci oblasti, tak asynchronně i do spárované oblasti. Tento přístup zajišťuje vysokou odolnost vašich klíčů a tajných kódů. V nepravděpodobném případě dlouhodobé poruchy regionu může Microsoft zahájit regionální přesun vašeho klíčového trezoru.

Následující oblasti nepodporují replikaci spravovanou Microsoftem ani převzetí služeb při selhání napříč oblastmi:

  • Brazílie – jih
  • Brazílie – jihovýchod
  • USA – západ 3
  • Libovolná oblast, která nemá spárovanou oblast

Důležité

Microsoft aktivuje Microsoftem spravované převzetí služeb při selhání. Pravděpodobně dojde po významném zpoždění a provede se na základě nejlepšího úsilí. K tomuto procesu existují také některé výjimky. Převzetí služeb při selhání trezorů klíčů může nastat v čase, který se liší od času převzetí služeb při selhání jiných služeb Azure.

Pokud potřebujete být odolní vůči výpadkům oblastí, zvažte použití jednoho z vlastních řešení pro více oblastí pro odolnost.

Pomocí funkce zálohování a obnovení můžete také replikovat obsah trezoru do jiné oblasti podle vašeho výběru.

Úvahy

  • Prostoj: Během probíhajícího přepnutí při selhání může být váš trezor klíčů na několik minut nedostupný.

  • Pouze pro čtení po převzetí služeb: Po převzetí služeb se trezor klíčů stává pouze pro čtení a podporuje jen omezené akce. V sekundární oblasti nelze měnit vlastnosti trezoru klíčů při provozu v této oblasti a není také možné upravovat zásady přístupu a konfigurace brány firewall, zatímco operujete v sekundární oblasti.

    Pokud je trezor klíčů v režimu jen pro čtení, podporují se pouze následující operace:

    • Seznam certifikátů
    • Získání certifikátů
    • Vypsat tajemství
    • Získání tajných kódů
    • Seznam klíčů
    • Získání (vlastností) klíčů
    • Zašifrovat
    • Dešifrovat
    • Ochranný obal
    • Rozbalit
    • Verify
    • Značka
    • Backup

Náklady

Za integrované možnosti replikace ve více oblastech Key Vault se neúčtují žádné další náklady.

Chování, když jsou všechny oblasti v pořádku

Následující část popisuje, co očekávat, když se úložiště klíčů nachází v oblasti, která podporuje replikaci a převzetí služeb při selhání spravované Microsoftem, a primární oblast je funkční:

  • Směrování provozu mezi oblastmi: Během normálních operací se všechny požadavky směrují do primární oblasti, ve které je váš trezor klíčů nasazený.

  • Data replikuje asynchronně mezi oblastmi: Key Vault replikuje data do spárované oblasti. Když provedete změny obsahu trezoru klíčů, tyto změny se nejprve potvrdí do primární oblasti a pak se replikují do sekundární oblasti.

Chování při selhání oblasti

Následující část popisuje, co můžete očekávat, když je trezor klíčů umístěn v oblasti, která podporuje replikaci spravovanou společností Microsoft a řízené převzetí služeb při selhání, a dojde k výpadku v primární oblasti:

  • Detekce a odpověď: Microsoft se může rozhodnout provést převzetí služeb při selhání, pokud dojde ke ztrátě primárního regionu. Tento proces může trvat několik hodin po ztrátě primární oblasti nebo déle v některých scénářích. Převzetí služeb trezorů klíčů nemusí probíhat ve stejnou dobu jako ostatní služby Azure.
  • Oznámení: Microsoft vás automaticky neoznámí, když je zóna mimo provoz. Pomocí Azure Resource Health ale můžete monitorovat stav jednotlivých prostředků a můžete nastavit Resource Health výstrahy, které vás upozorní na problémy. Můžete také použít Azure Service Health k pochopení celkového stavu služby, včetně jakýchkoli selhání zóny, a můžete nastavit upozornění služby Service Health, která vás upozorní na problémy.
  • Aktivní požadavky: Během převzetí služeb při selhání regionu může dojít k selhání aktivních požadavků a klientské aplikace by je po dokončení převzetí služeb při selhání měly opakovat.

  • Očekávaná ztráta dat: Pokud se změny nereplikují do sekundární oblasti před selháním primární oblasti, může dojít ke ztrátě dat.

  • Očekávaný výpadek: Během velkého výpadku primární oblasti může být váš trezor klíčů nedostupný několik hodin nebo dokud Microsoft nezahájí přepnutí na sekundární oblast.

    Pokud se k trezoru klíčů připojujete pomocí Private Link, může trvat až 20 minut, než se připojení po přepnutí oblasti při selhání znovu naváže.

  • Přesměrování provozu: Po převzetí služeb v případě selhání oblasti se žádosti automaticky směrují do spárované oblasti bez nutnosti zásahu zákazníka.

Vlastní řešení pro více regionů pro zajištění odolnosti

Existují scénáře, kdy funkce převzetí služeb při selhání mezi oblastmi, které jsou spravovány Microsoftem v rámci Key Vault, nejsou vhodné:

  • Váš klíčový trezor je v nepárované oblasti.

  • Váš trezor klíčů je ve spárované oblasti, která nepodporuje replikaci mezi oblastmi spravovanou Microsoftem a převzetí služeb při selhání v Oblasti Brazílie – jih, Jihovýchodní Brazílie a USA – západ 3.

  • Vaše cíle doby provozu nejsou splněny ani časem obnovení, ani ztrátou dat, které poskytuje Microsoftem spravované převzetí služeb při selhání mezi regiony.

  • Musíte převzít služby při selhání do oblasti, která není párem primární oblasti.

Vlastní řešení převzetí služeb při selhání mezi oblastmi můžete navrhnout pomocí následujících kroků:

  1. Vytvořte samostatné trezory klíčů v různých oblastech.

  2. Funkce zálohování a obnovení slouží k udržování konzistentních tajných kódů napříč oblastmi.

  3. Implementujte logiku na úrovni aplikace pro automatické přepnutí mezi trezory klíčů.

Zálohování a obnovení

Key Vault může zálohovat a obnovovat jednotlivé tajné klíče, klíče a certifikáty. Zálohy jsou určené k poskytnutí offline kopie tajných kódů v nepravděpodobném případě, že ztratíte přístup ke svému trezoru klíčů.

Zvažte následující klíčové faktory týkající se funkcí zálohování:

  • Zálohy vytvářejí šifrované objekty blob, které se nedají dešifrovat mimo Azure.

  • Zálohy je možné obnovit pouze do Key Vault ve stejném Azure předplatném a oblasti Azure.

  • Existuje omezení zálohování maximálně 500 předchozích verzí klíče, tajného klíče nebo objektu certifikátu.

  • Zálohy jsou snímky k určitému bodu v čase a při změně tajných kódů se automaticky neaktualizují.

U většiny řešení byste se neměli spoléhat výhradně na zálohy. Místo toho využijte další funkce popsané v tomto průvodci k podpoře vašich požadavků na odolnost. Zálohy ale chrání před některými riziky, která jiné přístupy nemají, například náhodné odstranění konkrétních tajných kódů. Další informace najdete v tématu Key Vault zálohování.

Funkce obnovení

Key Vault poskytuje dvě funkce obnovení klíčů, které brání náhodnému nebo škodlivému odstranění:

  • Měkké odstranění: Když je povoleno, měkké odstranění umožňuje obnovit smazané trezory a objekty během konfigurovatelné doby uchovávání dat. Toto období je ve výchozím nastavení 90 dnů. Můžete si představit soft delete jako koš na dočasné odstranění vašich prostředků z úložiště klíčů.

  • Ochrana před vymazáním: Pokud je tato možnost povolená, ochrana před vymazáním zabrání trvalému odstranění trezoru klíčů a jeho objektů, dokud neuplyne doba uchovávání. Tato ochrana brání škodlivým uživatelům v trvalém zničení vašeho tajemství.

Důrazně doporučujeme obě funkce pro produkční prostředí. Další informace naleznete v dokumentaci ke správě obnovení Key Vault, konkrétně v části Soft-delete a ochrana před vymazáním.

Smlouva o úrovni služeb

Smlouva o úrovni služeb (SLA) pro služby Azure popisuje očekávanou dostupnost každé služby a podmínky, které musí vaše řešení splnit, aby bylo dosaženo očekávané dostupnosti. Další informace najdete v tématu SLA pro online služby.