Zarządzanie kluczami dostępu do konta magazynu
Podczas tworzenia konta magazynu platforma Azure generuje dla tego konta dwa 512-bitowe klucze dostępu do konta magazynu. Za pomocą tych kluczy można autoryzować dostęp do danych na koncie magazynu za pośrednictwem autoryzacji klucza współdzielonego lub tokenów SAS podpisanych przy użyciu klucza współużytkowanego.
Firma Microsoft zaleca używanie usługi Azure Key Vault do zarządzania kluczami dostępu oraz regularne obracanie i ponowne generowanie kluczy. Korzystanie z usługi Azure Key Vault ułatwia obracanie kluczy bez zakłóceń w aplikacjach. Możesz również ręcznie obrócić klucze.
Ważne
Aby uzyskać optymalne zabezpieczenia, firma Microsoft zaleca używanie identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi w celu autoryzowania żądań względem danych obiektów blob, kolejek i tabel, jeśli to możliwe. Autoryzacja przy użyciu identyfikatora Entra firmy Microsoft i tożsamości zarządzanych zapewnia doskonałe zabezpieczenia i łatwość użycia w przypadku autoryzacji klucza współdzielonego. Aby dowiedzieć się więcej o tożsamościach zarządzanych, zobacz Co to są tożsamości zarządzane dla zasobów platformy Azure. Aby zapoznać się z przykładem włączania i używania tożsamości zarządzanej dla aplikacji platformy .NET, zobacz Authenticating Azure-hosted apps to Azure resources with .NET (Uwierzytelnianie aplikacji hostowanych na platformie Azure w zasobach platformy Azure przy użyciu platformy .NET).
W przypadku zasobów hostowanych poza platformą Azure, takich jak aplikacje lokalne, można używać tożsamości zarządzanych za pośrednictwem usługi Azure Arc. Na przykład aplikacje uruchomione na serwerach z obsługą usługi Azure Arc mogą używać tożsamości zarządzanych do łączenia się z usługami platformy Azure. Aby dowiedzieć się więcej, zobacz Uwierzytelnianie w odniesieniu do zasobów platformy Azure za pomocą serwerów z obsługą usługi Azure Arc.
W przypadku scenariuszy, w których są używane sygnatury dostępu współdzielonego (SAS), firma Microsoft zaleca używanie sygnatury dostępu współdzielonego delegowania użytkowników. Sygnatura dostępu współdzielonego delegowania użytkownika jest zabezpieczona przy użyciu poświadczeń usługi Microsoft Entra zamiast klucza konta. Aby dowiedzieć się więcej o sygnaturach dostępu współdzielonego, zobacz Udzielanie ograniczonego dostępu do danych za pomocą sygnatur dostępu współdzielonego. Aby zapoznać się z przykładem tworzenia i używania sygnatury dostępu współdzielonego delegowania użytkownika za pomocą platformy .NET, zobacz Tworzenie sygnatury dostępu współdzielonego delegowania użytkownika dla obiektu blob za pomocą platformy .NET.
Ochrona kluczy dostępu
Klucze dostępu do konta magazynu zapewniają pełny dostęp do danych konta magazynu i możliwość generowania tokenów SAS. Zawsze należy zachować ostrożność, aby chronić klucze dostępu. Usługa Azure Key Vault umożliwia bezpieczne zarządzanie kluczami i obracanie ich. Dostęp do klucza współużytkowanego zapewnia użytkownikowi pełny dostęp do danych konta magazynu. Dostęp do kluczy udostępnionych powinien być starannie ograniczony i monitorowany. Używaj tokenów SAS delegowania użytkowników z ograniczonym zakresem dostępu w scenariuszach, w których nie można używać autoryzacji opartej na identyfikatorze Entra firmy Microsoft. Unikaj kodowania twardych kluczy dostępu lub zapisywania ich w dowolnym miejscu w postaci zwykłego tekstu, który jest dostępny dla innych osób. Obracanie kluczy, jeśli uważasz, że mogły zostać naruszone.
Ważne
Aby uniemożliwić użytkownikom dostęp do danych na koncie magazynu przy użyciu klucza współużytkowanego, możesz uniemożliwić autoryzację klucza współdzielonego dla konta magazynu. Najlepszym rozwiązaniem w zakresie zabezpieczeń jest szczegółowy dostęp do danych z najmniejszymi uprawnieniami wymaganymi. Autoryzacja oparta na identyfikatorze Entra firmy Microsoft korzystająca z tożsamości zarządzanych powinna być używana w scenariuszach obsługujących protokół OAuth. Protokół Kerberos lub SMTP powinien być używany dla usługi Azure Files za pośrednictwem protokołu SMB. W przypadku usługi Azure Files za pośrednictwem rest można używać tokenów SAS. Dostęp do klucza współużytkowanego powinien być wyłączony, jeśli nie jest wymagany, aby zapobiec jego nieumyślnemu użyciu. Aby uzyskać więcej informacji, zobacz Zapobieganie autoryzacji klucza współdzielonego dla konta usługi Azure Storage.
Aby chronić konto usługi Azure Storage przy użyciu zasad dostępu warunkowego firmy Microsoft Entra, musisz nie zezwalać na autoryzację klucza współdzielonego dla konta magazynu.
Jeśli wyłączono dostęp do klucza współużytkowanego i w dziennikach diagnostycznych jest widoczna autoryzacja klucza współużytkowanego, oznacza to, że zaufany dostęp jest używany do uzyskiwania dostępu do magazynu. Aby uzyskać więcej informacji, zobacz Zaufany dostęp do zasobów zarejestrowanych w dzierżawie firmy Microsoft Entra.
Wyświetlanie kluczy dostępu do konta
Klucze dostępu do konta można wyświetlać i kopiować za pomocą witryny Azure Portal, programu PowerShell lub interfejsu wiersza polecenia platformy Azure. Witryna Azure Portal udostępnia również parametry połączenia dla konta magazynu, które można skopiować.
Aby wyświetlić i skopiować klucze dostępu do konta magazynu lub parametry połączenia z witryny Azure Portal:
W witrynie Azure Portal przejdź do konta magazynu.
W obszarze Zabezpieczenia i sieć wybierz pozycję Klucze dostępu. Zostaną wyświetlone klucze dostępu do Twojego konta, a także pełne parametry połączenia dla każdego klucza.
Wybierz pozycję Pokaż klucze, aby wyświetlić klucze dostępu i parametry połączenia oraz włączyć przyciski kopiowania wartości.
W obszarze key1 znajdź wartość Klucz . Wybierz przycisk Kopiuj, aby skopiować klucz konta.
Alternatywnie możesz skopiować całą parametry połączenia. W obszarze key1 znajdź wartość Parametry połączenia. Wybierz przycisk Kopiuj, aby skopiować parametry połączenia.
Aby uzyskać dostęp do usługi Azure Storage, możesz użyć jednego z tych dwóch kluczy, ale ogólnie dobrym rozwiązaniem jest użycie pierwszego klucza i zarezerwowanie użycia drugiego klucza podczas rotacji kluczy.
Aby wyświetlić lub odczytać klucze dostępu konta, użytkownik musi być administratorem usługi lub musi mieć przypisaną rolę platformy Azure obejmującą microsoft.Storage/storageAccounts/listkeys/action. Niektóre wbudowane role platformy Azure, które obejmują tę akcję, to role roli właściciela, współautora i roli operatora klucza konta magazynu. Aby uzyskać więcej informacji na temat roli Administratora usługi, zobacz Role platformy Azure, Role firmy Microsoft Entra i klasyczne role administratora subskrypcji. Aby uzyskać szczegółowe informacje na temat wbudowanych ról dla usługi Azure Storage, zobacz sekcję Storage w wbudowanych rolach platformy Azure dla kontroli dostępu opartej na rolach platformy Azure.
Zarządzanie kluczami dostępu przy użyciu usługi Azure Key Vault
Firma Microsoft zaleca używanie usługi Azure Key Vault do zarządzania kluczami dostępu i obracania ich. Aplikacja może bezpiecznie uzyskać dostęp do kluczy w usłudze Key Vault, aby uniknąć przechowywania ich przy użyciu kodu aplikacji. Aby uzyskać więcej informacji na temat używania usługi Key Vault do zarządzania kluczami, zobacz następujące artykuły:
- Zarządzanie kluczami konta magazynu za pomocą usługi Azure Key Vault i programu PowerShell
- Zarządzanie kluczami konta magazynu za pomocą usługi Azure Key Vault i interfejsu wiersza polecenia platformy Azure
Ręczne obracanie kluczy dostępu
Firma Microsoft zaleca okresowe obracanie kluczy dostępu w celu zapewnienia bezpieczeństwa konta magazynu. Jeśli to możliwe, użyj usługi Azure Key Vault do zarządzania kluczami dostępu. Jeśli nie używasz usługi Key Vault, musisz ręcznie obrócić klucze.
Przypisane są dwa klucze dostępu, dzięki czemu można obracać klucze. Posiadanie dwóch kluczy gwarantuje, że aplikacja zachowuje dostęp do usługi Azure Storage w całym procesie.
Ostrzeżenie
Ponowne generowanie kluczy dostępu może mieć wpływ na wszystkie aplikacje lub usługi platformy Azure zależne od klucza konta magazynu. Każdy klient korzystający z klucza konta w celu uzyskania dostępu do konta magazynu musi zostać zaktualizowany w celu użycia nowego klucza, w tym usług multimedialnych, aplikacji w chmurze, aplikacji klasycznych i mobilnych oraz graficznych aplikacji interfejsu użytkownika dla usługi Azure Storage, takich jak Eksplorator usługi Azure Storage.
Ponadto rotacja lub ponowne generowanie kluczy dostępu powoduje odwołanie sygnatur dostępu współdzielonego wygenerowanych na podstawie tego klucza. Po rotacji kluczy dostępu należy ponownie wygenerować tokeny sas konta i usługi , aby uniknąć zakłóceń w aplikacjach. Należy pamiętać, że tokeny SAS delegowania użytkownika są zabezpieczone przy użyciu poświadczeń usługi Microsoft Entra i nie mają wpływu na rotację kluczy.
Jeśli planujesz ręczne obracanie kluczy dostępu, firma Microsoft zaleca ustawienie zasad wygasania kluczy. Aby uzyskać więcej informacji, zobacz Tworzenie zasad wygasania kluczy.
Po utworzeniu zasad wygasania kluczy można użyć usługi Azure Policy do monitorowania, czy klucze konta magazynu zostały obracane w zalecanym interwale. Aby uzyskać szczegółowe informacje, zobacz Sprawdzanie naruszeń zasad wygasania kluczy.
Aby obrócić klucze dostępu do konta magazynu w witrynie Azure Portal:
- Zaktualizuj parametry połączenia w kodzie aplikacji, aby odwoływać się do pomocniczego klucza dostępu dla konta magazynu.
- Przejdź do konta magazynu w witrynie Azure Portal.
- W obszarze Zabezpieczenia i sieć wybierz pozycję Klucze dostępu.
- Aby ponownie wygenerować podstawowy klucz dostępu dla konta magazynu, wybierz przycisk Wygeneruj ponownie obok podstawowego klucza dostępu.
- Zaktualizuj parametry połączenia w kodzie za pomocą odwołania do nowego podstawowego klucza dostępu.
- W ten sam sposób wygeneruj ponownie pomocniczy klucz dostępu.
Uwaga
Firma Microsoft zaleca używanie tylko jednego z kluczy we wszystkich aplikacjach w tym samym czasie. Jeśli używasz klucza 1 w niektórych miejscach i klucza 2 w innych, nie będzie można obracać kluczy bez utraty dostępu przez aplikację.
Aby obrócić klucze dostępu konta, użytkownik musi być administratorem usługi lub musi mieć przypisaną rolę platformy Azure obejmującą wartość Microsoft.Storage/storageAccounts/regeneratekey/action. Niektóre wbudowane role platformy Azure, które obejmują tę akcję, to role roli właściciela, współautora i roli operatora klucza konta magazynu. Aby uzyskać więcej informacji na temat roli Administratora usługi, zobacz Role platformy Azure, Role firmy Microsoft Entra i klasyczne role administratora subskrypcji. Aby uzyskać szczegółowe informacje o rolach wbudowanych platformy Azure dla usługi Azure Storage, zobacz sekcję Storage w wbudowanych rolach platformy Azure dla kontroli dostępu opartej na rolach platformy Azure.
Tworzenie zasad wygasania kluczy
Zasady wygasania kluczy umożliwiają ustawienie przypomnienia dotyczącego rotacji kluczy dostępu do konta. Przypomnienie jest wyświetlane, jeśli określony interwał upłynął, a klucze nie zostały jeszcze obrócone. Po utworzeniu zasad wygasania kluczy można monitorować konta magazynu pod kątem zgodności, aby upewnić się, że klucze dostępu do konta są regularnie obracane.
Uwaga
Przed utworzeniem zasad wygasania kluczy może być konieczne obracanie co najmniej raz poszczególnych kluczy dostępu do konta.
Aby utworzyć zasady wygasania kluczy w witrynie Azure Portal:
- W witrynie Azure Portal przejdź do konta magazynu.
- W obszarze Zabezpieczenia i sieć wybierz pozycję Klucze dostępu. Zostaną wyświetlone klucze dostępu do Twojego konta, a także pełne parametry połączenia dla każdego klucza.
- Wybierz przycisk Ustaw przypomnienie o rotacji. Jeśli przycisk Ustaw przypomnienie o rotacji jest wyszaryzowany, należy obrócić każdy z kluczy. Wykonaj kroki opisane w temacie Ręczne obracanie kluczy dostępu, aby obrócić klucze.
- W obszarze Ustaw przypomnienie o rotacji kluczy dostępu zaznacz pole wyboru Włącz przypomnienia dotyczące rotacji kluczy i ustaw częstotliwość przypomnienia.
- Wybierz pozycję Zapisz.
Sprawdzanie naruszeń zasad wygasania kluczy
Konta magazynu można monitorować za pomocą usługi Azure Policy, aby upewnić się, że klucze dostępu do konta zostały obrócone w zalecanym okresie. Usługa Azure Storage udostępnia wbudowane zasady zapewniające, że klucze dostępu do konta magazynu nie wygasły. Aby uzyskać więcej informacji na temat wbudowanych zasad, zobacz Klucze konta magazynu nie powinny być wygasłe na liście wbudowanych definicji zasad.
Przypisywanie wbudowanych zasad dla zakresu zasobów
Wykonaj następujące kroki, aby przypisać wbudowane zasady do odpowiedniego zakresu w witrynie Azure Portal:
W witrynie Azure Portal wyszukaj pozycję Zasady , aby wyświetlić pulpit nawigacyjny usługi Azure Policy.
W sekcji Tworzenie wybierz pozycję Przypisania.
Wybierz pozycję Przypisz zasady.
Na karcie Podstawowe na stronie Przypisywanie zasad w sekcji Zakres określ zakres przypisania zasad. Wybierz przycisk Więcej, aby wybrać subskrypcję i opcjonalną grupę zasobów.
W polu Definicja zasad wybierz przycisk Więcej i wprowadź klucze konta magazynu w polu Wyszukaj. Wybierz definicję zasad o nazwie Klucze konta magazynu nie powinny być wygasłe.
Wybierz pozycję Przejrzyj i utwórz , aby przypisać definicję zasad do określonego zakresu.
Monitorowanie zgodności z zasadami wygasania kluczy
Aby monitorować konta magazynu pod kątem zgodności z zasadami wygasania kluczy, wykonaj następujące kroki:
Na pulpicie nawigacyjnym usługi Azure Policy znajdź wbudowaną definicję zasad dla zakresu określonego w przypisaniu zasad. Możesz wyszukać klucze konta magazynu nie powinny być wygasłe w polu Wyszukiwania , aby filtrować wbudowane zasady.
Wybierz nazwę zasad z żądanym zakresem.
Na stronie Przypisywanie zasad dla wbudowanych zasad wybierz pozycję Wyświetl zgodność. Wszystkie konta magazynu w określonej subskrypcji i grupie zasobów, które nie spełniają wymagań zasad, są wyświetlane w raporcie zgodności.
Aby zapewnić zgodność konta magazynu, obróć klucze dostępu do konta.