![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 0 Dołączył: 4.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Cześć!
Tworzę sobie stronę z logowaniem. I lepiej to logowanie zrobić na sesjach czy na ciasteczkach? I czy w ogóle na tym drugim jest możliwość zrobienia czegoś takiego. Chociaż na kursie php jest napisane: Cytat Metodą nie tyle przekazywania parametrów, co przechowywania niewielkich ilości danych na komputerze oglądającego stronę (np. informacje o imieniu i nazwisku lub nazwie użytkownika w tym serwisie) jest mechanizm cookies (ciasteczka). Ciasteczka ustawione przez dany serwis dostępne są tylko dla niego i ustawiane są na jakiś czas więc myślę, że możliwość jest. Pozdrawiam! |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 709 Pomógł: 176 Dołączył: 24.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ciasteczkami zbyt łatwo manipulować. Do logowania sesja nadaje się idealnie.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Z ciasteczkami mozna rozwiazac problem typu zapamietaj logowanie, wiec wykorzystalbym i sesje i cookies, ale dodajac zakodowane np id+losowo generowany hash
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 39 Dołączył: 7.11.2010 Skąd: Raz tu, raz tam Ostrzeżenie: (30%) ![]() ![]() |
tylko sesja+cookie, sama sesja to bezsens chyba, ze chcesz wnerwic ludzi ktorzy co chwile beda musieli sie logowac.
w cookie zamiast loginu i hasla a przynajmniej zamiast hasla trzymac jakis zahashowany kod Ten post edytował ciekawskiii 18.08.2012, 10:04:37 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
Jest jeszcze jeden sposób, którego używam w kilku mniej krytycznych projektach:
Zasada działania jest następująca: W cookie trzymasz pary "klucz" : "wartość", np: login: admin expire: timestamp permissions: [insert, update, delete], I dokładasz ostatnią parę: checksum: checksum-hash Checksum czyli suma kontrolna zwiera sumę kontrolną z całej zawartości cookie wcześniej posolonej. Zmieniając sól powiedzmy raz dziennie, praktycznie nie ma szans żeby to złamać. Każda próba ręcznej zmiany zawartości cookie spowoduje błąd. Takie rozwiązanie będzie miało bardzo dużą wydajność, bo nie musisz odczytywać sesji przy każdym wywołaniu z plików tymczasowych czy bazy danych. Użytkownik dostarcza informacje o sobie samym wewnątrz nagłówka cookie przy każdym połączeniu Ten post edytował wNogachSpisz 18.08.2012, 11:16:13 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 0 Dołączył: 4.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
A może nakieruje mnie ktoś jak to zrobić? Mam na myśli sesje + ciasteczka, żeby nie trzeba było się logować co chwile.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 97 Pomógł: 15 Dołączył: 12.08.2012 Skąd: Zabrze Ostrzeżenie: (10%) ![]() ![]() |
Ciasteczka służą po to by przechowywać ID sesji, z odpowiednim czasem są ciasteczkami sesyjnymi (usuwane po wyłaczeniu przeglądarki/karty przeglądarki). Wszelkie sesje to po prostu kojarzenie użytkownika z zapisanymi danymi na podstawie losowego klucza, czyli ID sesji - proste.
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 0 Dołączył: 4.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
W takim razie jak przykładowo zrobić opcję "Zawsze zalogowany" lub żeby wylogowywało po ustalonym czasie?
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 97 Pomógł: 15 Dołączył: 12.08.2012 Skąd: Zabrze Ostrzeżenie: (10%) ![]() ![]() |
Cookie z losowym toknem przechowywanym również w bazie (nic na podstawie loginu/hasla, zwykly mt_rand()), ustawione na odpowiedni czas. Jeśli użytkownik wchodzi z tokenem, szukasz w bazie takowego i jeśli istnieje, automatycznie go logujesz.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.09.2025 - 01:34 |