![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 72 Pomógł: 0 Dołączył: 25.01.2006 Skąd: Oświęcim Ostrzeżenie: (0%) ![]() ![]() |
Witam!!
Hmm.. widze, ze zainteresowanie moim poprzednim tematem (http://forum.php.pl/index.php?showtopic=40840) jest takie sobie... Ale moze to was troche ruszy do dzialania. Kiedy wlaczam przegladarke wyskakuje okienko logowania i jest ok. Wpisuje login haslo jesli dobrze to przechodze do odpowiedniej podstrony. Nastepnie daje "Wyloguj" i wtedy wracam do pulpitu logowania i tu sie pojawia problem bo kiedy daje w przegladarce cofnij to sie mi wyswietla info ze ta podstrona stracila waznosc, ale kiedy daje odswierz pojawia sie mi znow strona, ktora powinna byc widoczna tylko po zalogowaniu. I dopiero kiedy wylacze przegladarke i wlacze na nowo to dopiero znow ta chroniona czesc jest niedostepna... Jak tego uniknac? Co mam dodac w kodzie? Aha i jeszcze niekiedy mam widoczny sid w okienku adresowym... Da sie o jakos usunac? Slyszaszalem, ze ciastka sa dobrym sposobem na zabezpieczenie strony, tylko nie bardzo wiem na czym to polega... Moglby mi ktos wyjasnic jak w moim kodzie moglbym wykorzystac ciastka? Ten post edytował adeq_PL 26.01.2006, 17:12:53 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli twoja przeglądarka ma wyłączoną obsługę COOKIES to identyfikator sesji (domyślnie) przetrzymywany jest w pasku adresu i przesyłany GET'em. Możesz włączyć obsługę cookies, wtedy identyfikatora sesji nie będzie w pasku adresu, będzie on pobierany z COOKIES'ów.
Jeżeli po wylogowaniu się, używasz session_destroy() to sesja jest usuwana z katalogu serwera, inaczej sesja ta pozostaje. Serwer ma funkcję Garbage Collector, który usuwa sesje nie zaktualizowane przez ostatnie, bodajże, 24 godziny. Jeżeli w ciągu tych 24 godzin, ktoś przejmie identyfikator niewylogowanego użytkownika to jest niebezpieczeństwo przejęcia kontroli nad aplikacją. Można tego uniknąć, jeżeli użytkownik ma włączone ciastka w przeglądarce, wtedy wyciągnięcie identyfikatora sesji będzie nieco trudniejsze. Wtedy sesja przepada w momencie zamknięcia przeglądarki, więc identyfikatora już nie wyciągniesz, wtedy po 24 godzinach Garbage Collector usuwa tą sesję. Ewentualnie można skorzystać z własnego mechanizmu przetrzymywania sesji, co daje większe bezpieczeństwo, tj. możesz sprawdzać czy IP jest identyczne z tym, którego użyto podczas przetwarzania skryptu logowanie, czy identyfikator przeglądarki jest ten sam itd. Artykułów na temat tworzenia własnego Session Handlera jest wiele w internecie (nawet na php.pl jest) więc radzę zapoznać się z nimi (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 09:18 |