| Termin | Definicja |
|---|---|
| SSO | SSO to mechanizm jednorazowego uwierzytelnienia dającego dostęp do wielu powiązanych usług. SSO jako sposób zarządzania dostępemSSO, czyli Single Sign-On, oznacza rozwiązanie, w którym użytkownik potwierdza swoją tożsamość w jednym punkcie, a następnie może korzystać z kilku powiązanych aplikacji bez ponownego wpisywania hasła przy każdym przejściu. Nie jest to po prostu zapamiętywanie haseł przez przeglądarkę. Mechanizm opiera się na współpracy między usługą, która potwierdza tożsamość, a aplikacjami, które ufają temu potwierdzeniu. Po pomyślnym logowaniu wydawana jest informacja o uwierzytelnieniu, a kolejne systemy rozpoznają użytkownika na podstawie ustalonego protokołu. W praktyce SSO może obejmować pocztę internetową, panel kadrowy, system zgłoszeń, narzędzia do pracy z dokumentami oraz inne aplikacje używane w jednej organizacji. Użytkownik widzi spójny proces logowania, natomiast w tle działają reguły określające, komu i do jakich zasobów wolno uzyskać dostęp. Istotne jest rozróżnienie uwierzytelniania od autoryzacji. Pierwsze potwierdza, kim jest dana osoba, drugie określa zakres jej uprawnień. SSO a hasło, sesja i federacja tożsamościW klasycznym modelu każda aplikacja posiada własny formularz logowania, bazę kont i zasady dotyczące haseł. Przy większej liczbie usług prowadzi to do powielania danych, częstszego resetowania haseł i ryzyka używania tych samych poświadczeń w wielu miejscach. SSO przenosi główną odpowiedzialność za logowanie do wydzielonego dostawcy tożsamości. Aplikacja nie musi samodzielnie obsługiwać całego procesu, lecz otrzymuje potwierdzenie, że dostęp został przyznany właściwej osobie. Warto odróżnić SSO od menedżera haseł. Menedżer haseł przechowuje wiele odrębnych danych logowania i może automatycznie wypełniać formularze. SSO ogranicza liczbę niezależnych logowań, ponieważ poszczególne usługi korzystają z jednego zaufanego procesu uwierzytelnienia. Różnica występuje także między SSO a zwykłą aktywną sesją. Sesja utrzymuje zalogowanie w konkretnej aplikacji, natomiast SSO pozwala przenosić potwierdzenie tożsamości pomiędzy wieloma usługami, jeśli zostały skonfigurowane do współpracy. W środowiskach wykorzystujących federację tożsamości użytkownik może logować się za pomocą konta zarządzanego przez inną jednostkę lub zewnętrznego dostawcę. Zaufanie nie powinno być jednak rozumiane jako bezwarunkowe. Każda aplikacja musi poprawnie sprawdzać podpis, odbiorcę komunikatu, czas ważności oraz zakres informacji przekazanych po zalogowaniu. Błąd w konfiguracji może spowodować odrzucanie prawidłowych logowań albo przyznanie dostępu osobie, która nie powinna go otrzymać. SSO w protokołach i przepływach logowaniaSSO nie jest jednym konkretnym programem ani pojedynczym standardem. To sposób organizacji dostępu realizowany za pomocą różnych protokołów. W starszych lub bardziej rozbudowanych wdrożeniach spotyka się SAML, w którym aplikacja i dostawca tożsamości wymieniają podpisane komunikaty opisujące uwierzytelnienie. W nowocześniejszych aplikacjach internetowych i mobilnych często używa się OpenID Connect, zbudowanego na mechanizmach OAuth 2.0. OpenID Connect przekazuje aplikacji informację o tożsamości użytkownika, a OAuth 2.0 służy przede wszystkim do kontrolowanego przyznawania dostępu do zasobów. Typowy przepływ rozpoczyna się wtedy, gdy użytkownik otwiera aplikację bez aktywnej sesji. Aplikacja kieruje go do dostawcy tożsamości, gdzie następuje logowanie, a w razie potrzeby także dodatkowe potwierdzenie, na przykład kodem lub kluczem bezpieczeństwa. Po udanym procesie użytkownik wraca do aplikacji z komunikatem zawierającym dane potrzebne do utworzenia sesji. Aplikacja sprawdza poprawność komunikatu, zapisuje własną sesję i udostępnia funkcje wynikające z nadanych uprawnień. Ważną rolę pełnią tokeny. Token identyfikacyjny opisuje uwierzytelnioną tożsamość, natomiast token dostępu może pozwalać na wykonanie określonych operacji w innym zasobie. Token nie powinien być traktowany jak zwykły tekst przekazywany bez kontroli. Znaczenie mają jego odbiorca, wystawca, zakres, czas ważności i sposób przechowywania. Zbyt szeroki zakres lub zbyt długi czas życia zwiększa skutki ewentualnego przejęcia. SSO i typowe problemy użytkownikaJednym z częstych problemów jest pętla logowania. Aplikacja odsyła do dostawcy tożsamości, użytkownik poprawnie się uwierzytelnia, po czym ponownie trafia na ekran logowania. Przyczyną może być niezgodna konfiguracja adresu powrotnego, błędne ciasteczka sesyjne, różnica między nazwą hosta używaną przez użytkownika a nazwą wpisaną w konfiguracji albo nieprawidłowo ustawiony czas na urządzeniu. Pomocne bywa sprawdzenie logowania w prywatnym oknie, wyczyszczenie danych witryny oraz porównanie komunikatów diagnostycznych po obu stronach. Inny przypadek to komunikat o braku uprawnień mimo poprawnego logowania. Oznacza to zwykle, że uwierzytelnienie zakończyło się pomyślnie, ale aplikacja nie rozpoznała wymaganej roli lub grupy. Warto wtedy sprawdzić, czy konto otrzymało właściwe atrybuty, czy nazwa grupy jest zgodna z regułą mapowania oraz czy zmiana uprawnień została już uwzględniona w nowej sesji. Samo ponowne wpisanie hasła nie rozwiązuje problemu autoryzacji. Utrata dostępu do dostawcy tożsamości może jednocześnie uniemożliwić korzystanie z wielu usług. Dlatego ważne są procedury odzyskiwania konta, dodatkowa metoda potwierdzania oraz bezpieczne konto administracyjne. Należy także pamiętać o wylogowaniu z urządzeń współdzielonych. Zamknięcie jednej karty przeglądarki nie zawsze kończy sesję u dostawcy tożsamości, więc kolejna osoba korzystająca z tego samego urządzenia może odziedziczyć aktywne uwierzytelnienie. SSO i praktyczne wskazówki konfiguracjiPrzed wdrożeniem warto przygotować listę aplikacji, użytkowników, wymaganych ról oraz danych, które powinny być przekazywane podczas logowania. Należy ustalić, która usługa jest źródłem prawdy o koncie, jak przebiega tworzenie i usuwanie użytkowników oraz kto odpowiada za zmianę uprawnień. Szczególnej uwagi wymaga zakończenie dostępu po odejściu użytkownika. Jeżeli konto zostanie zablokowane tylko w jednym miejscu, aktywne sesje w innych usługach mogą nadal działać. Bezpieczeństwo SSO wzmacnia wieloskładnikowe uwierzytelnianie, ograniczenie czasu sesji, kontrola urządzeń oraz rejestrowanie zdarzeń. Warto ustalić, które działania wymagają ponownego potwierdzenia tożsamości, na przykład zmiana danych konta, dostęp do poufnych dokumentów lub nadanie uprawnień. Przydatne są także alerty dotyczące nietypowych logowań, nowych urządzeń i wielokrotnych nieudanych prób. Podczas diagnozowania problemu nie powinno się od razu zmieniać wielu ustawień. Lepszy efekt daje sprawdzenie kolejno połączenia z usługą, daty i czasu urządzenia, ważności sesji, komunikatu zwrotnego oraz mapowania roli. Warto zanotować dokładny moment wystąpienia błędu i nazwę aplikacji, ponieważ SSO jest procesem zależnym od kilku elementów. Aktualizacje przeglądarki, rozszerzenia blokujące skrypty, ustawienia prywatności i oprogramowanie ochronne również mogą wpływać na przekierowania oraz ciasteczka. SSO i moment zgłoszenia do serwisuDo serwisu warto zgłosić się wtedy, gdy problem z logowaniem powtarza się na kilku urządzeniach, dotyczy wielu użytkowników albo pojawił się po zmianie podzespołów, systemu, przeglądarki lub ustawień sieciowych. Wcześniej można sprawdzić, czy inne strony działają prawidłowo, czy błąd występuje w różnych przeglądarkach i czy konto nie zostało zablokowane. Przydatne będzie przekazanie treści komunikatu, nazwy aplikacji oraz informacji, czy problem dotyczy jednego konta, czy większej grupy. Warszawskie Pogotowie Komputerowe 24/7 może pomóc w uporządkowaniu diagnostyki komputera używanego do pracy z usługami SSO, sprawdzeniu ustawień przeglądarki, połączenia sieciowego i lokalnego środowiska użytkownika. Sam mechanizm SSO działa po stronie wielu współpracujących usług, dlatego rzetelna analiza powinna oddzielić usterkę urządzenia od błędu konfiguracji konta lub dostawcy tożsamości. Takie rozróżnienie ułatwia przekazanie sprawy właściwej osobie i ogranicza ryzyko przypadkowej zmiany ustawień dostępu. |