Serwery aplikacji. dr Radosław Matusik. radmat

Podobne dokumenty
Sesje, ciasteczka, wyjątki. Ciasteczka w PHP. Zastosowanie cookies. Sprawdzanie obecności ciasteczka

Kontrola sesji w PHP HTTP jest protokołem bezstanowym (ang. stateless) nie utrzymuje stanu między dwoma transakcjami. Kontrola sesji służy do

Serwery aplikacji. dr Radosław Matusik. radmat

Serwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego radmat radmat@math.uni.lodz.

Piotr Laskowski Krzysztof Stefański. Java Servlets

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład VII

Sesje i logowanie. 1. Wprowadzenie

Języki programowania wysokiego poziomu. PHP cz.3. Formularze

In»ynieria systemów informacyjnych - Adam Krechowicz

Aplikacje WWW - laboratorium

Języki skryptowe - PHP. PHP i bazy danych. Paweł Kasprowski. pawel@kasprowski.pl. vl07

Kontrola sesji w PHP HTTP jest protokołem bezstanowym (ang. stateless) nie utrzymuje stanu między dwoma transakcjami. Kontrola sesji służy do

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

Sklep internetowy wtspartner.pl dokłada wszelkich starań, aby prowadzony serwis ułatwiał każdemu użytkownikowi

Stosowanie ciasteczek (cookies)

EXSO-CORE - specyfikacja

Serwery aplikacji. dr Radosław Matusik. radmat

Aplikacje internetowe i rozproszone - laboratorium

Problemy techniczne. Jak wyłączyć obsługę plików cookie w przeglądarkach internetowych? Przeglądarka Internet Explorer

1. Rodzaj przetwarzanych danych / linki do witryn zewnętrznych

Ćwiczenie: JavaScript Cookies (3x45 minut)

Problemy techniczne. Jak wyłączyć obsługę plików cookie w przeglądarkach internetowych? Przeglądarka Internet Explorer

Architektury Usług Internetowych. Laboratorium 1 Servlety

Przekazywanie danych. Dane zewnętrzne mogą pochodzić z róŝnych źródeł:

Plan. Stan sesji (1/2) Stan sesji (2/2) Stan sesji Tworzenie przycisku Integracja prostego formularza z raportem Tworzenie formularza z raportem

POLITYKA PRYWATNOŚCI. 1 Jak zbieramy dane?

Cookie Policy. 1. Informacje ogólne.

POLITYKA PRYWATNOŚCI

Komunikator internetowy w C#

Ciasteczka. Krishna Tateneni Jost Schenck Polskie tłumaczenie: Suse Polska Aktualny opiekun tłumaczenia: Marcin Kocur

Programowanie w Sieci Internet JSP ciąg dalszy. Kraków, 9 stycznia 2015 r. mgr Piotr Rytko Wydział Matematyki i Informatyki

Oświadczenie o plikach cookies

Podręcznik Integracji

POLITYKA PRYWATNOŚCI

Enterprise JavaBeans (EJB)

Posiada (TAK / NIE. Zrzut ekranu. Opis funkcji

Architektury Usług Internetowych. Laboratorium 1. Servlety

Regulamin świadczenia usługi e-book oraz polityka prywatności (cookies)

Gatesms.eu Mobilne Rozwiązania dla biznesu

Sprawozdanie nr 4. Ewa Wojtanowska

, NO 556 NATHAN ROAD, MONGKOK, KOWLOON, HONG KONG. KRS: o

Wykład 4. Metody uwierzytelniania - Bezpieczeństwo (3) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

The OWASP Foundation Session Management. Sławomir Rozbicki.

Internet w akademikach na Ligocie

Laboratorium 1. Wzorce oprogramowania lab1, Zofia Kruczkiewicz

Rynat Trading Ltd POLITYKA PRYWATNOŚCI

Serwis nie zbiera w sposób automatyczny żadnych danych, z wyjątkiem danych zawartych w plikach cookies podczas samego korzystania z Witryny.

Moduł integrujący serwis Korporacji Kurierskiej z programem WF-MAG Instrukcja użytkowania

Regulamin świadczenia usługi e-book oraz polityka prywatności (cookies)

Polityka prywatności dla strony ELCEN Sp. z o.o. z siedzibą w Gdyni

POLITYKA PRYWATNOŚCI

INSTRUKCJA SYSTEMU MMR

CGI i serwlety. Plan wykładu. Wykład prowadzi Mikołaj Morzy. Przykład: serwlety vs. szablony. Implementacja logiki prezentacji

Klient poczty elektronicznej - Thunderbird

POLITYKA PRYWATNOŚCI SERWIS:

Polityka prywatności stron WWW Wojewódzkiego Inspektoratu Ochrony Środowiska w Opolu

Wykorzystywanie plików cookies

Serwis realizuje funkcje pozyskiwania informacji o użytkownikach i ich zachowaniach w następujący sposób:

1 Jak zbieramy dane? 1/5

INSTRUKCJA SYSTEMU MMR

NIP , REGON

Pobieranie komunikatów GIF

Polityka prywatności 1. Informacje ogólne.

Poniżej znajdą Państwo dalsze informacje na temat rodzajów używanych przez nas plików cookies. Rodzaj zbieranych danych. przechowywany plik cookie?

POLITYKA PRYWATNOŚCI

3. DyplomyDlaDzieci.pl dokłada szczególnej staranności do poszanowania prywatności Klientów odwiedzających Sklep. 1 Zbieranie danych

4. Podstawowa konfiguracja

Cemarol Sp. z o.o. Polityka prywatności (pliki cookies) 1. Informacje ogólne.

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

Polityka prywatności. Polityka prywatności

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

II. RODZAJE PLIKÓW COOKIES

P O L I T Y K A P R Y W A T N O Ś C I. 1 Jak zbieramy dane?

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania.

Polityka bezpieczeństwa.

Przewodnik po Notowaniach Statica mdm 4


POLITYKA Prywatności. Przetwarzanie i Ochrona Danych Osobowych

Polityka Prywatności

Polityka prywatności

jako integralna część Regionalnego Systemu Informacji Przestrzennej (RSIP)

W jakim celu stosujemy Cookies lub inne podobne technologie? Extreme Poland stosuje Cookies lub inne podobne technologie w następującym celu:

Zachęcamy do zapoznania się z Polityką Prywatności naszych serwisów www.

Czym są pliki cookies?

Wypełnianie protokołów w USOSweb. Instrukcja dla osób prowadzących zajęcia dydaktyczne.

timetrack Przewodnik Użytkownika timetrack Najważniejsze Funkcje

Korzystanie z edytora zasad grupy do zarządzania zasadami komputera lokalnego w systemie Windows XP


Instrukcja użytkowania oprogramowania SZOB PRO

Języki programowania wysokiego poziomu. Blog

Zanim zaczniesz. Warto ustawić kartę sieciową naszego serwera.

Państwa dane osobowe przetwarzamy wyłącznie w celu realizacji procesu rezerwacji i świadczenia usług noclegowych w domkach ANCORA.

Aktualizacja SMSFall v Data publikacji:

POLITYKA PRYWATNOŚCI W SERWISIE INTERNETOWYM

POLITYKA PRYWATNOŚCI ORAZ POLITYKA PLIKÓW COOKIES W Sowa finanse

2) W wyświetlonym oknie należy zaznaczyć chęć utworzenia nowej aplikacji (wygląd okna może się różnić od powyższego); kliknąć OK

Certyfikat. 1 Jak zbieramy dane?

Polityka prywatności serwisu

Fundacja Ośrodka KARTA z siedzibą w Warszawie, przy ul. Narbutta 29 ( Warszawa),

Transkrypt:

www.math.uni.lodz.pl/ radmat

Ciasteczka trwałe i sesyjne Ciasteczka trwałe - pozostają na komputerze użytkownika po zamknięciu strony, z której zostały pobrane / przeglądarki. Ciasteczka sesyjne - są związane z daną sesją przeglądarki i wygasają po jej zamknięciu.

Z programistycznego punktu widzenia, rozróżnienie między oboma rodzajami ciasteczek polega na ustawieniu wartości metody setmaxage. Ustawienie wartości 0 powoduje natychmiastowe usunięcie ciasteczka, natomiast -1 usuwa ciasteczko z chwilą zamknięcia przeglądarki.

Ćwiczenie 1 Proszę napisać serwlet ustawiający w jednym pliku nazwy i wartości trzech ciasteczek sesyjnych i trzy nazwy i wartości ciasteczek trwałych oraz wypisujący w drugim pliku aktywne ciasteczka.

Ćwiczenie 2 Proszę napisać aplikację spełniającą następujące założenia: na pierwszej stronie wyświetlamy linki: zaloguj, wyloguj, profil; dane logowania (login i e-mail wpisane w kodzie programu) należy przechowywać w ciasteczkach; jeśli będziemy zalogowani, to po wybraniu profilu powinny się wyświetlić login i e-mail. Do przekierowania na inną stronę (np. po wylogowaniu na stronę główną) użyjemy następującej metody: request.getrequestdispatcher("login.html").include(request, response);

Sesje Obsługa sesji jest nieodłącznym elementem większości aplikacji webowych. Sesja służy zapisywaniu informacji o poszczególnych klientach odwiedzających daną stronę. Informacje te zapisywane są na serwerze i identyfikowane przez odpowiednie ciasteczko wysyłane do klienta. W celu uzyskania obiektu sesji z serwletu należy posłużyć się odpowiednią metodą obiektu klasy request. HttpSession getsession() lub HttpSession getsession(boolean czytworzyc).

Pierwszy wariant metody równoważny jest drugiemu, wywołanemu z parametrem true. W przypadku drugiego wariantu metody: jeśli parametr ma wartość true, to metoda zwraca obiekt sesji lub tworzy nowy, jeśli ten nie istnieje; jeśli parametr ma wartość false, to metoda zwraca obiekt sesji lub null, jeśli ten nie istnieje. Wartość true należy przekazać, gdy chcemy po prostu uzyskać dostęp do sesji. Wartość false stosujemy, gdy chcemy sprawdzić, czy sesja istnieje.

Wybrane metody klasy HttpSession: getattributenames() - zwraca nazwy wszystkich obiektów przechowywanych w sesji setattribute(string nazwa, Object wartość) - dodaje obiekt do sesji i przypisuje mu podany klucz (nazwę) getattribute(string nazwa) - zwraca atrybut sesji o podanej nazwie getid() - zwraca identyfikator sesji dla danego klienta getcreationtime() - zwraca czas utworzenia sesji getlastaccessedtime() - zwraca czas odwoływania się danego klienta do sesji

setmaxinactivetime() - ustawia czas, po jakim sesja zostanie usunięta getmaxinactivetime() - zwraca czas, po jakim sesja zostanie usunięta invalidate() - usuwa wszystkie dane z sesji isnew() - sprawdza, czy sesja była już używana removeattribute() - usuwa podany atrybut z sesji

Warunki zakończenia sesji: ręczne zakończenie sesji przez programistę; upłynięcie czasu życia sesji; zamknięcie okna przeglądarki przez użytkownika. Istnienie terminu ważności sesji można określić albo w pliku web.xml, albo pisząc w kodzie metodę void setmaxinactiveinterval(int czas), która określa czas życia sesji w milisekundach. Wartości ujemne i zero powodują, że sesja nigdy nie wygasa (zatem do jej zakończenia niezbędne jest użycie metody invalidate() lub zamknięcie okna przeglądarki).

Sesja zawiera: całość informacji o stanie współpracy użytkownika z programem, czyli m.in. ID i inne dane użytkownika, uprawnienia użytkownika, czy też ID i kontekst aktualnego formularza; zbiór danych tworzących sesję może mieć znaczne rozmiary, dlatego między klientem, a serwerem przekazywany jest tylko identyfikator sesji.

Metody obsługi sesji: w elemencie HIDDEN (dla metody GET ma ograniczoną wielkość, istnieje także ryzyko manipulacji przez klienta); w cookie (ograniczona wielkość, limitowana przez ciasteczko; również istnieje ryzyko manipulacji przez klienta); w obiekcie serwera (dla bezpiecznych aplikacji zaleca się stosowanie protokołu HTTPS).

Ćwiczenie 1 Wykorzystując mechanizm sesji proszę sprawdzać wejścia na stronę i wyświetlać jedynie informację, czy są to pierwsze odwiedziny, czy kolejne.

Ćwiczenie 2 Proszę ponownie napisać aplikację, której działanie przedstawia poniższy schemat, tym razem jednk wykorzystując mechanizm sesji.