Jag har byggt en webshop åt ett företag, vars säljare använder den för att lägger beställningar över nätet.
Shopen har varit igång i över 1 års tid och fungerat bra, men sedan 1 vecka tillbaka går all surfning via en proxyserver i utlandet. I samband med detta uppstod följande problem.
En säljare loggar in i webshopen med användarnummr 1111 och börjar "handla", under tiden loggar nästa säljare in med sitt nummer 2222 för att handla. Den senaste säljare kommer då in som 1111 och fortsätter handla på samam "session" som den tidigare säljaren. Detta gör att kundvagn m.m blir helt fel. Dom får helt enkelt samma session id.
Jag har i IIS:en ändrat till "Enabled Content Expiration Immediatly", samt satt i global.asax att den inte ska casha, men utan resultat.
Har även provat att skicka sessionen i querystringen via web.config (cookieless="true"), men inte heller det har hjälp.
De har även lagt till i sin Proxy ISA Server att den inte ska casha det domännamn som shopen använder sig utav, dock utan resultat.
Något som vet något mer jag kan prova, jag har verkligen kört fast.
Det där får mig osökt att börja undra hur säkert det egentligen är att använda sessions för att identifiera en användare för en webshop. Hur säkert är egentligen sessions, kan de tappas och blandas ihop?. Eller finns det nåt som är säkrare?
Om Sessions är säkert eller ej är ingen glasklar fråga.
Till mycket så handlar det om ifall utvecklaren har byggt en sajt med säkerhet i åtanke under hela processen. Med hjälp av olika tekniker kan nämligen någon stjäla andras sessioner och på så sätt lura sidan. Detta görs genom säkerhetshål i sidan och är inget som härör Sesssions, som i sig varken är osäkra eller inte, utan bara är ett slags temporärt lagringsutrymme.
Är sessions 100% säkra vad det gäller den aspekten?
Finns väl ingen applikation som är 100% bugfri, men jag har aldrig hört att en server blandat ihop sessionenerna. Man skall dock tänka på ett SessionsID inte är unikt över tiden, utan endast så länge som servern inte startas om. Vilket betyder att man ALDRIG skall ha SessionsID som id för en beställning/användare osv osv ....