Zarządzanie kluczami dostępu do konta magazynu

Podczas tworzenia konta magazynu platforma Azure generuje dwa 512-bitowe klucze dostępu do konta magazynu. Te klucze mogą służyć do autoryzowania dostępu do danych na koncie magazynu za pośrednictwem autoryzacji klucza wspólnego.

Firma Microsoft zaleca używanie Azure Key Vault do zarządzania kluczami dostępu oraz regularnego obracania i ponownego generowania kluczy. Użycie Azure Key Vault ułatwia obracanie kluczy bez zakłóceń w aplikacjach. Możesz również ręcznie obrócić klucze.

Ochrona kluczy dostępu

Klucze dostępu do konta magazynu są podobne do hasła głównego konta magazynu. Zawsze należy zachować ostrożność, aby chronić klucze dostępu. Użyj Azure Key Vault, aby bezpiecznie zarządzać kluczami i je obracać. Unikaj dystrybuowania kluczy dostępu do innych użytkowników, kodowania ich na zawsze lub zapisywania ich w dowolnym miejscu w postaci zwykłego tekstu, który jest dostępny dla innych użytkowników. Wywróć klucze, jeśli uważasz, że zostały naruszone.

Uwaga

Firma Microsoft zaleca używanie usługi Azure Active Directory (Azure AD) do autoryzowania żądań względem danych obiektów blob i kolejek, jeśli to możliwe, zamiast klucza wspólnego. Usługa Azure AD zapewnia doskonałe zabezpieczenia i łatwość użycia klucza wspólnego. Aby uzyskać więcej informacji na temat autoryzowania dostępu do danych za pomocą usługi Azure AD, zobacz Autoryzowaniedostępu do kolejek i obiektów blob platformy Azure przy użyciu Azure Active Directory .

Wyświetlanie kluczy dostępu do konta

Klucze dostępu do konta można wyświetlać i kopiować za pomocą interfejsu Azure Portal, programu PowerShell lub interfejsu wiersza polecenia platformy Azure. Ponadto Azure Portal parametrów połączenia dla konta magazynu, które można skopiować.

Aby wyświetlić i skopiować klucze dostępu lub parametrów połączenia konta magazynu z Azure Portal:

  1. Przejdź do swojego konta magazynu w Azure Portal.

  2. W obszarze Ustawienia 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.

  3. Znajdź wartość Klucz w obszarze klucz1 i kliknij przycisk Kopiuj, aby skopiować klucz konta.

  4. Alternatywnie możesz skopiować wszystkie ciągi połączenia. Znajdź wartość Parametry połączenia w obszarze key1 i kliknij przycisk Kopiuj, aby skopiować parametry połączenia.

    Zrzut ekranu przedstawiający sposób wyświetlania kluczy dostępu w Azure Portal

Możesz użyć jednego z tych dwóch kluczy, aby uzyskać dostęp do usługi Azure Storage, ale ogólnie rzecz biorąc, dobrym rozwiązaniem jest użycie pierwszego klucza i zarezerwowanie drugiego klucza na czas rotacji kluczy.

Aby wyświetlić lub odczytać klucze dostępu konta, użytkownik musi być administratorem usługi lub mieć przypisaną rolę platformy Azure, która obejmuje akcję Microsoft.Storage/storageAccounts/listkeys/. Niektóre wbudowane role platformy Azure, które obejmują tę akcję, to role właściciela, współautora i Storage roli usługi Operator klucza konta. Aby uzyskać więcej informacji na temat roli administratora usługi, zobacz Role klasycznego administratora subskrypcji, role platformy Azure i role usługi Azure AD. Aby uzyskać szczegółowe informacje na temat wbudowanych ról dla usługi Azure Storage, zobacz sekcję Storage w sekcji Wbudowane role platformy Azure dla kontroli RBAC platformy Azure.

Używanie Azure Key Vault do zarządzania kluczami dostępu

Firma Microsoft zaleca używanie Azure Key Vault do zarządzania kluczami dostępu i ich rotacji. Aplikacja może bezpiecznie uzyskać dostęp do kluczy w Key Vault, dzięki czemu można uniknąć przechowywania ich przy użyciu kodu aplikacji. Aby uzyskać więcej informacji na temat Key Vault zarządzania kluczami, zobacz następujące artykuły:

Ręczne obracanie kluczy dostępu

Firma Microsoft zaleca okresową rotację kluczy dostępu w celu zapewnienia bezpieczeństwa konta magazynu. Jeśli to możliwe, użyj Azure Key Vault do zarządzania kluczami dostępu. Jeśli nie używasz Key Vault, musisz obrócić klucze ręcznie.

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, które są zależne od klucza konta magazynu. Wszystkich klientów, którzy używają klucza konta do uzyskiwania dostępu do konta magazynu, należy zaktualizować tak, aby używali nowego klucza, w tym usług multimediów, 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.

Jeśli planujesz ręczną rotację kluczy dostępu, firma Microsoft zaleca ustawienie zasad wygasania kluczy, a następnie użycie zapytań w programie Azure Monitor w celu określenia, kiedy należy obrócić klucz dostępu.

Tworzenie zasad wygasania kluczy

Możliwość ustawienia zasad wygasania kluczy przy użyciu Azure Portal nie jest jeszcze dostępna. Możesz użyć programu PowerShell lub interfejsu wiersza polecenia platformy Azure.

Zapytanie o naruszenia zasad

Jeśli utworzysz ustawienie diagnostyczne, które wysyła dzienniki do obszaru roboczego usługi Azure Log Analytics, możesz użyć zapytania dziennika Azure Monitor, aby określić, czy klucz wygasł.

Aby ustalić, czy klucz wygasł, wprowadź następujące zapytanie na pasku wyszukiwania w dzienniku.

StorageBlobLogs | where KeyExpiryStatus startsWith "Policy Violated". 

Można również utworzyć zapytanie, które pomaga określić, czy zapytanie zbliża się do wygaśnięcia. Poniższe zapytanie zawiera te informacje.

resources  
| where type =~ 'microsoft.storage/storageAccounts' 
| extend days = datetime_diff('day', now(), todatetime(parse_json(properties).keyCreationTime)) 
| extend KeyExpiryStatus = iff(days > 180, "Policy Violated", "") 
| project name, days, KeyExpiryStatus  

Obracanie kluczy dostępu

Aby obrócić klucze dostępu konta magazynu w Azure Portal:

  1. Zaktualizuj parametry połączenia w kodzie aplikacji, aby odwoływać się do pomocniczego klucza dostępu dla konta magazynu.

  2. Przejdź do swojego konta magazynu w Azure Portal.

  3. W obszarze Ustawienia wybierz pozycję Klucze dostępu.

  4. Aby ponownie wygenerować podstawowy klucz dostępu dla konta magazynu, wybierz przycisk Wygeneruj ponownie obok podstawowego klucza dostępu.

  5. Zaktualizuj parametry połączenia w kodzie za pomocą odwołania do nowego podstawowego klucza dostępu.

  6. 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 w niektórych miejscach używasz klucza 1, a w innych klucza 2, nie będzie można obracać kluczy bez utraty dostępu przez niektóre aplikacje.

Aby obrócić klucze dostępu konta, użytkownik musi być administratorem usługi lub mieć przypisaną rolę platformy Azure, która obejmuje microsoft.Storage/storageAccounts/regeneratekey/action. Niektóre wbudowane role platformy Azure, które obejmują tę akcję, to role właściciela, współautora i Storage roli usługi operator klucza konta. Aby uzyskać więcej informacji na temat roli administratora usługi, zobacz Role klasycznego administratora subskrypcji, role platformy Azure i role usługi Azure AD. Aby uzyskać szczegółowe informacje na temat wbudowanych ról platformy Azure dla usługi Azure Storage, zobacz sekcję Storage we wbudowanych rolach platformy Azure dla kontroli RBAC platformy Azure.

Następne kroki