ASP.Net MVC'de (veya genel olarak yalnızca çerez işleme) çerezlerle ilgili bazı yönlendirme arıyorum. Bir çerezde form girişi aracılığıyla kimlik doğrulaması yapan kullanıcılar hakkında kimlik doğrulama bilgileri depolamaktayım. Bu harika çalışıyor, ama şimdi çerezde biraz daha fazla bilgi depolamam gerekiyor. Bu ek bilgi gerçekten "kimlik doğrulamasıyla ilişkili" değil, bu yüzden kimlik doğrulama biletinde saklamaktan çekiniyorum. Ek bilgi saklamak için daha iyi bir uygulama var mı. Birden fazla çerez ayarlamak mümkün mü (eğer böyle bir şey iyi/kötü bir uygulamasa)? Burada düşünmem gereken başka şeyler var mı?ASP.Net MVC Çerezleri En İyi Yöntemler
private HttpCookie GetAuthCookie(AuthToken authToken)
{
var authTokenXml = serializationService.Serialize(authToken);
var authCookieString = FormsAuthentication.Encrypt(
new FormsAuthenticationTicket(
0,
Keys.AuthToken,
DateTime.Now,
DateTime.Now.AddMinutes(AppSettings.SessionTimeoutMinutes),
true,
authTokenXml));
var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, authCookieString)
{
Expires = DateTime.Now.AddDays(AppSettings.AuthCookieExpireDays)
};
return cookie;
}
Evet, tanımlama bilgisi yaklaşımına alternatif olarak SQL Server Oturum Durumunu kullanmayı düşünüyorum. Kaydetmem gereken ek veriler küçüktür (muhtemelen 20 karakter), bu nedenle tel üzerinde veya çerez boyutu açısından fazla yük eklememelidir. Gerçekten daha iyi bir uygulama olmadığı sürece bu ek bilgiyi saklamak için bir veritabanı kullanmaktan kaçınmayı umuyorum ve bu yüzden buradaki soruyu sordum. Geri bildiriminiz için teşekkürler. – Paul
sadece 20 karakterse, muhtemelen çerezde herhangi bir zarar görmüyor. Eğer bu küçük olsa da, proc oturumunu kullanarak da iyi bir uyum olabilir. Belki iki yolu da dene ve hangisinin tercih edildiğini görüyor musun? –