![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 0 Dołączył: 7.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Chciałem na swojej stronie umieścić przycisk "Zapamiętaj Mnie" lecz na przeszkodzie stoi to, że nie wiem jak to zrobić. Tzn. w pewnym sensie umiem to zrobić, ale nie tak żeby było to bezpieczne.. Chodzi mi o to aby w Ciasteczkach nie zapisywać Loginu i Hasła bo to jest złoo.. Byłem już na kilku/nastu linkach, np: http://forum.php.pl/index.php?showtopic=150258 http://forum.php.pl/index.php?showtopic=133583 I wszędzie piszą o zapisywaniu danych w ciasteczkach.. Moje pytanie brzmi: Generując losowy klucz, np rand(1111,9999); lub md5(uniqid(true, rand())); i zapisując go w cookie, a następnie czytając przez stronę - czy będzie to bezpieczne? - Chyba nie.. bo każdy może sobie ten klucz wyedytować w cookie i będzie kupa :/ Prosiłbym o jakieś sensowne propozycje jak mogę to zrobić.. Pozdrawiam. Ten post edytował Weles 2.10.2011, 12:10:28 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Czemu uważasz że nie będzie to bezpieczne? Jeśli każdy będzie miał unikatowy dla siebie klucz, do tego zakodowany, np. md5($login.$haslo) i to umieścisz w ciasteczku to żeby zalogować się jako ktoś inny edytując ciasteczko będzie musiał wiedzieć w jaki sposób kodujesz to co jest w środku i co kodujesz, do tego będzie musiał znać czyjś login i hasło jak już pozna metodę kodowania.
-------------------- Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 417 Pomógł: 44 Dołączył: 23.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Ja mam zrobione zapamiętanie na takiej zasadzie:
-Każdy użytkownik ma swój unkalny KEY - hash złożony z 25 liter/cyfr -po kliknięciu "Zapamiętaj mnie" sprawdzane jest czy użytkownik zalogował się poprawnie, i po tej czynnosci ustawiam ciasteczko z KEYEM danego użytkownika. -przy wchodzeniu na strone jest sprawdzane czy cookie "zapamiętaj " != 0 (przy kliknięciu wyloguj ustawia cookie 0) jeśli jest różne od 0 sprawdza zawartość, porównuje z wpisami z bazy i ustawia sesję odpowiadającą uzytkownikowi danego KEYA. W moim mniemaniu jest to w miarę bezpieczne. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 594 Pomógł: 122 Dołączył: 17.07.2005 Skąd: P-na Ostrzeżenie: (0%) ![]() ![]() |
trzymanie tego klucza jest tak samo bezpieczne jak trzymanie klucza sesji w ciachu, jak Ci ktos zaiwani to wejdzie na Twoje konto (oczywiscie zalezy jeszcze od tego czy sesja ma dodatkowe zabezpieczenia po stronie serwera)
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 417 Pomógł: 44 Dołączył: 23.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli zależy Ci tak cholernie na bezpieczeństwie to odpuść sobie tę funkcję. Jest ona potencjalnie niebezpieczna i kazdy o tym wie. A jeśli można to zrobić zachowując przy tym poziom bezpieczeństwa to na pewno nie w taki łatwy sposób.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 64 Pomógł: 5 Dołączył: 16.08.2011 Ostrzeżenie: (0%) ![]() ![]() |
W sf_guard_plugin dla Symfony 1.4 z tego co pamiętam było to rozwiązane w następujący sposób:
w cookie był przetrzymywany tzw. remember_key w bazie była tabela z indeksem remember_key, ip, czasem itp sprawdzane wartości, możesz dodać przeglądarkę, system itd. był oczywiście również nr. id konta użytkownika. i tak sobie PHP sprawdzało co potrzebowało, jeśli wszystko się zgadzało, remember_key nie wygasł itd to user był logowany. Post oparty na zamglonych wspomnieniach ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 03:25 |