Usługi bezpieczeństwa w rozproszonych strukturach obliczeniowych typu grid Bartłomiej Balcerek Wrocławskie Centrum Sieciowo-Superkomputerowe
Plan prezentacji Podstawowe pojęcia z dziedziny gridów Definicja gridu obliczeniowego Zagadnienia bezpieczeństwa w gridach Protokół bezpieczeństwa - GSI Projekt jako przykład elementu bezpieczeństwa gridu
Podstawowe pojęcia Wirtualne organizacje Grupy ludzi bądź zasobów, rozsianych geograficznie prowadzących wspólne prace bądź badania. Współdzielenie zasobów Ponad zasobami fizycznymi musi istnieć warstwa aplikacyjna umożliwiająca ich współdzielenie. Przezroczysty dostęp do zasobów Ukrycie infrastruktury sprzętowo-programowej przed użytkownikiem.
Podstawowe pojęcia c.d. Rozwiązywanie problemów dużej skali Dzięki udostępnianiu własnych zasobów w ramach Wirtualnej Organizacji, można mieć okresowo dostęp do wszystkich jej zasobów, co daje szansę na wykonanie bardziej skomplikowanych obliczeń w krótszym czasie. Technologie programowe Obecnie rozwijanych jest kilka gridowych technologii programowych, które oferują funkcjonalności niezbędne do wirtualizacji warstwy sprzętowej, np. Globus, Legion.
Definicja gridu obliczeniowego Grid definiowany jest jako infrastruktura sprzętowoprogramowa, dynamicznie zmieniająca się, która dostarcza niezawodnego, spójnego, powszechnego i taniego dostępu do zasobów obliczeniowych, składowania, aparatury i danych, rozproszonych geograficznie i należących do różnych organizacji.
Architektura gridu na przykładzie projektu Clusterix
Zagadnienia bezpieczeństwa w gridach Używane zasoby mogą być cenne, a rozwiązywane problemy wrażliwe na zakłócenia Zasoby często rozproszone są po różnych domenach administracyjnych. Każdy zasób może mieć własną politykę dostępu, procedury, mechanizmy bezpieczeństwa Implementacja powinna być dostępna i łatwo aplikowalna. Konieczne używanie standardowych, dobrze przetestowanych, dobrze rozumianych protokołów, integrowanych z szerokim zakresem rozmaitych narzędzi
Zagadnienia bezpieczeństwa w gridach c.d. Zbiór zasobów używanych przez jedno zadanie obliczeniowe może być duży, dynamiczny i nieprzewidywalnie zmieniać się w czasie. Występują nie tylko interakcje typu użytkownik-usługa, ale usługausługa, w imieniu użytkownika. Wymaga to możliwości delegowania praw użytkownika do usługi.
Wymogi bezpieczeństwa gridów Użytkownika Właściciela zasobów 1) Łatwość używania 2) Single Sign-On 3) Model zaufania oparty na użytkowniku 4) Delegowanie uprawnień 1) Lokalna kontrola dostępu 2) Audytowanie, rozliczanie 3) Integracja z lokalnymi systemami np. Kerberos 4) Ochrona przed skompromitowanymi zasobami
Certyfikaty PKI Analogia do dowodu osobistego Nazwisko Wydawca Klucz publiczny Podpis
Grid Security Infrastructure (GSI) GSI to standard zaprojektowany w ramach projektu Globus, tak by spełnić wszystkie wymienione wymogi bezpieczeństwa Protokół GSI rozszerza dobrze poznany standard PKI. GSI bazuje na: Certyfikatach X.509 Protokole SSL/TLS GSI wspiera standardowe API bezpieczeństwa np. GSSAPI, dzięki czemu może współpracować np. z SSH.
Grid Security Infrastructure (GSI) c.d. Delegacja uprawnień zapewnia pojedynczy punkt GSI to: dostępu Delegacja uprawnień PKI przechowuje dane identyfikacyjne PKI SSL/TLS SSL zapewnia autentykację i ochronę wiadomości
Grid Security Infrastructure (GSI) c.d. GSI wprowadza certyfikaty X.509 typu proxy, jako rozszerzenie umożliwiające delegowanie uprawnień i zapewniające pojedynczy punkt dostępu. Certyfikat Centrum Certyfikacji Podpis Certyfikat użytkownika Podpis Certyfikat proxy
Grid security infrastructure (GSI) c.d. Delegowanie tożsamości Delegowanie = tworzenie (kolejnego poziomu) certyfikatu proxy, zazwyczaj zdalne: Klient zgłasza żądanie dostępu do serwera Serwer generuje nową parę kluczy Certyfikat proxy przesyłany jest do klienta Klient podpisuje certyfikat proxy i odsyła go do serwera Serwer zapisuje proxy w lokalnym systemie plików Delegowanie pozwala zdalnemu procesowi autentykować się w imieniu użytkownika Zdalny proces niejako impersonuje użytkownika
Grid security infrastructure (GSI) c.d. GSI a Secure Socket Layer (SSL) SSLv3= TLS (Transport Layer Security) GSI nadbudowuje nad SSL Używa SSL do autentykacji i ochrony przesyłanej informacji GSI dodaje certyfikaty proxy dla zapewnienia SSO (Single Sign- On) SSL daje możliwość autentykacji, ale nie zapewnia mechanizmu przekazywania uprawnień użytkownika usłudze
Architektura bezpieczeństwa w projekcie SGI Grid AUTHSERVER Grid access point Authentication methods Virtual Laboratory (VLAB) Resource Access Decison (RAD) Data management Authorization decisions
Request/Response getuserid() getuserinfo() getuserproxy() isproxyvalid() AUTHPROXYD Web service interface initializations functions unix server functions web service functions proxy generation functions proxy verification funcions ldap access functions LDAP interface Architektura modułu autentykacji LDAP query CA credentials User credentials
INTERNET Wrocław 2005 Funkcjonalność modułu autentykacji Pobieranie informacji o użytkowniku na podstawie jego identyfikatora dane pobierane są ze zweryfikowanego certyfikatu dostępnego w bazie LDAP zwracane są następujące pola z certyfikatu: Subject, Issuer, Serial Number, email, Validity Not Before, Validity Not After Generowanie certyfikatu proxy dla użytkownika generowanie certyfikatu proxy na określony czas z użyciem klucza prywatnego znajdującego się w bazie LDAP Weryfikacja ważności certyfikatu proxy sprawdzenie ścieżki certyfikacji, listy CRL, dat ważności certyfikatów, oraz maksymalnego czasu życia certyfikatu proxy
INTERNET Wrocław 2005 Dziękuję za uwagę