Ben şuanda proje yapıyorum. Kullanıcı bilgilerini [ad,soyad,mail] Cookie de tutuyorum. Ömrü Session ile aynı. Sayfa kapanana kadar yada cıkış yapılana kadar. Hocamız ısrarla Session kullanmamı söylüyor. Ben ikisi arasında güvenlik olarak bir fark göremiyorum bu işlemde. Bu ısrarın nedeni nedir acaba? [şifre tutucak olsaydım, cookie içeriği öğeyi denetleden göründüğü için Sessionda tutacakdım].
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
Bildiğim kadaıryla cookie web tarayıcısında tutuluyor. Hackerlar cookie sniffing ile cookieleri çekebildiği için güvenlik zafiyeti oluşturuyor. Bu yüzden session da tutmanı istiyor olabilir.
Cookieler tarayıcı üzerinde tutuluyor. Eğer projende herhangi bir XSS açığı varsa 3. bir kişi javascript yardımıyla kolaylıkla bu cookieye erişebiliyor. Session sunucu tarafında saklandığı için buna doğrudan erişim cookieye göre daha zor. Session da tamamen sunucu taraflı olduğu söylenemez zaten. PHP için söylüyorum bir session başlatıldığında aynı anda kullanıcı tarayıcısında PHPSESSID isimli bir çerez de başlatılır. Bu çerezde sadece sunucu tarafındaki session dosyasıyla eşleşme yapabilmesi için bir hash anahtar bulunur. Diğer tüm bilgiler sunucu tarafında depolanır. Buradan cookieler tamamen güvensizdir anlamı da çıkmasın. Bir çok web sitesi kullanıcıları hatırlamak için cookie kullanıyor zaten. Ayrıca cookilerde HttpOnly denen bir sistem de vardır. Bunu aktif ettiğinde javascriptin ilgili çereze erişimini engellemiş olursun.
Cookie ler windows ile etkilesimli olarak windows a dosya acip kayit tutuyor. Session lar daha sanal. Sadece o an web arayuzu ile etkilesimli calisiyor. Dosyaya kayit atamiyor. Sayfayi acilip kapanma zamanina kadar islevi.
Genelde olarak session da cookie de bir anahtar kelime tutar. hocanın kafasında ne var bilemem lakin cookie de tutabileceğin verinin bir sınırı var. Sessionda böyle bir kısıtın yok. Veriyi cookie yazdın bu veriyi her request de iletmen gerekiyor bu da veriboyunu artırıyor. cookie başka siteler tarafından da okunabiliyor. Session da bir noktada öyle o yüzden sensitive data tutmamalısın.
fark var tabi. Cookie kullanının bilgisayarında bir veri iken session senin sunucunda (inmemory veya distributed) tutulan bir veri. Ayrıca her veri her request de gidip geldiği için eğer https değilse ağı sniff eden bir kişi rahatlıkla bilgileri görebilir. İkisinde de sensitive data tutmamalısın. Ama cookie de hiç tutmamalısın.
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.