Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Logowanie za pomocą $_COOKIE
maly_pirat
post
Post #1





Grupa: Zarejestrowani
Postów: 215
Pomógł: 0
Dołączył: 13.06.2007

Ostrzeżenie: (0%)
-----


Witam, pisałem ostatnio formularz logowania do serwisu, bazowałem na "myśli", którą padła w php-fusion.
Po prawidłowym logowaniu ustawiam cookie dla użytkownika, które wygląda w postaci:
ID-USER.USER-HASH

User Hash generuje się automatycznie podczas rejestracji (md5(uniqid());).
Proces logowania wygląda na zasadzie:

Kod
- Jeśli masz ciastko (idziesz dalej):
-- Rozbijam ciastko na ID, oraz Hash
--- SQL sprawdzam czy istnieje taki użytkownik (z tym ID + hash)
---- Jeśli tak to jesteś zalogowany


Jednak po paru chwilach miałem mieszane uczucia co do tego rozwiązania, bo przecież jeśli ktoś wygranie z komputera
owe ciastko, to będzie miał dostęp do jego konta. Lub też będzie znał jego hash (oczywiście hash nigdzie nie jest wyświetlany, przetrzymywany jest w bazie) i też będzie miał dostęp.

Tak więc czy ten sposób jest niebezpieczny? w jaki sposób powinien weryfikować użytkowników przy rejestracji (poza sesja) chciałbym aby auto logowanie było ON.

Chciałbym dodać, że każdą wartość, $_COOKIE filtruje przez mysql_real_escape_string.

Ten post edytował maly_pirat 10.08.2009, 09:32:48
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Unik2psc
post
Post #2





Grupa: Zarejestrowani
Postów: 16
Pomógł: 1
Dołączył: 27.07.2009

Ostrzeżenie: (0%)
-----


własna tablela USER_SESSION + $_SESSION[]
Table session:
user_id
user_session
session_time


tego tlumaczyć nie musze, a co do autologowania nie zrobisz inaczej niż na ciasteczkach chyba że oprzesz na/dodasz do tabeli:
session_ip
session_auto 0/1

ale w tym momencie moga byc konflikty (jesli ktos jest z sieci) lub jak ktos ma zmienne IP.

co do hasła - ja mam hasowane w sposób

sha1(LOGIN.':'.HASLO) + podniesienie loginu i hasla do duzych liter.

Ten post edytował Unik2psc 10.08.2009, 09:54:52
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 05:55