Skip to content

Instantly share code, notes, and snippets.

@ksdev-pl
Last active August 29, 2015 14:01
Show Gist options
  • Save ksdev-pl/6b9f60816a303f56dea1 to your computer and use it in GitHub Desktop.
Save ksdev-pl/6b9f60816a303f56dea1 to your computer and use it in GitHub Desktop.
Identyfikacja, uwierzytelnianie i autoryzacja #metodyka

Identyfikacja (identification)

Podmiot deklaruje swoją tożsamość (identity). Na przykład:

  • w rozmowie telefonicznej z centrum obsługi banku klient deklaruje swoje imię, nazwisko i numer konta (bank jest stroną ufającą);
  • w procesie logowania do serwera użytkownik wpisuje nazwę (login) (serwer jest stroną ufającą);
  • podczas połączenia przeglądarki z serwerem SSL, ten ostatni przedstawia certyfikat X.509 zawierający jego nazwę (przeglądarka jest stroną ufającą).

Uwierzytelnianie (authentication)

Strona ufająca stosuje odpowiednią technikę uwierzytelniania (authentication mechanism) w celu weryfikacji zadeklarowanej wcześniej tożsamości. Na przykład:

  • personel banku prosi o podanie ustawionego wcześniej hasła telefonicznego, daty urodzenia, nazwiska panieńskiego matki; suma poprawnych odpowiedzi daje wysokie prawdopodobieństwo, że dana osoba jest tą, za którą się podaje;
  • serwer prosi użytkownika o wpisanie hasła i weryfikuje jego zgodność z wcześniej ustawioną wartością;
  • przeglądarka weryfikuje podpis cyfrowy złożony pod certyfikatem serwera przez urząd certyfikacji, któremu ufa.

Autoryzacja (authorisation)

Potwierdzenie, czy dany podmiot jest uprawniony do uzyskania dostępu do żądanego zasobu. Na tym etapie autentyczność podmiotu jest już potwierdzona, nie musi on jednak być uprawnionym do uzyskania dostępu w żądanym zakresie. Na przykład:

  • personel banku potwierdza, że użytkownik ma dostęp do swojego rachunku, ale żądanie stanu konta rachunku powiązanego (małżonka, firmy) weryfikuje sprawdzając czy zostało złożone odpowiednie pełnomocnictwo;
  • serwer weryfikuje uprawnienia zalogowanego użytkownika do konkretnego pliku sprawdzając tablicę dostępu w systemie plików;
  • przeglądarka sprawdza zapisane w certyfikacie serwera flagi keyUsage, weryfikując czy został on poświadczony przez uprawniony podmiot.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment