Udostępnij przez


Zabezpieczanie wdrożenia modułu HSM w chmurze platformy Azure

Moduł sprzętowy HSM w chmurze platformy Microsoft Azure zapewnia wysoki poziom zabezpieczeń, oferując ochronę kluczy kryptograficznych i zabezpieczanie wrażliwych operacji w chmurze. Implementowanie najlepszych rozwiązań w zakresie zabezpieczeń jest niezbędne, aby zapobiec nieautoryzowanemu dostępowi, utrzymywać integralność operacyjną i optymalizować wydajność.

Ten artykuł zawiera wskazówki dotyczące najlepszego zabezpieczania wdrożenia modułu HSM w chmurze.

Zabezpieczenia i zgodność

  • Ochrona rdzenia zaufania: Zalecamy klientom ograniczenie dostępu do klucza prywatnego Właściciela Partycji Aplikacji (POTA) PO.key. Administrator partycji aplikacji (AOTA) i kluczy prywatnych POTA są równoważne dostępowi głównemu. Mogą resetować hasła dla użytkowników oficera kryptografii (CO) w partycji (AOTA dla partycji 0, POTA dla partycji użytkownika).

    PO.key jest niepotrzebne do dostępu do HSM w czasie działania. Jest to wymagane tylko w przypadku początkowego podpisywania certyfikatu uwierzytelniania właściciela partycji (POAC) i resetowania hasła CO. Zalecamy przechowywanie PO.key w trybie offline i wykonywanie początkowego podpisywania POAC na maszynie w trybie offline, jeśli to możliwe.

    Ważne

    Klienci są odpowiedzialny za ochronę klucza prywatnego POTA. Utrata klucza prywatnego POTA powoduje brak możliwości odzyskania haseł CO. Zalecamy klientom bezpieczne przechowywanie klucza prywatnego POTA i utrzymywanie odpowiednich kopii zapasowych.

Bezpieczeństwo sieci

Zapewnienie silnego bezpieczeństwa sieci jest niezbędne w przypadku korzystania z modułu HSM w chmurze platformy Azure. Prawidłowe skonfigurowanie sieci może pomóc zapobiec nieautoryzowanemu dostępowi i zmniejszyć narażenie na zagrożenia zewnętrzne. Aby uzyskać więcej informacji, zobacz Zabezpieczenia sieci dla modułu HSM w chmurze platformy Azure.

  • Używanie prywatnych punktów końcowych: pomaga zabezpieczyć wdrożenie modułu HSM w chmurze platformy Azure przy użyciu podsieci prywatnych i prywatnych punktów końcowych, aby zapobiec narażeniu na publiczny Internet. Ta akcja gwarantuje, że ruch pozostaje w sieci szkieletowej firmy Microsoft, co zmniejsza ryzyko nieautoryzowanego dostępu.

Zarządzanie użytkownikami

Efektywne zarządzanie użytkownikami ma kluczowe znaczenie dla utrzymania bezpieczeństwa i integralności modułu HSM w chmurze platformy Azure. Zaimplementowanie odpowiednich mechanizmów kontroli tożsamości użytkowników, poświadczeń i uprawnień może pomóc zapobiec nieautoryzowanemu dostępowi i zapewnić ciągłość działania. Aby uzyskać więcej informacji, zobacz Zarządzanie użytkownikami w usłudze Azure Cloud HSM.

  • Użyj silnych haseł: utwórz unikatowe, silne hasła dla użytkowników modułu HSM. Użyj co najmniej 12 znaków, w tym kombinacji wielkich i małych liter, cyfr i znaków specjalnych.

  • Zabezpieczanie poświadczeń użytkownika modułu HSM: dokładnie chroń poświadczenia użytkownika modułu HSM, ponieważ firma Microsoft nie może ich odzyskać, jeśli zostaną utracone.

  • Zaimplementuj administratorów pomocniczych na potrzeby zapobiegania blokadom: wyznaczyć co najmniej dwóch administratorów, aby zapobiec zablokowaniu modułu HSM w przypadku utraty jednego hasła.

  • Ustanów wielu użytkowników kryptografii (CU) z ograniczonymi uprawnieniami: Utwórz wiele jednostek CU z odrębnymi obowiązkami, aby uniemożliwić każdemu pojedynczemu użytkownikowi pełną kontrolę.

  • Ogranicz możliwość eksportowania kluczy przez jednostki CU: ogranicz jednostki CU przed eksportowaniem materiału klucza, ustawiając odpowiednie atrybuty użytkownika.

  • Ogranicz kontrolę CO nad jednostkami CU: użyj disableUserAccess polecenia, aby uniemożliwić użytkownikom CO zarządzanie określonymi jednostkami CU. Użytkownicy CO mogą jednak pominąć to polecenie przy pomocy starszych kopii zapasowych.

Zarządzanie kluczami

Efektywne zarządzanie kluczami ma kluczowe znaczenie dla optymalizacji wydajności, zabezpieczeń i wydajności modułu HSM w chmurze platformy Azure. Właściwa obsługa limitów magazynu kluczy, zabezpieczenia opakowujące klucze, atrybuty kluczy i strategie buforowania mogą poprawić ochronę i wydajność. Aby uzyskać więcej informacji, zobacz Zarządzanie kluczami w module HSM w chmurze platformy Azure.

  • Implementowanie rotacji kluczy: regularnie wymieniaj klucze, aby zastąpić starsze i zwolnić magazyn przy zachowaniu zabezpieczeń.

  • Użyj hierarchii kluczy: przechowywanie mniejszej liczby kluczy w module HSM przy użyciu kluczy głównych do szyfrowania innych kluczy.

  • Udostępnianie i ponowne używanie kluczy, jeśli jest to możliwe: zmniejsz wymagania dotyczące przechowywania przez udostępnianie lub ponowne używanie kluczy w wielu sesjach, jeśli jest to stosowne.

  • Bezpieczne usuwanie nieużywanych kluczy: Usuń klucze, których już nie potrzebujesz, aby zapobiec niepotrzebnemu wykorzystaniu przestrzeni magazynowej.

  • Ustaw klucze jako niemożliwe do wyodrębnienia, jeśli to możliwe: użyj EXTRACTABLE=0 polecenia, aby upewnić się, że klucze nie mogą być eksportowane poza modułu HSM.

  • Włącz zawijanie zaufanych kluczy: użyj polecenia WRAP_WITH_TRUSTED=1 , aby ograniczyć zawijanie kluczy do zaufanych kluczy. Ta akcja uniemożliwia nieautoryzowane eksporty kluczy.

  • Użyj atrybutów klucza, aby ograniczyć uprawnienia: przypisz tylko niezbędne atrybuty podczas generowania kluczy, aby ograniczyć niezamierzone operacje.

Uwierzytelnianie

Uwierzytelnianie jest kluczowym aspektem bezpiecznego uzyskiwania dostępu i działania w ramach modułu HSM w chmurze platformy Azure. Odpowiednie metody uwierzytelniania pomagają chronić poświadczenia i zapewnić bezpieczną kontrolę dostępu. Aby uzyskać więcej informacji, zobacz Authentication in Azure Cloud HSM (Uwierzytelnianie w module HSM w chmurze platformy Azure).

  • Bezpieczne przechowywanie poświadczeń modułu HSM: chroń przechowywane poświadczenia i unikaj uwidaczniania ich, gdy nie są używane. Skonfiguruj środowisko do automatycznego pobierania i ustawiania poświadczeń.

  • Użyj niejawnego logowania do uwierzytelniania rozszerzenia kryptografii Java (JCE): jeśli to możliwe, użyj niejawnego logowania do uwierzytelniania JCE, aby zezwolić na automatyczne zarządzanie poświadczeniami i ponowne uwierzytelnianie.

  • Unikaj udostępniania sesji między wątkami: w przypadku aplikacji wielowątkowych przypisz każdy wątek własną sesję, aby zapobiec konfliktom i problemom z zabezpieczeniami.

  • Zaimplementuj ponawianie prób po stronie klienta: dodaj logikę ponawiania dla operacji HSM w celu obsługi potencjalnych zdarzeń konserwacji lub zamian modułu HSM.

  • Uważnie zarządzaj sesjami klienta modułu HSM: należy pamiętać, że azurecloudhsm_client udostępnia sesje między aplikacjami na tym samym hoście. Właściwe zarządzanie sesjami pozwala uniknąć konfliktów.

Monitorowanie i rejestrowanie

  • Monitorowanie dzienników inspekcji i operacji: zalecamy skonfigurowanie rejestrowania zdarzeń operacji. Rejestrowanie zdarzeń operacji jest niezbędne w przypadku zabezpieczeń modułu HSM. Zapewnia niezmienny rekord dostępu i operacji na potrzeby odpowiedzialności, możliwości śledzenia i zgodności z przepisami. Pomaga wykrywać nieautoryzowany dostęp, badać zdarzenia i identyfikować anomalie, aby zapewnić integralność i poufność operacji kryptograficznych.

    Aby zachować bezpieczeństwo i prywatność, dzienniki wykluczają poufne dane (takie jak identyfikatory kluczy, nazwy kluczy i szczegóły użytkownika). Przechwytują operacje modułu HSM, sygnatury czasowe i metadane, ale nie mogą określić powodzenia ani niepowodzenia. Mogą rejestrować tylko fakt, że operacja została wykonana. To ograniczenie istnieje, ponieważ operacja HSM występuje w wewnętrznym kanale TLS, który nie jest uwidoczniony poza tą granicą.

Ciągłość działania i odzyskiwanie po awarii

  • Implementowanie niezawodnej kopii zapasowej i odzyskiwania po awarii: moduł HSM w chmurze platformy Azure zapewnia wysoką dostępność za pośrednictwem klastrowanych modułów HSM, które synchronizują klucze i zasady podczas automatycznego migrowania partycji podczas awarii. Usługa obsługuje kompleksowe operacje tworzenia i przywracania kopii zapasowych, które zachowują wszystkie klucze, atrybuty i przypisania ról. Kopie zapasowe są zabezpieczone przez klucze pochodne modułu HSM, do których firma Microsoft nie może uzyskać dostępu.

    W przypadku ciągłości działania i odzyskiwania po awarii (BCDR):

    • Użyj tożsamości zarządzanych do uwierzytelniania.
    • Przechowywanie kopii zapasowych w prywatnej usłudze Azure Blob Storage.
    • Zaimplementuj minimalne uprawnienia kontroli dostępu opartej na rolach (RBAC).
    • Wyłącz dostęp do klucza współużytkowanego.

    Uwaga / Notatka

    Moduł HSM w chmurze platformy Azure nie obsługuje przywracania do już aktywowanych modułów HSM.

    Aby uzyskać szczegółowe instrukcje implementacji i dodatkowe opcje odzyskiwania, zobacz Tworzenie kopii zapasowych i przywracanie w module HSM w chmurze platformy Azure. Dodatkowe opcje odzyskiwania obejmują użycie extractMaskedObject do wyodrębniania kluczy jako zaszyfrowanych fragmentów danych, ich bezpieczne przechowywanie oraz importowanie przy użyciu insertMaskedObject zgodnie z potrzebami. Najlepszą praktyką BCDR jest wdrożenie w dwóch regionach dla zapewnienia możliwości przełączenia awaryjnego.