Posts Tagged ‘autentykacja’

h1

Proces logowania jawny czy w tle?

Luty 18, 2017

Czy musisz logować się do każdej aplikacji, z której korzystasz? Ile razy dziennie musisz wpisać swój login/hasło? Ile razy się wylogowujesz? Czy zapamiętujesz swoje dane logowania w przeglądarce? Czy często zmieniasz swoje hasło? Czy masz wiele loginów? Pytań takich można zadać jeszcze wiele. Często jako użytkownicy nie zastanawiamy się wybierając określone aplikacje, co się zadziało, czy aplikacja nie powinna nas spytać hasło. Przyznaję, że jest to wygodne, gdy można się logować raz. Jednakże o co chodzi?

Mamy 2 możliwości podczas korzystania aplikacji – pierwsza logujemy się z każdym razem. Druga możliwość to logujemy się raz i z części aplikacji korzystamy bez dodatkowego logowania. Te dwie możliwości przedstawia poniższy diagram – pierwsza to pełny proces, a druga pomija krok zaznaczony na czerwono.

logowanie450px

Pierwsza część opiera się na tzw. jawnym logowaniu, czyli każdorazowym podaniu swoich danych identyfikacyjnych (ang. credentials). Pozwala to na: po pierwsze rozpoznanie użytkownika (czyli autentykację) a następnie udostępnienie funkcjonalności zgodnie z uprawnieniami (czyli autoryzacja). Logujemy się do poczty elektronicznej i widzimy dane swojej skrzynki pocztowej. Logujemy się do sieci społecznościowej i widzimy swój profil. Podobnie za bankowością elektroniczną czy sklepem internetowym.

Druga część opiera się na tzw. ukrytym logowaniu, czyli podajemy swoje dane identyfikacyjne raz (przeważnie przy logowaniu do stacji roboczej), a wszystkie pozostałe aplikacje, jednego dostawcy lub odpowiednio skonfigurowane, otrzymują te dane identyfikacyjne i na tej podstawie nas rozpoznają. Często takie zachowanie można zaobserwować podczas wykorzystania aplikacji w pracy.

Podstawą takiego funkcjonowania jest tzw. SSO, po angielsku single sign – on, czyli dosłownie jedno logowanie. Dane identyfikacyjne są przekazywane a autentykacja i autoryzacja jest wykonywana całkowicie w tle. Efekt działania SSO można sobie łatwo wyobrazić korzystając z telefonu komórkowego z różnymi aplikacjami opartymi o jedno konto lub też popularnego konta pocztowego i powiązanym z nim serwisów. Podstawą działania SSO jest istnienie odpowiednich modułów lub centralnych rejestrów z danymi identyfikacyjnymi użytkowników, które uczestniczą w przeprowadzaniu tego procesu.

Reklamy
h1

Autentykacja lub/i autoryzacja – razem czy osobno?

Lipiec 5, 2015

Wiele aplikacji dostępnych przez przeglądarkę lub jako osobny program wymaga przejścia ekranu logowania się. Należy podać login/identyfikator/e-mail oraz hasło. System w odpowiedzi sprawdza, czy dane są prawidłowe. W przypadku błędu weryfikacji, nie pozwala na przejście dalej. Jeżeli są poprawne, udostępnia aplikację. Nie wszystkie jednak opcje mogą być dostępne dla danego użytkownika – choćby w aplikacji próbnej lub z rozbudowaną hierarchią użytkowników.

Pierwszy etap to tzw. autentykacja (ang. authentication) lub bardziej po polsku uwierzytelnianie użytkownika. Jest to czynność realizowana na bazie komunikacji użytkownika i systemu, mająca sprawdzić, czy użytkownik (osoba logująca się) jest tym, za kogo się podaje. Weryfikacja polega na sprawdzeniu jest autentyczności. Odbywa się to przy założeniu, że tylko określony użytkownik zna/posiada parę login/hasło lub dodatkowe elementy używane przy identyfikacji (odpowiedzi na zdefiniowane pytania, tokeny). Czasami ta czynność może odbywać się w sposób niezauważalny dla użytkownika (w zależności od zastosowanych mechanizmów). Jest to pierwszy krok na poniższym diagramie.

autentyk450

Drugi etap to autoryzacja, czyli sprawdzenie, czy ropoznany użytkownik ma uprawnienia do dostępu/wykorzystania lub innej czynności wykonywanej na danym obiekcie. O autoryzacji pisałem w poprzednim wpisie (czyli o umożliwieniu instalacji na stacji roboczej). Jest to trzeci krok na powyższym diagramie.

Trudno mówić o poprawnym przeprowadzeniu procesu autoryzacji bez informacji o użytkowniku, w “imieniu” którego ten proces ma zostać przeprowadzony. Można stwierdzić, że wynik procesu uwierzytelniania jest wejściem dla procesu autoryzacji. Z tego wniosek, że te procesy przeważnie występują razem, o ile aplikacja, system informatyczny lub dane takiej kontroli wymagają. W pewnych sytuacjach, autoryzacja może nastąpić jedynie o dane identyfikacyjne skąd nastąpiło żądanie – np. określony numer MAC komputera przy dostępie do sieci bezprzewodowej. Choć w sumie weryfikacja numerów MAC jest pewnym rodzajem autentykacji (podobnie jak para login/hasło lub linie papilarne zapisane w bazie).

Zainteresowanych szczegółami różnych sposobów autoryzacji oraz uwierzytelniania odsyłam na przykład do książki „Bezpieczeństwo danych w systemach informatycznych„.