Security Master Class Separacja uprawnień administracyjnych i audytowanie zdarzeń bezpieczeństwa - RBAC w JBoss EAP. Przemysław Kuźnicki Senior Solutions Architect Linux Polska Sp. z o.o. 1
Agenda 1. Czym jest RBAC 2. Uprawnienia dawniej i dziś 3. Access Control Provider 4. Zasięg działania i typy zasobów 5. Opis ról w EAP 6 6. Kierunki rozwoju 7. Pokaz na żywo 2
3
4
5
Business Benefits of RBAC Zredukowanie ryzyka, że użytkownicy bez odpowiednich uprawnień będą mieli dostęp poza wyznaczone ramy własnych obowiązków Zredukowanie czasu na przydział uprawnień dla nowych użytkowników. Jeśli kogoś przyjmujemy do pracy, nadajemy mu odpowiednią rolę i wszystko dzieje się automagicznie Proste poświadczenia i audytowanie dzięki szybkiemu przeglądaniu uprawnień dla roli Uproszczenie kontroli krzyżowej uprawnień i zmniejszenie ryzyka nieupważnionego dostępu do zasobów Adresowanie uprawnień zgodnie z polityką firmy i pełnioną funkcją 7
Jak wiele firm potrzebuje RBAC? 97% klientów potrzebuje wdrożenia RBAC w swojej infrastrukturze Ile firm próbuje wdrażać RBAC? Co trzecia zainteresowana firma Ilu firmom się udaje? Co dziesiątej Dlaczego? 8
Wyzwania przed jakimi stoimy Ilość czasu jaką pożera nam zarządzanie dostępem do danych Potrzeba dużych umiejętności pracowników Niewystarczające rezultaty dotychczasowych poczynań Trzeba zrozumieć, że wdrażanie uprawnień to proces a nie stan Rekomendacja D wymaga od nas rozliczeń i audytu dla sektora finansowego 9
Jak było do tej pory: JBoss AS7 / EAP 5 umożliwiał pełna kontrolę osobie zalogowanej wg zasady Wszystko-Albo-Nic. W wielu zastosowaniach użytkownicy potrzebowali większej granulacji uprawnień Zarządzanie wg ról możliwe było tylko dzięki zewnętrznym narzędziom takim jak np: JON 11
Jak jest obecnie: Użytkownicy administracyjni mają przypisane role Rola nadaje uprawnienia Uprawnienia specyfikują jakie akcje może podjąć użytkownik na zasobie: Zasób wrażliwy [atrybut, operacja, dane] Zasób audytowy Zasób aplikacyjny 12
Access Control Providers Dwa sposoby pracy: SIMPLE każdy zautentykowany użytkownik ma wszystkie przywileje działa to jak w niższych wersjach EAP lub AS 7 jest to domyślny sposób pracy RBAC mapowanie użytkowników na role nowość w WF 8 i EAP 6.3 13
Access Control Providers Security Realm Access Control Provider Simple User Role Group 14
Zasięg ról: Nowe role są tworzone w oparciu o te już predefiniowane Rolom można przypisać zasięg działania: Zasięg Hosta (Host Controller) Zasięg Server Grupy 15
Wrażliwe zasoby: Wszystkie np: atrybuty, operacje, zasoby, do których chcemy ograniczyć dostęp do: Pisania Czytania Adresowania Np: socket_config, jms_security_setting... 16
Wrażliwe dane: EAP6 wspiera zewnętrzne wsparcie bezpieczeństwa w postaci narzędzia VAULT, w którym można przechowywać np: hasła w formie kryptowanej. Domyślnie atrybuty używane w VAULT są traktowane jako wrażliwe. Przykład VAULT: ${VAULT::VaultBlock::AttributeName::SharedKey} 17
Zasoby aplikacyjne: Skoncentrowane wokół roli DEPLOYER by zarządzać deploymentem Niektóre Subsystemy mogą być traktowane jako zasoby aplikacyjne np: JMS destination Datasources 18
Predefiniowane ROLE: Podstawowa administracja Monitor Operator Maintainer Deployer Podwyższona administracja Adminstrator Auditor Super User 19
Uprawnienia roli MONITOR: Może przeglądać konfigurację serwera i metryki Bieżące informacje/statusy Tylko odczyt Informacja o konfiguracji Tylko odczyt Dane wrażliwe (hasła, connection string) Brak dostępu Informacje Audytowe Brak dostepu R runtime C config S sensitive A - Audit MONITOR R: r S: - C: r A: - 20
Uprawnienia roli OPERATOR: Oparta na roli MONITOR, dodatkowo może zmieniać bieżące ustawienia np: przeładowanie / zatrzymanie serwerów zatrzymanie / wznowienie kolejki JMS OPERATOR MONITOR opróżnienie puli połączeń (flush) R: r S: - Inne... C: r A: - R: rw 21
Uprawnienia roli MAINTAINER: Oparta na roli OPERATOR, dodatkowo może zmieniać konfigurację np: osadzać (deploy) aplikacje konfiguracja datadources konfiguracja JMS destination Inne... MAINTAINER OPERATOR MONITOR R: r S: - C: r A: - R: rw C: rw 22
Uprawnienia roli DEPLOYER: Oparta na roli MAINTAINER, dodatkowo: może tylko zarządzać osadzaniem aplikacji nie może zmieniać konfiguracji. DEPLOYER MAINTAINER OPERATOR MONITOR R: r S: - C: r A: - R: rw C: rw D: rw 23
Uprawnienia roli ADMINISTRATOR: Oparta na roli MAINTAINER, dodatkowo może modyfikować dane wrażliwe nie ma dostępu do danych audytowych. ADMINSTRATOR MAINTAINER OPERATOR konfiguruje dostęp do systemu (kontrolera) MONITOR R: r S: - C: r A: - R: rw C: rw S: rw 24
Uprawnienia roli AUDITOR: Oparta na roli MONITOR, dodatkowo: ma dostęp do danych audytowych może czytać dane wrażliwe (hasła, użytkowników) AUDITOR Inne... MONITOR R: r S: - C: r A: - konfiguruje audytowanie S: r A: rw 25
Uprawnienia roli SuperUser: Rola posiadająca maksimum uprawnień. Odpowiada użytkownikowi admin we wcześniejszych wersjach JBoss. Super User ADMINSTRATOR MAINTAINER OPERATOR MONITOR R: r S: - C: r A: - R: rw C: rw S: rw A: rw 26
Kierunki na przyszłość: Własne konfigurowanie zasięgu ról W szczególności zasięgi zasobów Użycie danych środowiskowych w mapowaniu ról Czas dnia, dzień tygodnia itp... Czy połączenie przychodzące używa TLS 27
Podsumowanie RBAC to większa kontrola nad dostępem do zasobów RBAC to elastyczność w przydzielaniu uprawnień RBAC to logi audytu dla rekomendacji D RBAC to dopasowanie uprawnień do pełnionej funkcji RBAC to mniej czasu na administrację 28
Zapraszamy na szkolenia JB-248 Administracja poziom I JB-348 Administracja poziom II EX-248 Red Hat Certified JBoss Administrator 29
in action The Productiv e Life Show 30
Dziękujemy za uwagę Przemysław Kuźnicki Senior Solutions Architect Linux Polska Sp. z o.o. 31