tom000 - Personal Website - Strona główna
decor1 Serwer HTTP decor2

Uwierzytelnianie

    Serwer HTTP warto wzbogacić również o możliwość zweryfikowania tożsamości osoby ubiegającej się o dane zasoby serwera. Mechanizmy uwierzytelnienia dla protokołu HTTP zostały opisane w osobnym dokumencie – RFC-2617. Zostały tam opisane 2 mechanizmy: uwierzytelnianie podstawowe (Basic access authentication), oraz uwierzytelnianie szyfrowane (Digest access authentication). Ze względu na to, że serwer decyduje jakiego uwierzytelniania klient ma użyć, wystarczy zaimplementować jeden z nich, aby wprowadzić taką funkcjonalność. W tym serwerze zostanie zaimplementowany mechanizm prostszy – uwierzytelnianie podstawowe [24].

    Sam proces uwierzytelnienia przebiega następująco:

  1. Klient wysyła standardowe zapytanie o zasób.

  2. Serwer sprawdza dostępność zasobu i wykrywa, że wymaga on uwierzytelnienia.

  3. Serwer wysyła w odpowiedzi do klienta status 401 Unauthorized o wymaganej autoryzacji, podając w nagłówku „WWW-Authenticate” informację o sposobie uwierzytelnienia – wartość „Basic

  4. Klient ponawia wcześniejsze zapytanie dodając do nagłówka „Authorization” informacje o uwierzytelnieniu: „Basic”, wraz z danymi „identyfikator:hasło” zakodowanymi jako Base64.

  5. Serwer ponownie sprawdza dostępność i wykrywa, że wymaga on uwierzytelnienia.

  6. Serwer pobiera informacje o loginie i haśle z zapytania klienta i porównuje z wewnętrznymi ustawieniami. W przypadku poprawności zwraca w odpowiedzi oczekiwane dane. Jeżeli podane dane były nieprawidłowe wysyła ponownie w odpowiedzi status 401 Unauthorized z nagłówkiem „WWW-Authenticate”.

    Przeglądarki po poprawnym uwierzytelnieniu przechowują informacje o podanym identyfikatorze i haśle, dołączając je automatycznie do kolejnych zapytań do serwera.

← Status 100-continue Serwer HTTP Negocjacja treści →
Copyleft (C) tom000.info 2004-2012. Some rights reserved.