I am developing a PHP-based login system. Each user has an ID(a number) and a password, which is stored as a salted hash.
Bir giriş sucessful olup olmadığını anlamaya muktedir değilim, ama (kullanıcı kalıcı dışarı oturum değil ki) şimdi ben bir yere bu bilgileri saklamak gerekir.
In the past, I've played with $_SESSION variables. However, these seem to be deleted when the user leaves the browser, which is undesired. Also, I can not "assume" that the user won't try to trick the system, so it has to be safe.
Yani, benim sorular şunlardır:
- Ben kullanmalı mıyım
$_SESSION
veya$_COOKIE
? Bu yaklaşımların her birinin başlıca avantajları nelerdir? - Nasıl bir 'Beni hatırla' kutusunu uygulamak?
- Hangi bilgiler session / cookie değişkeni saklanmalıdır?
Hiçbir veritabanı güvenlik sorunları özellikle bu soru dikkate alındığını unutmayın.
3 numaralı ilişkin, ne tam olarak demek:
- Ben çerez / oturumda kimliği ve kullanıcı karma parolayı depolamak veya Should
- Ben çerez / oturumda kimliği ve kullanıcı olmayan karma şifre saklamak, ya da olmalıdır
- Ben bir "Sessionıd" ve parolayı depolamak olmalıdır (karma veya non-karma?) Veya
- Ben bir "Sessionıd", "kimliği" ve şifre (tekrar, karma veya non-karma) muhafaza edilmelidir?
I want to keep my website as safe but efficient and user-friendly as possible. If a SessionID-based approach is taken, I'd also appreciate some explanation regarding how to store it in the database.
Şimdiden teşekkürler
EDIT: Eran ait ve birleştirilmiş Brian'ın cevapları ne gerek gibi görünüyor. Kabul ettiği gibi ne yazık ki, ben onlardan sadece birini işaretleyebilirsiniz. Devam edin ve bir daha yararlı olduğunu görmek için uygulamaya çalışacağım.