Ne bir giriş sistemi için bir çerez saklanmalıdır?

4 Cevap php

Kalıcı bir giriş yapmış devlet tutmak için bir çerez saklamak için en iyi şey nedir?

Ben pek çok web sitesi (ve acemi eğitimlerini!) Sadece bir çerez = 1 VALIDUSER gibi bir şey saklamak gördük. Açıkçası ben bu parodi verebilir ve web sitesi ben geçerli bir kullanıcı olduğunu düşünürdüm.

Kullanıcı adı tanımlama içinde saklanan Eğer benim isteği onun / onun adı ile bir çerez göndererek herhangi bir kullanıcı gibi maskeli olabilir.

Eğer çerez and şifre kullanıcı adını saklamak, o zaman ben Etkili kullanıcı otomatik olarak kaydedilir oturum açmak için kullanıcı adınızı ve şifrenizi bilmeniz gerekir - bu onun tarayıcı tarafından kaydedilen parolayı sahip olmak gibidir. Bunun yerine kendini kutularına her zaman kimlik bilgilerini yazmak zorunda, tarayıcı otomatik olarak her sayfa isteği ile onları gönderir.

Ama bu yine de kötü bir fikir mi? Bir düz metin parola saklama parlak bir fikir değil, ama içeri giriş zaman POST veri gönderilen olurdu Ve ayrıca, bu karma saklanan olabilir nasıl. Ama yine de onunla rahat hissetmiyorum.

Belki çerezleri bir oturum kimliği dışında bir şey saklamak için kullanılan olmamalıdır, ve kullanıcı veri sunucusu kendisi depolanır. Yani sunucusu paylaşılan olmadığını varsayarsak, belki de bunun için daha güvenli bir yer olduğunu.

Böyle bir forum yazılımı gibi bazı açık kaynak yazılım bakarak, onlar daha karmaşık bir sistemi kullanmak, ama kod kaymağını itibaren yaptığını tam olarak anlayamadı.

Standart "en iyi uygulama" nedir?

4 Cevap

En iyi uygulama kullanım verileri için yerine bir COOKIE'den bir SESSION kullanmak olacaktır. COOKIE'LER genel bilginin bir kullanıcı hakkında belirli olmayan bilgileri saklamak için kullanılır, o oturumlar için kullanılır budur.

En iyi uygulama rasgele oluşturulmuş bir session id saklamaktır. Oturumu sonra kullanıcı kimliği veya başka ne bunu saklamak gerekir saklar. Sadece çerez, $ _SESSION dizi veri değil depolama hakkında endişelenmenize gerek bu yüzden PHP session_start() yöntemi otomatik olarak, oturum kimliği ve PHPSESSID adında bir çerez oluşturur.

Bir tanımlama olmalıdır tek şey PHP tarafından oluşturulan oturumkimliği (ve oturumları kullandığınızda bu otomatik olarak yapılır). Sen "beni hatırla" onay kutusunu amacıyla belki bir hatırladı adı dışında çerez şey saklamak gerekir.