AAA - uwierzytelnianie, autoryzacja i kontrola dostępu (cz. 1)

W systemie AAA z tożsamością claims-based podmiot zabezpieczeń może mieć wiele różnych tożsamości, które wyrażają jedynie wymagania niezbędne do przeprowadzenia transakcji między nim a dostawcą usługi. Kiedy dokonuje się np. transakcji zakupu, to wystarczy zweryfikować, czy kupujący ma odpowiednie fundusze w banku lub otwarty kredyt. Jeżeli nazwa nie jest wymagana, tożsamość claims-based może być nawet anonimowa.

Podmiot zabezpieczeń może pozostać anonimowy dla usługodawcy, chociaż jednocześnie udowadnia, że jest osobą z legalną i realną tożsamością. Przy takiej pseudoanonimowości, zaufana strona trzecia (dostawca tożsamości) potwierdza tożsamość podmiotu i dowolne inne atrybuty, które chce on ujawnić.

Wracając do zakupu alkoholu: zakup z pseudoanonimowym identyfikatorem sprowadza się do tego, że zaufany dostawca tożsamości potwierdza tylko prawo do zakupu alkoholu i nie ujawnia żadnych innych informacji.

Protokoły uwierzytelniania

Uwierzytelnianie wymaga, aby tajne informacje, znane dostawcy tożsamości i jej użytkownikowi, były przechowywane w bazie danych do przyszłej weryfikacji. Gdy podmiot zabezpieczeń tworzy tożsamość oraz jej weryfikator (np. hasło), obie te pozycje muszą być bezpiecznie przechowywane. Baza danych poświadczeń tożsamości musi być zabezpieczona mocnymi środkami fizycznymi i logicznymi, chroniącymi przed nieautoryzowanym dostępem.

Sposób działania typowego systemu wezwanie-odzew

1. W celu uwierzytelnienia, system komputerowy podmiotu zabezpieczeń kontaktuje się z systemem kontroli uwierzytelniania, przekazując zazwyczaj identyfikator użytkownika.

2. System uwierzytelniania odpowiada, wysyłając do podmiotu zabezpieczeń losowo wygenerowany ciąg cyfrowy, określany jako wezwanie.

3. Podmiot zabezpieczeń używa swojego weryfikatora (np. hasła) do matematycznego przekształcenia tego losowego ciągu, używając z góry ustalony algorytm, i wynik wysyła zwrotnie jako odzew do dostawcy uwierzytelniania.

4. Dostawca uwierzytelniania pobiera przechowywane poświadczenie podmiotu zabezpieczeń i stosuje ten sam algorytm matematyczny.

5. Następnie porównuje otrzymany wynik z przesłanym przez podmiot zabezpieczeń.

6. Jeżeli wyniki się zgadzają, to dostawca uwierzytelniania uważa podmiot zabezpieczeń za wiarygodny, ponieważ tylko jednostka znająca poprawny weryfikator mogła utworzyć identyczną odpowiedź.

Całą komunikację między podmiotem zabezpieczeń a bazą danych poświadczeń obsługują uprzywilejowane procesy systemowe. Pozwalają one podmiotowi zabezpieczeń na uprawnione współdziałanie z bazą danych uwierzytelniania i są określane jako protokoły uwierzytelniania. Aby zapewnić mocne zabezpieczenie, system uwierzytelniania powinien chronić swoją bazę danych poświadczeń i mieć bezpieczny, niezawodny protokół uwierzytelniania. Silny protokół uwierzytelniania powinien być odporny na narażenie poświadczeń - nawet jeśli strumień danych uwierzytelniania zostanie przechwycony i odczytany.

W większości współczesnych systemów operacyjnych baza danych poświadczeń nie jest dostępna dla normalnego użytkownika końcowego. Zazwyczaj tylko najwyższy poziom administrowania systemem zapewnia bezpośredni dostęp do tej bazy.

W dobrym systemie uwierzytelniania poświadczenia uwierzytelniania (weryfikatory) nie są przechowywane w jawnej postaci, lecz są tak przekształcone, aby nie mogły zostać bezpośrednio użyte. W większości systemów uwierzytelniania przechowuje się je po przekształceniu kryptograficznym algorytmem haszującym. Kiedy podmiot zabezpieczeń dostarcza dowodu na własność tożsamości (np. hasło), weryfikator ten jest zamieniany w postać haszowaną i zapamiętywany.


TOP 200