![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 518 Pomógł: 18 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Jakis czas temu napisalem na wlasne potrzeby system logowania oparty o sesje i baze danych. Chcialbym do tego dopisac teraz checkbox do zapamietania uzytkownika jako stale zalogowanego. Problem niby banalny bo po poprawnym zalogowaniu wystarczy dac setcookie z id usera, ip kompa i przegladarke z ktorej sie logowal. No ale jesli ktos wylapie takie ciastko to system lezy. Sprawa druga to kwestia taka ze ip logujacego moze sie np zmienic i co wtedy ? czy moge prosic o podpowiedz jak podejsc do tego tematu uwzgledniajac wspolczesne kwestie bezpieczenstwa takiego autologowania za wszelka pomoc z gory dziekuje i pozdrawiam Grzegorz |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 116 Dołączył: 3.06.2012 Skąd: Lędziny Ostrzeżenie: (0%) ![]() ![]() |
Przy zaznaczeniu checkbox'a ładujesz do bazy temu użytkownikowi losowy ciąg znaków, najlepiej dosyć skomplikowany i długi. Do tego możesz zapisać np. jego user_agent w tym momencie i też zapisać do do bazy. Tworzysz ciasteczko z zawartością tego losowego ID i na starcie, przed samym logowaniem na strone, umieszczasz kod, ktory sprawdza czy ciasteczko (nazwijmy je sobie 'autologin') istnieje, a jeśli istnieje to sprawdzasz w bazie do jakiego usera jest to ID przypisane. Jeśli znajdziesz tego usera to sprawdzasz dodatkowo czy user_agent logującego zgadza się z tym zapisanym wcześniej w bazie. Jeśli wszystko jest OK to normalnie go logujesz i dla bezpieczeństwa możesz wygenerować nowy, losowy ciąg znaków i zaktualizować go w bazie + zmienić zawartość ciasteczka. W przypadku niepowodzenia niszczysz to ciasteczko, wiadomo.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 518 Pomógł: 18 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Tworzysz ciasteczko z zawartością tego losowego ID i na starcie, przed samym logowaniem na strone, umieszczasz kod, ktory sprawdza czy ciasteczko ciastko z losowym stringiem czy ciastko z id rekordu ? (rekord zawiera user_agenta losowy string itp.) I ostatnie pytanie bo jesli umieszcze tego typu mechanizm w pliku index.php to czy bedziemi sie to sprawdzalo przy kazdym zaladowaniem strony czy tylko podczas probu logowania ? (zakladam ze np logowanie i prosta tresc to ten sam plik) pozdrawiam G |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 23:52 |