Aplikacje www laboratorium



Podobne dokumenty
Wykład 3 Inżynieria oprogramowania. Przykład 1 Bezpieczeństwo(2) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Programowanie komponentowe. Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Instrukcja obsługi Outlook Web App i konfiguracji Thunderbird

Dokumentacja wdrożeniowa Project Lord 1.0

Aplikacje internetowe - laboratorium

Zaawansowane aplikacje internetowe - laboratorium

pomocą programu WinRar.

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Exchange Konfiguracja protokołu SSL/TLS w serwerze pocztowym Exchange wersja 1.0 UNIZETO TECHNOLOGIES S.A.

Aplikacje WWW - laboratorium

Wdrożenie modułu płatności eservice. dla systemu Gekosale 1.4

Exchange Konfiguracja protokołu SSL/TLS w serwerze pocztowym Exchange wersja 1.0

BACKUP BAZ DANYCH FIREBIRD

Oracle9iAS: instalacja i konfiguracja aplikacji J2EE

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat protokołu http.

Windows Server Active Directory

Jak skonfigurować bezpieczną sieć bezprzewodową w oparciu o serwer RADIUS i urządzenia ZyXEL wspierające standard 802.1x?

Compas 2026 Personel Instrukcja obsługi do wersji 1.05

Instalacja systemu zarządzania treścią (CMS): Joomla

Podstawowa instrukcja obsługi STRON stron internetowych serwisu zrealizowanych w systemie zarządzania treścią Wordpress.

1. Instalacja certyfkatu OSX 10.9

Instalacja i konfiguracja serwera IIS z FTP

Pomoc systemu poczty elektronicznej Wydziału Humanistycznego Uniwersytetu Szczecińskiego. Wersja: 1.12

Tomasz Greszata - Koszalin

INSTRUKCJA KONFIGURACJI KLIENTA POCZTOWEGO

Pracownia internetowa w szkole ZASTOSOWANIA

Zdalny dostęp do źródeł elektronicznych BUR dla pracowników i studentów Uniwersytetu Rzeszowskiego

Wdrożenie modułu płatności eservice. dla systemu Zen Cart

Zdalny dostęp do źródeł elektronicznych BUR dla pracowników i studentów Uniwersytetu Rzeszowskiego

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

1. Proszę wejść na stronę: poczta.home.pl i zalogować się do nowej skrzynki za pomocą otrzymanych danych.

Pracownia internetowa w każdej szkole (edycja jesień 2005)

Dodawanie nowego abonenta VOIP na serwerze Platan Libra

Architektury Usług Internetowych. Laboratorium 2 RESTful Web Services

Migracja bazy danych Microsoft Access *.mdb do Microsoft SQL 2008 Server R2 SP1 dla oprogramowania Płatnik

Uwierzytelnianie użytkowników sieci bezprzewodowej z wykorzystaniem serwera Radius (Windows 2008)

KORZYSTANIE Z BAZY DANYCH UpToDate

SYSTEM INFORMATYCZNY KS-SEW

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Manage Qulto database

PODSTAWOWA KONFIGURACJA LINKSYS WRT300N

POLITECHNIKA POZNAŃSKA

Ewidencja Wyposażenia PL+

TWORZENIE POŁĄCZENIA INTERNETOWEGO PRZEZ TELEFON

Wraz z wersją R2 dla systemu Windows 2008 Server nazewnictwo usług terminalowych uległa zmianie. Poniższa tabela przedstawia nową nomenklaturą:

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Platforma e-learningowa

Płace Optivum. 1. Zainstalować serwer SQL (Microsoft SQL Server 2008 R2) oraz program Płace Optivum.

Integracja systemu trigocms! z platformą Facebook

Aplikacje WWW - laboratorium

Instrukcja uruchomienia zapisu z funkcją detekcji ruchu w kamerach Fortec IP

INSTRUKCJA PIERWSZEGO URUCHOMIENIA I KONFIGURACJI PROGRAMU StartStop w wersji SaaS. 1 S t r o n a

Instrukcja logowania do systemu Rejestru Unii dla nowych użytkowników

Konfiguracja konta pocztowego w Thunderbird

Dokumentacja serwisu internetowego Zespołu Szkół Technicznych w Radomiu.

Windows Server Serwer RADIUS

SYSTEM PROXY. Zdalny dostęp do zasobów elektronicznych BGiOINT Politechniki Wrocławskiej

INSTALACJA DOSTĘPU DO INTERNETU

Konfiguracja serwerów pocztowych na platformie Tradoro.pl

asix Autoryzacja dostępu do zasobów WWW systemu asix (na przykładzie systemu operacyjnego Windows 2008)

Instrukcja konfigurowania poczty Exchange dla klienta pocztowego użytkowanego poza siecią uczelnianą SGH.

Wdrożenie modułu płatności eservice. dla systemu oscommerce 2.3.x

Konfiguracja oprogramowania w systemach MS Windows dla kont z ograniczonymi uprawnieniami

Instrukcja instalacji programu ARPunktor wraz z serwerem SQL 2005 Express

Z pojedynczym obiekcie zasady grupy znajdziemy dwa główne typy ustawień:

Instrukcja zarządzania kontami i prawami. użytkowników w systemie express V. 5

Instalacja i konfiguracja IIS-a na potrzeby dostępu WEBowego/Secure

Symfonia Produkcja Instrukcja instalacji. Wersja 2013

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Instalacja VPN Check Point Mobile Apple macos Hight Sierra (v )

Opis instalacji oparto na przykładzie serwera SUPERHOST z obsługą PHP i MySQL.

Pracownia internetowa w każdej szkole (edycja jesień 2005)

SPIS TREŚCI: 1. INSTALACJA SYSTEMU SIMPLE.ERP LOGOWANIE DO SYSTEMU ZMIANA HASŁA PLANOWANIE INFORMACJE DODATKOWE...

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Zdalny dostęp SSL. Przewodnik Klienta

Platforma e-learningowa

MikroTik Serwer OpenVPN

Pracownia internetowa w szkole podstawowej (edycja jesień 2005)

Laboratorium 3. Administrowanie szkolną siecią komputerową. dr Artur Bartoszewski

Instrukcja dla pracowników Politechniki Poznańskiej

Instrukcja obsługi programu CMS Dla rejestratorów HANBANG

oprogramowania F-Secure

Konfiguracja Trimble Access Sync

Dokumentacja instalacji aktualizacji systemu GRANIT wydanej w postaci HotFix a

Zdalny dostęp do zasobów elektronicznych BGiOINT dla pracowników Politechniki Wrocławskiej

Jak przenieść bazę danych na zdalny serwer?

Przewodnik technologii ActivCard

Instrukcja konfiguracji usługi DDNS na dedykowanym serwerze dla urządzeń Internec serii i7

Instrukcja konfiguracji urządzenia Comarch TNA Gateway Plus

Nowa Netia administrator firmy Nagrywanie połączeń-zarządzanie

Instrukcja konfiguracji rejestratorów BCS. do pracy w sieci oraz programu PSS v.4.05

Instalacja serwera zarządzającego F-Secure Policy Manager

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Skrócona instrukcja obsługi routera D-LINK: DIR 300 dla użytkowników sieci Maxnet

Obsługa poczty elektronicznej w domenie emeritus.ue.poznan.pl

Instrukcja użytkownika aplikacji npodpis r.

Instrukcja instalacji aplikacji i konfiguracji wersji sieciowej. KomKOD

Skrócona instrukcja obsługi moduł lekarza

Transkrypt:

Aplikacje www laboratorium Konfigurowanie zabezpieczeń w oparciu o JAAS w serwerze GlassFish Zabezpieczanie aplikacji webowych z wykorzystaniem JASS jest w podstawowych zastosowaniach procesem dwuetapowym. Krok 1 polega na skonfigurowaniu odpowiednich domen tożsamości (realms) na serwerze GF oraz utworzeniu bazy użytkowników. Etap 2 polega na wprowadzeniu zmian w deskryptorze aplikacji (web.xml). 1. Do autoryzacji wykorzystane zostanie podejście bazujące na plikach. W pierwszym kroku należy utworzyć nową dziedzinę (strefę, realm) bezpieczeństwa na serwerze. Strefa określa sposób uwierzytelnienia i zbiór uprawnionych użytkowników. W celu utworzenia nowej strefy należy zalogować się na serwer aplikacji. Wybieramy zakładkę Services, węzeł Servers, Glassfish i z menu podręcznego wybieramy View Admin Console. W otwartej przeglądarce logujemy się jako admin (password: adminadmin). Po lewej stronie wybieramy z drzewa wybieramy Configuration -> Security -> Realms. Trzy domeny są już zdefiniowane domyślnie: admin-realm, file i certificate. 2. W oknie po prawej wybieramy przycisk New. W nowotworzonej domenie wpisujemy:

Name: WAI_realm - określa nazwę zasobu do wykorzystania z poziomu aplikacji z pomocą usług JNDI. Class Name: com.sun.enteriprise.security.auth.realm.file.filerealm JAASContext: filerealm KeyFile: ${com.sun.aas.instanceroot}/config/wai-keyfile - plik w którym przechowywane są dane o użytkownikach Assign Group: users - nazwa grupy do której przynależą użytkownicy Zatwierdzamy dane klikając OK 3. Po powrocie do ekranu z listą domen, wybieramy domenę WAI_realm. Klikamy na przycisk Manage Users i dodajemy użytkowników klikając New.

4. Wpisujemy dane: User ID student, Group List users oraz dwukrotnie hasło, które zapamiętujemy (np. student). Zatwierdzamy użytkownika klikając OK. Czynności powtarzamy w celu stworzenia następnych użytkowników. Czynności kończymy wciskając Save i restartując serwer (w prawym górnym rogu). To wszystko co trzeba wykonać na serwerze aplikacji. Druga część to skonfigurowanie aplikacji webowej. Główną zaletą bezpieczeństwa opartego JAAS, jest to, że identyczny zbiór z użytkownikami i grupami, może być wykorzystany do kilku aplikacji. Druga zaleta, to fakt, że nie trzeba tworzyć własnego systemu zabezpieczeń na każdej stronie webowej i sprawdzać czy użytkownik jest już zalogowany. Bezpieczeństwo jest opisane w sposób deklaratywny w plikach web.xml. 5. Spośród kilku dostępnych metod uwierzytelniania w aplikacjach webowych, najprostszą jest HTTP Basic authentication (przekazywanie danych w nagłówkach http). W dalszej części spróbujemy wykorzystać tę metodę. W tym celu edytujemy plik web.xml, w celu określenia metody uwierzytelnienia i domeny (realm), dla której dokonujemy uwierzytelnia. Wpisujemy do

<login-config> <auth-method>basic</auth-method> <realm-name>wai_realm</realm-name> </login-config> 6. Kolejnym krokiem jest zabezpieczenie katalogu lub konkretnej strony. Są to tzw. składowe (reguły) bezpieczeństwa security constrains. Dodajemy do naszej aplikacji (węzeł Web Pages) podkatalog secure i przenosimy tam stronę index.jsp. Jednocześnie w katalogu głównym dodajemy stronę login.jsp (na razie z domyślną zawartością. 7. W pliku web.xml dodajemy <security-constraint> <web-resource-collection> <web-resource-name>bezpieczne WAI </web-resource-name> <url-pattern>/secure/*</url-pattern> <http-method>get</http-method> <http-method>post</http-method> </web-resource-collection> <auth-constraint> <role-name>student</role-name> </auth-constraint> </security-constraint> Można to również uzyskać przez zaznaczenie i wpisanie odpowiednich parametrów w kreatorze. Parametr URL pattern /* oznacza, że wszystkie strony wymagają poprawnego zalogowania, przez użytkownika, który należy do grupy Student. 8. Mapowanie ról pomiędzy rolami z naszej aplikacji, a serwera aplikacji dokonuje się wpisują odpowiedni alias w serwerze aplikacji lub, dla GlassFisha w pliku sun-web.xml w katalogu WEB-INF <security-role-mapping> <role-name>student</role-name> <group-name>users</group-name> </security-role-mapping> 9. Przetestuj aplikację sprawdząjąc jej działanie dla obu stron. 10. W celu wykorzystania uwierzytelnienia opartego o formularze należy zmodyfikować plik web.xml. zmieniamy metodę uwierzytelnienia z BASIC na FORM i wskazujemy stronę z formularzem logowania: <login-config> <auth-method>form</auth-method> <realm-name>wai2_realm</realm-name> <form-login-config> <form-login-page>/login.jsp</form-login-page> <form-error-page>/loginerror.jsp</form-error-page> </form-login-config> </login-config>

11. Kolejnym krokiem jest utworzenie strony logowania. Strona ta musi zawierać formularz z nazwą akcji j_security_check i nazwą użytkownika oraz hasłem jako j_username i j_password. Przykładowy fragment kodu strony login.jsp: <form method="post" action="j_security_check"> <table> <tr><td>użytkownik:</td> <td><input type="text" name="j_username" /></td></tr> <tr><td>hasło:</td> <td><input type="password" name="j_password" /></td></tr> <tr><td><input type="submit" value="zaloguj" /></td></td></tr> </table> </form> 12. Przetestuj aplikację. 13. Kolejną modyfikacją jest zmiana źródła bazy użytkowników z plikowej na bazodanową JDBC Realm. W tym celu musimy założyć odpowiednią bazę danych: z użytkownikami i grupami. Zakładamy tworząc w mysql u bazę app i tabele: Create database app; create table USERTABLE(USERID varchar(20), PASSWORD varchar(20)); create table GROUPTABLE(USERID varchar(20), GROUPID varchar(20)); oraz dane insert into USERTABLE(USERID,PASSWORD) values ('wai', 'secret'); insert into GROUPTABLE(USERID,GROUPID) values ('wai', 'users'); 14. Uwaga: hasła są nie zaszyfrowane tylko i wyłącznie dla uproszczenia testowania. W rzeczywistych aplikacjach należy je zaszyfrować. 15. Zakładamy nowe źródło danych jdbc/wai_security na serwerze aplikacji (patrz ćwiczenie serwety i JDBC) i odpowiednią pulę połączeń. 16. Zamiast źródła plikowego wybieramy com.sun.enterprise.security.auth.realm.jdbc.jdbcrealm. i ustawiamy odpowiednie parametry jaas-context jdbcrealm Datasource-jndi jdbc/wai_security user-table app.usertable user-name-column userid password-column password group-table app.grouptable group-name-column groupid digest-algorithm none database-user root database-password xamppwne 17. Testujemy aplikację