| Termin | Definicja |
|---|---|
| brak synchronizacji statusów użytkowników | Brak synchronizacji statusów użytkowników to usterka, w której stan konta różni się pomiędzy połączonymi systemami. Na czym polega rozbieżność statusu kontaBrak synchronizacji statusów użytkowników oznacza, że co najmniej dwa połączone systemy przechowują różne informacje o tym samym koncie. W jednym miejscu użytkownik może być oznaczony jako aktywny, a w drugim jako zablokowany, usunięty, zawieszony albo nieaktywny. Status nie musi dotyczyć wyłącznie możliwości logowania. W zależności od aplikacji może także określać dostęp do funkcji, członkostwo w grupie, ważność sesji lub możliwość korzystania z określonego zasobu. Synchronizacja zwykle przebiega przez usługę pośredniczącą, interfejs API, mechanizm wymiany komunikatów albo okresowy proces pobierający zmiany. System źródłowy zapisuje zmianę, a system docelowy powinien ją odebrać, poprawnie zinterpretować i utrwalić. Problem pojawia się wtedy, gdy zdarzenie nie zostanie wysłane, zostanie odrzucone, przetworzone częściowo albo zapisze się pod innym identyfikatorem użytkownika. Samo odświeżenie strony nie naprawia takiej niespójności, jeżeli dane pochodzą z błędnego lub nieaktualnego źródła. Identyfikatory, mapowanie i kolejność zmianJedną z częstych przyczyn jest niezgodne mapowanie kont. Dwa systemy mogą rozpoznawać użytkownika po różnych wartościach, na przykład po adresie e-mail, nazwie logowania, identyfikatorze wewnętrznym albo identyfikatorze nadanym przez dostawcę tożsamości. Jeżeli aplikacja użyje nazwy użytkownika zamiast trwałego identyfikatora, zmiana adresu lub wielkości liter może spowodować utworzenie drugiego rekordu zamiast aktualizacji istniejącego. W efekcie status zostaje zmieniony, ale nie na tym koncie, które jest używane podczas logowania. Znaczenie ma także kolejność zdarzeń. Najpierw może zostać wysłana informacja o aktywowaniu konta, a chwilę później starszy komunikat o jego blokadzie. Jeżeli system docelowy nie sprawdza numeru wersji, znacznika czasu lub kolejności przetwarzania, zapisze ostatnią odebraną wiadomość, nawet gdy zawiera ona wcześniejszy stan. Podobny skutek występuje po ponownym dostarczeniu tego samego komunikatu, gdy operacja nie jest idempotentna, czyli nie daje tego samego wyniku przy wielokrotnym wykonaniu. Weryfikacja powinna obejmować identyfikator konta, poprzedni i nowy status, czas zmiany, źródło zdarzenia oraz wynik zapisu w systemie docelowym. Warto porównać pojedynczy przypadek w obu systemach, a następnie sprawdzić, czy różnica dotyczy większej grupy kont. Masowa rozbieżność wskazuje raczej na problem procesu synchronizacji, konfiguracji lub połączenia. Pojedynczy przypadek częściej wynika z błędnego mapowania, ręcznej zmiany albo uszkodzonego rekordu. Wpływ opóźnień, błędów połączenia i pamięci podręcznejStatus może być poprawnie zapisany w systemie źródłowym, ale przez pewien czas pozostawać nieaktualny w systemie docelowym. Tak dzieje się przy synchronizacji okresowej, kolejce oczekujących zdarzeń lub czasowym braku połączenia. Opóźnienie należy odróżnić od trwałego błędu: po udanym przetworzeniu komunikatu stan powinien wyrównać się bez ręcznej ingerencji. Jeżeli kolejka stale rośnie, komunikaty są ponawiane albo trafiają do kolejki błędów, problem leży w procesie odbioru lub walidacji danych. Źródłem pozornej niespójności może być również pamięć podręczna. Aplikacja kliencka, przeglądarka lub warstwa pośrednia może wyświetlać wcześniej pobrany status, mimo że serwer przechowuje już nową wartość. Diagnostyka powinna dlatego obejmować ponowne pobranie danych, wylogowanie i zalogowanie, sprawdzenie działania w innej sesji oraz porównanie odpowiedzi serwera z informacją widoczną w interfejsie. Nie należy jednak usuwać pamięci podręcznej bez sprawdzenia logów, ponieważ może to zatrzeć objaw potrzebny do ustalenia przyczyny. Przy analizie technicznej należy sprawdzić kody odpowiedzi połączeń, błędy uwierzytelnienia, przekroczenia czasu oczekiwania, odrzucenia danych przez walidację oraz różnice czasu między urządzeniami. Nieprawidłowy zegar systemowy może utrudnić ocenę kolejności zdarzeń, szczególnie gdy mechanizm synchronizacji odrzuca wiadomości starsze od ostatnio zapisanej wersji. Istotne jest także ustalenie, czy zmiana statusu została wykonana ręcznie, automatycznie czy przez regułę zależną od innego atrybutu konta. Postępowanie przy przywracaniu spójnego stanuBezpieczne usunięcie problemu zaczyna się od ustalenia systemu, który w danym procesie jest źródłem prawidłowego statusu. Następnie trzeba sprawdzić, czy konto w systemie docelowym ma ten sam identyfikator, czy istnieje oczekujące zdarzenie oraz czy ostatnia próba synchronizacji zakończyła się powodzeniem. Dopiero po zebraniu tych informacji można ponowić synchronizację lub wykonać kontrolowaną korektę rekordu. Ręczna zmiana statusu bez ustalenia przyczyny może zostać nadpisana przy następnym przebiegu procesu. Jeżeli niespójność występuje na laptopie lub komputerze PC, warto rozpocząć od sprawdzenia połączenia sieciowego, poprawności daty i godziny, działania używanej aplikacji oraz aktualności jej lokalnych danych. Należy zanotować dokładny komunikat, moment wystąpienia problemu i status widoczny w każdym z połączonych systemów. Przydatne są także informacje o tym, czy problem dotyczy jednego konta, wszystkich użytkowników, jednej aplikacji czy wielu programów korzystających z tego samego logowania. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i ich podzespołów, w tym diagnozowaniem problemów z systemem, aplikacjami oraz komunikacją między programami. W przypadku braku synchronizacji statusów analiza powinna rozdzielać usterkę samego komputera od błędu konfiguracji lub niedostępności zewnętrznego systemu. Taki podział pozwala ustalić, czy rozwiązaniem jest naprawa oprogramowania na urządzeniu, przywrócenie prawidłowej konfiguracji, ponowne uwierzytelnienie, czy przekazanie sprawy administratorowi systemu odpowiedzialnemu za synchronizację. |