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.
W tym artykule wyjaśniono, jak identyfikować i rozwiązywać problemy z synchronizacją, gdy brakuje użytkowników lub kluczy z co najmniej jednego węzła w klastrze modułu HSM w chmurze Azure.
Przegląd
W niektórych przypadkach użytkownicy lub klucze mogą nie być replikowane do wszystkich węzłów w klastrze modułu HSM w chmurze Azure. Może to wystąpić podczas zdarzeń związanych z usługą, takich jak samonaprawa lub aktualizacje, albo gdy tworzenie zakończy się niepowodzeniem w co najmniej jednym węźle. Jeśli występują sporadyczne błędy uwierzytelniania lub błędy operacji kryptograficznych, mogą istnieć użytkownicy lub klucze, które muszą zostać zsynchronizowane.
Ważna
Użytkownik lub klucz, który istnieje tylko w jednym węźle, jest zagrożony trwałą, nieodwracalną utratą w przypadku awarii tego węzła. Jeśli zidentyfikujesz brakujących użytkowników lub kluczy, zsynchronizuj je natychmiast i upewnij się, że masz bieżące kopie zapasowe.
Wymagania wstępne
- Access do maszyny wirtualnej z zainstalowanym zestawem SDK modułu HSM w chmurze Azure
- Narzędzie
azcloudhsm_mgmt_util - Poświadczenia oficera kryptografii (CO) dla wdrożenia modułu HSM w chmurze Azure
Synchronizacja użytkowników
Wszyscy użytkownicy Azure Cloud HSM są w pełni zarządzani przez klienta. Usługa nie wykonuje synchronizacji użytkowników w tle, jeśli tworzenie użytkownika zakończy się niepowodzeniem. Jeśli tworzenie użytkownika zakończy się niepowodzeniem w co najmniej jednym węźle, musisz ręcznie zsynchronizować użytkownika z brakującymi węzłami.
Ważna
Upewnij się, że wszyscy użytkownicy są spójnie utworzeni i obecni w każdym węźle w klastrze. Jeśli brakuje użytkownika lub tworzenie nie powiedzie się w dowolnym węźle, musisz wykonać wymagane polecenia i wykonać kroki weryfikacji, aby przywrócić spójność.
Identyfikowanie brakujących użytkowników
Uruchom narzędzie do zarządzania:
./azcloudhsm_mgmt_util ./azcloudhsm_resource.cfglistUsersUruchom polecenie , aby wyświetlić identyfikator użytkownika, typ użytkownika i nazwę użytkownika w każdym węźle (serwer 0, 1, 2):listUsersObserwuj liczbę użytkowników znalezionych dla każdego węzła i odpowiadających im nazw użytkowników. Porównaj listy na wszystkich trzech serwerach, aby zidentyfikować brakujących użytkowników.
Synchronizowanie brakujących użytkowników
Zaloguj się jako oficer kryptografii (CO):
loginHSM CO admin <admin-password>Sprawdź, czy pomyślnie zalogowaliśmy się do wszystkich trzech węzłów:
loginHSM success on server 0 loginHSM success on server 1 loginHSM success on server 2Uwaga / Notatka
Jeśli logowanie nie powiedzie się w dowolnym węźle, operacja synchronizacji może zakończyć się niepowodzeniem. Przed kontynuowaniem upewnij się, że logowanie do wszystkich węzłów zakończyło się pomyślnie.
Zidentyfikuj węzeł źródłowy, który ma użytkownika. W tym przykładzie serwer 0 ma użytkownika, który nie jest dostępny na serwerze 1 i serwerze 2:
server 0syncUserUruchom polecenie dla każdego serwera, na którym brakuje użytkownika. Zastąp<user-id>rzeczywistym identyfikatorem użytkownika.syncUser <user-id> 1 syncUser <user-id> 2Uwaga / Notatka
Jeśli
syncUserjest wykonywane względem węzła, w którym użytkownik już istnieje, zostanie wyświetlony komunikat o błędzie "użytkownik już utworzony, nie można wstawić obiektu". Jeśli użytkownik nie istnieje, operacja zakończy się pomyślnie.
Weryfikowanie synchronizacji użytkowników
Zamknij bieżący kontekst serwera:
exitUruchom polecenie
listUsers, aby potwierdzić, że wszystkie identyfikatory użytkowników, typy użytkowników i nazwy użytkownika są teraz równe i dostępne w każdym węźle (serwer 0, 1, 2):listUsers
Synchronizacja kluczy
Podczas tworzenia kluczy należy upewnić się, że klucze są obecne we wszystkich węzłach. Mimo że moduł HSM Azure w chmurze obsługuje operacje synchronizacji i przywracania kluczy po stronie usługi, przed użyciem należy sprawdzić, czy klucze są dostępne w dowolnych brakujących węzłach.
Ważna
Jeśli brakuje klucza lub tworzenie nie powiedzie się w dowolnym węźle, musisz wykonać odpowiednie polecenia i wykonać kroki weryfikacji, aby przywrócić spójność. Klucz, który istnieje tylko w jednym węźle, jest zagrożony trwałą utratą w przypadku awarii tego węzła.
Identyfikowanie brakujących kluczy
Uruchom narzędzie do zarządzania:
./azcloudhsm_mgmt_util ./azcloudhsm_resource.cfgZaloguj się jako oficer kryptografii (CO):
loginHSM CO admin <admin-password>Sprawdź, czy pomyślnie zalogowaliśmy się do wszystkich trzech węzłów:
loginHSM success on server 0 loginHSM success on server 1 loginHSM success on server 2Uruchom polecenie
findAllKeysaby wyświetlić liczbę kluczy i identyfikatorów dojścia klucza dla każdego węzła:findAllKeys 0 0Obserwuj liczbę kluczy znalezionych dla każdego węzła i odpowiednie identyfikatory uchwytów kluczy. Porównaj wyniki na wszystkich trzech serwerach, aby zidentyfikować brakujące klucze.
Synchronizowanie brakujących kluczy
Zidentyfikuj węzeł źródłowy, który ma klucz. W tym przykładzie serwer 0 ma klucz dojścia, który nie jest dostępny na serwerze 1 i serwerze 2:
server 0syncKeyUruchom polecenie dla każdego serwera, na którym brakuje klucza. Zastąp<key-handle>rzeczywistym identyfikatorem uchwytu klucza.syncKey <key-handle> 1 syncKey <key-handle> 2Aby na przykład zsynchronizować uchwyt klucza 262150 z serwerami 1 i 2:
syncKey 262150 1 syncKey 262150 2
Weryfikowanie synchronizacji kluczy
Zamknij bieżący kontekst serwera:
exitUruchom polecenie
findAllKeys 0 0, aby potwierdzić, że wszystkie uchwyty kluczy i liczba znalezionych kluczy są teraz równe i dostępne w każdym węźle (serwer 0, 1, 2):findAllKeys 0 0
Najlepsze rozwiązania
Aby zapobiec problemom z synchronizacją i potencjalnym utracie danych:
- Sprawdź po utworzeniu: po utworzeniu dowolnego użytkownika lub klucza natychmiast sprawdź, czy istnieje on na wszystkich trzech węzłach.
- Zachowaj regularne kopie zapasowe: użyj funkcji tworzenia i przywracania kopii zapasowej , aby chronić przed awariami węzłów.
-
Monitoruj rozbieżności: okresowo uruchamiaj
listUsersifindAllKeys 0 0sprawdzaj niespójności między węzłami. - Szybkie działanie w przypadku awarii: jeśli zauważysz błąd tworzenia użytkownika lub klucza, zsynchronizuj go z brakującymi węzłami przed wystąpieniem awarii węzła.