[ oggie @ 11.12.2006. 13:40 ] @
| Imam Login formu za autentifikaciju usera. Unese se Username i Password i na klik dugmeta proveravam u SQL bazi da li user postoji i ako postoji redirektujem na drugu stranu.
Ono sto je bitno da naglasim je da mi se cela logika uloga, korisnika, dozvola za pristup... nalazi u SQl bazi.
Sad me muci kada kazem Logout sta sve treba da uradim na tom eventu sem sto ga redirektujem na Login formu. Znaci kako da ubijem sve promenljive, kako da ga onemogucim da u browseru klikne back i da dobije prethodnu stranicu i sl.
|
[ Shevchenko @ 11.12.2006. 14:46 ] @
Pa samo stavi u Page_Load
Code:
if (!User.Identity.IsAuthenticated)
Responce.Redirect("Default.aspx);
Ovo ako koristis LogIn kontrole.
E ako si ceo LogIn odradio rucno onda sve zavisi od nacina na koji si to uradio :)
[ Fedya @ 11.12.2006. 15:35 ] @
U global.asax.cs postoje dogadjaji Application_AuthenticateRequest i Application_AuthorizeRequest koji sluze za custom loggin.
[ oggie @ 12.12.2006. 07:41 ] @
Ja radim u ASP 2.0 i nemam global.asax.
1. Imam default formu i na njoj Login kontrolu iz .NET 2005
2. Unesem username i password, proverim u bazi da li to postoji i ako je ok ja kazem
e.Authenticated = True
Prijava.DestinationPageUrl = ("PrvaForma.aspx")
3. E sad mislim da prijava nije problem kao odjava, tj Logout
4. Ja sam opciju Logout stavio u meni koji mi se nalazi sa strane u master page-u
5. Kad klikne na Logout ja ga redirektujem na formu Login, ali znam da to nije dovoljno
6. Znaci interesuje me gde treba jos da napisem kod da ne radi kesiranje, da ne moze sa back u browseru da se vrati na stranicu, da nema kolacice itd....Tu nemam iskustva sta treba rucno odraditi posto ja ne koristim alate iz .NET 2005 kao onaj Administration tool il ista vec imaju. Meni je cela logika pristupa u bazi i tamo proveravam ko ima kakva ovlascenja.
[ Smireni Magnet @ 12.12.2006. 08:37 ] @
>
protected void Page_Load(object sender, EventArgs e)
{
Session.Abandon();
FormsAuthentication.SignOut();
Response.Redirect("login.aspx");
}
----------------------------------------------------------------------------
WebMax! - Internet Crna Gora Service
[ oggie @ 12.12.2006. 08:42 ] @
Ali i dalje sa back u browseru mogu da se vratim na stranicu i radim tamo gde je neko bio.
[ Radudzoni @ 13.12.2006. 07:38 ] @
Ali samo mozes da se vratis na nju i da je gledas, a cim budes imao neku akciju (klik na dugme i sl) aplikacija ce te vratiti na LogIn stranu...
[ oggie @ 13.12.2006. 07:59 ] @
1. Nije bas tacno da mogu da samo pregledam stranicu, kad kliknem na dugme on krene u akciju ali ne moze da odradi jer nema promenljive, ali me ne vraca na Login page
2. Ali i taj princip "moze samo da pregleda" mi se ne svidja, sta ako je u pitanju npr. pregled tekuceg racuna i uplata, znaci neko se sa back vrati i procita kolike su necije uplate i isplate....
Mislim da je ovo ozbiljan problem i na mnogim forumima se postavlja isto pitanje ali niko bas nema zadovoljavajuce resenje ili se meni tako cini.
Cak su neki konstatovali da bi najkorektnije resenje bilo da se u browseru disable-uje Back dugme.
A citao sam i o kesiranju, proxy server vrsi svoje kesiranje tako da iskljucivanje opcije za kesiranje mnogima nije resilo problem.
Hvala na odgovorima, problem je i dalje otvoren pa ako neko ima iskustva sa ovim....
[ oggie @ 20.12.2006. 11:21 ] @
Jos uvek nisam nasao odgovor kako da sprecim korisnika da sa Back dugmetom vidi sadrzaj prethodne stranice.
Zar niko ne zna resenje? Ovo mi se cini bas kao ozbiljan problem.
Radudzoni, sta treba da uradim da me klik na bilo koje dugme vrati na Login stranu, kod mene ovo ne radi definitivno.
[Ovu poruku je menjao oggie dana 20.12.2006. u 13:46 GMT+1]
[ maksvel @ 20.12.2006. 20:36 ] @
Citat: oggie: Jos uvek nisam nasao odgovor kako da sprecim korisnika da sa Back dugmetom vidi sadrzaj prethodne stranice.
Zar niko ne zna resenje? Ovo mi se cini bas kao ozbiljan problem.
JavaScript? Ili možda neki brojač u Load-u?
[ Dejan Vesic @ 21.12.2006. 08:58 ] @
U vrhu te strane postavi:
<%@ OutputCache Location="None" VaryByParam="none" NoStore="true" %>
ili
<%@ OutputCache Duration="1" Location="None" VaryByParam="none" %>
[ oggie @ 21.12.2006. 09:49 ] @
Sad sam nesto isprobavao. Na page load svake strane sam stavio:
Response.Cache.SetNoStore()
Response.Cache.SetCacheability(HttpCacheability.NoCache)
Response.Cache.SetAllowResponseInBrowserHistory(False)
A onda na login page definisem promenljivu
Me.Session.Add("UserName", Prijava.UserName.ToString)
A onda na master page load kazem
If Session.Item("UserName") = "" Then
Response.Redirect("Login.aspx")
Else
lblLogin.Text = "Ulogovani ste: " & Session.Item("Username")
End If
Response.Cache.SetNoStore()
Response.Cache.SetCacheability(HttpCacheability.NoCache)
Response.Cache.SetAllowResponseInBrowserHistory(False)
Ovo lici da radi, ali moram da istestiram.
Hvala svima na pomoci
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|