Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Azure Key Vault to usługa w chmurze, która zapewnia bezpieczny magazyn kluczy kryptograficznych, wpisów tajnych i certyfikatów oraz zarządzanie nimi. Ten przewodnik pomaga deweloperom zintegrować Key Vault ze swoimi aplikacjami.
Przegląd
Azure Key Vault umożliwia:
- Bezpieczny magazyn: chroń klucze, tajne dane i certyfikaty bez konieczności pisania specjalnego kodu zabezpieczeń.
- Uproszczone zarządzanie kluczami: scentralizowanie operacji kryptograficznych i zarządzania cyklem życia kluczy.
- Klucze należące do klienta: umożliwia klientom zarządzanie własnymi kluczami podczas skupiania się na podstawowych funkcjach aplikacji.
- Zarządzanie kluczami zewnętrznymi: używaj kluczy do podpisywania i szyfrowania, zachowując je poza aplikacją.
Aby uzyskać ogólne informacje na temat Azure Key Vault, zobacz Informacje Azure Key Vault.
Scenariusze dla deweloperów
Typowe zadania deweloperów z Key Vault obejmują:
- Przechowywanie i odzyskiwanie sekretów: Zarządzaj bezpiecznie parametrami połączenia, hasłami, kluczami API i tokenami SAS. Aby uzyskać więcej informacji, zobacz O tajemnicach.
- Użyj kluczy do szyfrowania i podpisywania: wykonaj operacje kryptograficzne bez uwidaczniania materiału klucza w aplikacji. Aby uzyskać więcej informacji, zobacz About keys (Informacje o kluczach).
- Zarządzanie certyfikatami: automatyzowanie aprowizacji, odnawiania i wdrażania certyfikatów dla protokołu SSL/TLS. Aby uzyskać więcej informacji, zobacz About certificates (Informacje o certyfikatach).
Publiczne wersje zapoznawcze
Microsoft okresowo publikuje publiczne wersje zapoznawcze nowych funkcji Key Vault. Aby wypróbować funkcje w wersji zapoznawczej i przekazać opinię, skontaktuj się z zespołem pod adresem azurekeyvault@microsoft.com. Aby uzyskać informacje o najnowszych funkcjach i aktualizacjach, sprawdź Co nowego w Azure Key Vault.
Tworzenie magazynów kluczy i zarządzanie nimi
Key Vault używa modelu dostępu opartego na dwóch płaszczyznach:
- Kontrola płaszczyzny: zarządza samym zasobem Key Vault (tworzenie, usuwanie, aktualizowanie właściwości, przypisywanie zasad dostępu). Operacje są zarządzane za pośrednictwem Azure Resource Manager. Aby uzyskać informacje na temat kontroli dostępu, zobacz Przydziel zasady dostępu Key Vault.
- płaszczyzna Data: zarządza danymi przechowywanymi w Key Vault (klucze, wpisy tajne, certyfikaty). Dostęp jest kontrolowany za pomocą Azure RBAC z Key Vault.
Użyj wstępnie zdefiniowanej roli Key Vault Kontrybutor, aby udzielić dostępu do zarządzania zasobom Key Vault. Aby uzyskać więcej informacji na temat uwierzytelniania i autoryzacji, zobacz Authentication w Azure Key Vault.
Bezpieczeństwo sieci
Zmniejszenie narażenia sieci przez skonfigurowanie prywatnych punktów końcowych, zapór lub punktów końcowych usługi. Aby uzyskać kompleksowe wskazówki dotyczące zabezpieczeń sieci, w tym opcje konfiguracji od większości do najmniej restrykcyjnych, zobacz Secure your Azure Key Vault: Network Security and Configure Azure Key Vault networking settings(
API i SDK do zarządzania sejfem kluczy
Poniższa tabela zawiera zestawy SDK i przewodniki szybkiego startu dotyczące zarządzania operacjami płaszczyzny sterowania zasobami Key Vault. Aby uzyskać najnowsze wersje i instrukcje dotyczące instalacji, zobacz Biblioteki klienta.
| Azure CLI | PowerShell | interfejs API REST | Menedżer Zasobów | .NET | Python | Java | JavaScript |
|---|---|---|---|---|---|---|---|
|
Referencja Szybki start |
Referencja Szybki start |
Referencja |
Referencja Szybki start |
Referencja | Referencja | Referencja | Referencja |
Zaloguj się do Key Vault za pomocą kodu
Key Vault używa uwierzytelniania Microsoft Entra, które wymaga podmiotu zabezpieczeń Microsoft Entra w celu przydzielenia dostępu. Podmiot zabezpieczeń Microsoft Entra może być użytkownikiem, podmiotem usługi aplikacji, zarządzaną tożsamością dla zasobów Azure lub grupą dowolnego z tych typów.
Najlepsze rozwiązania dotyczące uwierzytelniania
W przypadku aplikacji wdrożonych w Azure użyj tożsamości zarządzanych, aby wyeliminować konieczność przechowywania poświadczeń w kodzie. Aby uzyskać szczegółowe wskazówki dotyczące uwierzytelniania oraz zalecenia dotyczące jednostek zabezpieczeń dla różnych środowisk (produkcyjne, deweloperskie, lokalne), zobacz Uwierzytelnianie w Azure Key Vault i Bezpieczeństwo Azure Key Vault.
biblioteki klienta usługi Azure Identity
Powyższe scenariusze uwierzytelniania są obsługiwane przez bibliotekę klienta Azure Identity i zintegrowaną z zestawami SDK Key Vault. Bibliotekę klienta Azure Identity można używać w środowiskach i platformach bez konieczności zmieniania kodu. Biblioteka automatycznie pobiera tokeny uwierzytelniania od użytkowników, którzy są zalogowani do użytkownika Azure za pośrednictwem Azure CLI, Visual Studio, Visual Studio Code i innych środków.
Aby uzyskać więcej informacji na temat biblioteki klienta Azure Identity, zobacz:
| .NET | Python | Java | JavaScript |
|---|---|---|---|
| Azure Identity SDK .NET | Azure Identity SDK Python | Azure Identity SDK Java | Azure Identity SDK JavaScript |
Uwaga
Zalecaliśmy App Authentication library dla zestawu SDK Key Vault .NET w wersji 3, ale jest teraz przestarzała. Aby przeprowadzić migrację do Key Vault .NET SDK w wersji 4, postępuj zgodnie z instrukcjami migracji z AppAuthentication do Azure.Identity.
Aby uzyskać samouczki dotyczące uwierzytelniania w aplikacjach do Key Vault, zobacz:
- Użyj Azure Key Vault z maszyną wirtualną w .NET
- Użyj Azure Key Vault z maszyną wirtualną w Python
- Użyj tożsamości zarządzanej, aby połączyć Key Vault z aplikacją internetową Azure w .NET
Zarządzanie kluczami, certyfikatami i wpisami tajnymi
Uwaga
Zestawy SDK dla .NET, Python, Java, JavaScript, PowerShell i Azure CLI są częścią procesu wydawania funkcji Key Vault poprzez wersję publiczną i ogólną dostępność przy wsparciu zespołu ds. usług Key Vault. Inni klienci zestawu SDK dla Key Vault są dostępni, ale są kompilowane i obsługiwane przez poszczególne zespoły zestawu SDK w GitHub i udostępniane w harmonogramie zespołów. Aby zapoznać się z najnowszymi wersjami zestawu SDK i pakietami instalacyjnymi, zobacz Biblioteki klienta.
Płaszczyzna danych kontroluje dostęp do kluczy, certyfikatów i sekretów. Kontrolę dostępu na płaszczyźnie danych można realizować za pomocą Azure RBAC dla Key Vault.
API i SDK dla kluczy
W poniższej tabeli wymieniono zestawy SDK i przewodniki szybkiego startu do pracy z kluczami (operacje na płaszczyźnie danych). Aby uzyskać więcej informacji na temat kluczy, zobacz About keys (Informacje o kluczach).
| Azure CLI | PowerShell | interfejs API REST | Menedżer Zasobów | .NET | Python | Java | JavaScript |
|---|---|---|---|---|---|---|---|
|
Referencja Szybki start |
Referencja Szybki start |
Referencja |
Referencja Szybki start |
Referencja Szybki start |
Referencja Szybki start |
Referencja Szybki start |
Referencja Szybki start |
Inne biblioteki
Klient kryptografii dla Key Vault i zarządzanej usługi HSM
Ten moduł zawiera klienta kryptografii dla modułu klienta Azure Key Vault Keys dla języka Go.
Uwaga
Ten projekt nie jest obsługiwany przez zespół Azure SDK, ale jest zgodny z klientami kryptografii w innych obsługiwanych językach.
| Język | Źródło |
|---|---|
| Go | Referencja |
Interfejsy API i zestawy SDK dla certyfikatów
W poniższej tabeli wymieniono pakiety SDK i przewodniki szybkiego startu dotyczące pracy z certyfikatami (operacje na płaszczyźnie danych). Aby uzyskać więcej informacji na temat certyfikatów, zobacz About certificates (Informacje o certyfikatach).
| Azure CLI | PowerShell | interfejs API REST | Menedżer Zasobów | .NET | Python | Java | JavaScript |
|---|---|---|---|---|---|---|---|
|
Referencja Szybki start |
Referencja Szybki start |
Referencja | N/A |
Referencja Szybki start |
Referencja Szybki start |
Referencja Szybki start |
Referencja Szybki start |
Interfejsy API i zestawy SDK do zarządzania tajemnicami
W poniższej tabeli wymieniono zestawy SDK i przewodniki szybkiego startu dotyczące pracy z tajnymi danymi (operacje płaszczyzny danych). Aby uzyskać więcej informacji na temat tajemnic, zobacz About secrets.
| Azure CLI | PowerShell | interfejs API REST | Menedżer Zasobów | .NET | Python | Java | JavaScript |
|---|---|---|---|---|---|---|---|
|
Referencja Szybki start |
Referencja Szybki start |
Referencja |
Referencja Szybki start |
Referencja Szybki start |
Referencja Szybki start |
Referencja Szybki start |
Referencja Szybki start |
Użycie tajemnic
Użyj Azure Key Vault do przechowywania wyłącznie tajnych informacji dla swojej aplikacji. Przykłady wpisów tajnych, które powinny być przechowywane w Key Vault obejmują:
- Sekrety aplikacji klienckiej
- Łańcuchy połączenia
- Hasła
- Klucze dostępu współdzielonego
- Klucze SSH
Wszelkie informacje związane z tajemnicami, takie jak nazwy użytkowników i identyfikatory aplikacji, mogą być przechowywane jako tag w sekrecie. W przypadku innych poufnych ustawień konfiguracji należy użyć Azure App Configuration.
Aby uzyskać informacje o pakietach instalacyjnych i kodzie źródłowym, zobacz Biblioteki klienta.
Używanie Key Vault w aplikacjach
Aby korzystać z najnowszych funkcji w Key Vault, zalecamy używanie dostępnych zestawów SDK Key Vault do używania wpisów tajnych, certyfikatów i kluczy w aplikacji. Zestawy SDK Key Vault i interfejs API REST są aktualizowane w miarę wydawania nowych funkcji dla produktu i przestrzegają najlepszych rozwiązań i wytycznych.
W przypadku podstawowych scenariuszy istnieją inne biblioteki i rozwiązania integracji do uproszczonego użycia z obsługą partnerów Microsoft lub społeczności open source.
W przypadku certyfikatów można użyć:
- Rozszerzenie maszyny wirtualnej (VM) Key Vault, które zapewnia automatyczne odświeżanie certyfikatów przechowywanych w Azure key vault. Aby uzyskać więcej informacji, zobacz:
- Integracja usługi Azure App Service, która może importować i automatycznie odświeżać certyfikaty z Key Vault. Aby uzyskać więcej informacji, zobacz Importuj certyfikat z Key Vault.
Dla tajemnic można użyć:
- Tajne informacje Key Vault z ustawieniami aplikacji App Service. Aby uzyskać więcej informacji, zobacz
Use Key Vault references for App Service and Azure Functions (Informacje o usłudze App Service i Azure Functions. - Odwołania do usługi Key Vault we współpracy z Azure App Configuration w celu usprawnienia dostępu aplikacji do konfiguracji i tajemnic. Aby uzyskać więcej informacji, zobacz Używanie odwołań do Key Vault w Azure App Configuration.
Przykłady kodu
Aby zapoznać się z kompletnymi przykładami używania Key Vault z aplikacjami, zobacz Azure Key Vault przykłady kodu.
Wskazówki specyficzne dla zadania
Następujące artykuły i scenariusze zawierają wskazówki specyficzne dla zadań dotyczące pracy z Azure Key Vault:
- Aby uzyskać dostęp do magazynu kluczy, aplikacja kliencka musi mieć dostęp do wielu punktów końcowych dla różnych funkcji. Zobacz Uzyskiwanie dostępu do Key Vault za zaporą.
- Aplikacja w chmurze działająca na maszynie wirtualnej Azure wymaga certyfikatu. Jak uzyskać ten certyfikat na tej maszynie wirtualnej? Zobacz rozszerzenie maszyny wirtualnej Key Vault dla Windows lub rozszerzenie maszyny wirtualnej Key Vault dla systemu Linux.
- Aby przypisać zasady dostępu przy użyciu Azure CLI, programu PowerShell lub portalu Azure, zobacz Przypisania zasad dostępu Key Vault.
- Aby uzyskać wskazówki dotyczące używania i cyklu życia magazynu kluczy oraz różnych obiektów magazynu kluczy z włączonym miękkim usuwaniem, zobacz Azure Key Vault z zarządzaniem odzyskiwaniem, ochroną miękkiego usuwania i ochroną przed czyszczeniem.
- Jeśli podczas wdrażania musisz przekazać bezpieczną wartość (na przykład hasło) jako parametr, możesz przechowywać wartość jako wpis tajny w magazynie kluczy i odwoływać się do wartości w innych szablonach Resource Manager. Zobacz Użyj Azure Key Vault, aby przekazać bezpieczne wartości parametrów podczas wdrażania.
Integracja z Key Vault
Następujące usługi i scenariusze używają lub integrują się z Key Vault:
- Szyfrowanie w spoczynku umożliwia szyfrowanie danych w momencie ich przechowywania. Klucze szyfrowania danych są często szyfrowane za pomocą klucza do szyfrowania kluczy w Azure Key Vault, aby dodatkowo ograniczyć dostęp.
- Azure Information Protection umożliwia zarządzanie własnym kluczem dzierżawy. Na przykład, zamiast zarządzania kluczem dzierżawy przez Microsoft (ustawienie domyślne), możesz zarządzać własnym kluczem dzierżawy, aby spełnić określone przepisy dotyczące twojej organizacji. Zarządzanie własnym kluczem dzierżawy jest również nazywane przynoszeniem własnego klucza (BYOK).
- Azure Private Link umożliwia dostęp do usług Azure (na przykład Azure Key Vault, Azure Storage i Azure Cosmos DB) oraz usług klientów/partnerów hostowanych na platformie Azure za pośrednictwem prywatnego węzła w swojej wirtualnej sieci.
- Key Vault integracja z Azure Event Grid umożliwia użytkownikom otrzymywanie powiadomień o zmianie statusu tajemnicy przechowywanej w Key Vault. Nowe wersje sekretów można dystrybuować do aplikacji lub rotować te, które są zbliżające się do wygaśnięcia, aby zapobiec awariom.
- Chroń wpisy tajne Azure DevOps przed niepożądanym dostępem w usłudze Key Vault.
- Użyj tajemnic przechowywanych w Key Vault, aby połączyć się z Azure Storage z Azure Databricks.
- Skonfiguruj i uruchom dostawcę Azure Key Vault dla Secrets Store CSI driver na platformie Kubernetes.
Ciągłość biznesowa i odzyskiwanie po awarii
Key Vault zapewnia wbudowane odzyskiwanie po awarii z automatyczną replikacją regionalną. W przypadku wdrożeń produkcyjnych włącz miękkie usuwanie i ochronę przed usuwaniem ostatecznym oraz zaimplementuj regularne kopie zapasowe. Aby uzyskać więcej informacji, zobacz Azure Key Vault dostępność i nadmiarowość, Azure Key Vault odzyskiwanie i Azure Key Vault kopie zapasowe.
Wydajność i skalowalność
Podczas tworzenia aplikacji korzystających z Key Vault należy wziąć pod uwagę następujące najlepsze rozwiązania dotyczące wydajności i skalowalności:
- Limity Service: Key Vault ma limity usługi dla transakcji na jeden skarbiec na jeden region. Przekroczenie tych limitów powoduje ograniczenie przepustowości. Aby uzyskać więcej informacji, zobacz Azure Key Vault limity usług.
- Wskazówki dotyczące ograniczania przepustowości: Zaimplementuj logikę ponawiania przy użyciu wycofywania wykładniczego, aby obsłużyć odpowiedzi ograniczania przepustowości. Aby uzyskać więcej informacji, zobacz Wskazówki dotyczące ograniczania zasobów w Azure Key Vault.
- Caching: Buforowanie wpisów tajnych i certyfikatów w aplikacji w celu zmniejszenia liczby wywołań Key Vault i poprawy wydajności.
- Zarządzanie połączeniami: Ponownie używaj połączeń HTTP do Key Vault, jeśli to możliwe, aby zmniejszyć opóźnienia i zwiększyć wydajność.
Monitorowanie i rejestrowanie
Włącz rejestrowanie i monitorowanie pod kątem zabezpieczeń, zgodności i rozwiązywania problemów. Konfigurowanie ustawień diagnostycznych, powiadomień usługi Event Grid i alertów dotyczących zdarzeń krytycznych. Aby uzyskać szczegółowe wskazówki, zobacz Monitorowanie Azure Key Vault, Rejestrowanie Azure Key Vault, Monitorowanie Key Vault za pomocą Azure Event Grid i Secure your Azure Key Vault: Logging and Wykrywanie zagrożeń.
Typowe parametry i wzorce żądań
Podczas pracy z interfejsem API REST Key Vault pomocne jest zrozumienie typowych parametrów i wzorców żądań/odpowiedzi:
- Wersje API: Key Vault używa wersjonowanych interfejsów API. Zawsze określ wersję interfejsu API w żądaniach.
- Żądania uwierzytelniania: informacje na temat sposobu uzyskiwania i użycia tokenów uwierzytelniania, w tym typowych nagłówków żądań i formatów odpowiedzi. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie, żądania i odpowiedzi.
- Kody błędów: Zapoznaj się z typowymi kodami błędów interfejsu API REST, aby bezpiecznie obsługiwać błędy. Aby uzyskać więcej informacji, zobacz Azure Key Vault kody błędów interfejsu API REST.
Rozwiązywanie problemów
Aby uzyskać pomoc dotyczącą rozwiązywania typowych problemów:
- Błędy odmowy dostępu: Sprawdź dane uwierzytelniające i czy nazwa główna zabezpieczeń ma niezbędne uprawnienia za pośrednictwem przypisań RBAC. Zobacz Azure RBAC dla operacji płaszczyzny danych usługi Key Vault.
- Network connectivity: W przypadku uzyskiwania dostępu do Key Vault zza zapory upewnij się, że wymagane punkty końcowe są dostępne. Zobacz Uzyskiwanie dostępu do Key Vault za zaporą.
- Ograniczanie przepustowości: w przypadku odbierania odpowiedzi 429 (zbyt wielu żądań) zaimplementuj wycofywanie wykładnicze. Zobacz Azure Key Vault wskazówki dotyczące ograniczania przepustowości.
Najlepsze rozwiązania dotyczące zabezpieczeń
Aby uzyskać kompleksowe wskazówki dotyczące zabezpieczeń, takie jak zarządzanie tożsamościami i dostępem, ochrona danych, zgodność, ład i strategie tworzenia kopii zapasowych, zobacz Secure your Azure Key Vault.
Dodatkowe zasoby
Koncepcje Key Vault
- Azure Key Vault podstawowe pojęcia — podstawowe pojęcia dotyczące pracy z Key Vault.
- Omówienie funkcji soft-delete w Azure Key Vault — odzyskiwanie usuniętych obiektów.
- Azure Key Vault wskazówki dotyczące ograniczania przepustowości — podstawowe pojęcia i podejście do aplikacji.
- Azure Key Vault obszary zabezpieczeń i granice geograficzne — relacje regionalne i związane z zabezpieczeniami.
- Azure Key Vault limity usług — Limity transakcji i inne ograniczenia usługi.
Zarządzanie i operacje
- Monitor Azure Key Vault — konfigurowanie monitorowania i diagnostyki.
- Azure Key Vault rejestrowanie — włączanie i analizowanie dzienników Key Vault.
Społeczność i wsparcie
Microsoft Q& A — Zadaj pytania i uzyskaj odpowiedzi od społeczności.- Stack Overflow for Key Vault - Techniczne Pytania i Odpowiedzi od deweloperów.
- Azure Feedback — Przesyłanie żądań funkcji i opinii.