AUTHORIZATION CENTER







W modelu autoryzacji opracowanym dla Laboratorium Wirtualnego wykorzystano system Serwera Autentykacji, opracowanego przez Wrocławskie Centrum Superkomputerowo Sieciowe, wykorzystującego kryptograficzne metody uwierzytelniania w oparciu o mechanizmy infrastruktury klucza publicznego (PKI).
Głównym założeniem tego modułu jest zapewnienie uwierzytelniania użytkowników. Ponadto moduł ten służy do: przechowywania paczek w standardzie PKCS12 (zawierających klucz prywatny wraz z certyfikatem użytkownika oraz certyfikatem centrum autoryzacji), generowania na podstawie tych paczek certyfikatów proxy służących do autentykacji poszczególnych operacji realizowanych przez użytkownika, weryfikacji wystawionego proxy oraz generowania proxy niższego rzędu.
Wystawione proxy może zostać użyte (weryfikowane) w dowolnym momencie - odpowiedź jest binarna (tylko dwie możliwe odpowiedzi: ważne lub nieważne).

Przykład użycia modułu autentykacji:
Użytkownik zostaje zidentyfikowany w systemie poprzez podanie unikatowego identyfikatora userId, hasła do odpowiadającego mu pakietu kryptograficznego PKCS#12, oraz parametru określającego maksymalny czas ważności certyfikatu. Podane dane są weryfikowane pod względem kryptograficznym z danymi uwierzytelniającymi, znajdującymi się w bazie katalogowej.
Na podstawie tych danych generowany jest certyfikat proxy, służący do czasowego uwierzytelnienia użytkownika w systemie. Certyfikat ten jest zwracany do użytkownika (jego aplikacji klienckiej).
Od tej chwili wszystkie dane przesyłanie w systemie są uwierzytelnianie za pomocą tego proxy (do czasu jego wygaśnięcia). Jeśli jest taka potrzeba to proxy to może służyć jako podstawa do generowania proxy niższego rzędu (potrzebnego np. w wyodrębnionym fragmencie przetwarzania).


Schemat komunikacji z systemem
Schemat komunikacji z systemem.



Identyfikacja użytkownika:
W celu zapewnienia niepowtarzalności identyfikatorów użytkownika, użyte może zostać w tym celu pole "Subject Key Identifier" (SKI) - generowane w momencie tworzenia certyfikatu danego użytkownika. Dodatkowo została wprowadzona możliwość używania jako identyfikatora pola DN certyfikatu.

Przykładowe wartości identyfikatorów:

SKI: "ED:CA:1C:EB:41:77:43:1E:D3:5E:90:2C:D2:C4:A4:F9:2A:64:E1:AB"

DN: "/C=PL/O=GRID/O=PSNC/CN=Jan Kowalski"

Ze względu na kompatybilność z pozostałymi modułami Laboratorium Wirtualnego jako interfejs zewnętrzny zdecydowano się na użycie technologii Web Services. Wewnętrzna baza katalogowa użytkowników utworzona została w oparciu o standard LDAP.




Schemat architektury modułu

Schemat architektury modułu.



Zaprezentowany powyżej schemat ma zastosowanie na kilku etapach ścieżki zlecania eksperymentu w systemie Laboratorium Wirtualnego.
Użytkownik zlecając scenariusz do systemu LW generuje również proxy (Proxy1 - zob. rysunek poniżej), które jest weryfikowane przez Moduł Zarządzania Scenariusza (Scenario Management Module - SMM). Proxy to musi być ważne w systemie przez cały czas obsługi danego scenariusza pomiarowego. Moduł SMM, kierując poszczególne zadania do wykonania żąda od Modułu Autentykacji wygenerowania dla nich osobnych proxy (Proxy2). Są one generowane jako podrzędne (niższego rzędu) w stosunku do Proxy1. Umożliwia to weryfikację autentyczności zadań. Czas ważności takiego proxy ustala się na maksymalny czas trwania takiego eksperymentu, wyrażony przez zlecającego użytkownika jako deadline zakończenia. W przypadku przerwania lub odrzucenia danego zadania na którymkolwiek etapie, odpowiadające mu proxy jest również usuwane.
Opisany powyżej model zapewnia skuteczną ochronę przed wprowadzaniem do systemu nieautoryzowanych zadań lub danych.


Schemat komunikacji w systemie Laboratorium Wirtualnego

Schemat komunikacji w systemie Laboratorium Wirtualnego.