Jag har ett problem med form authentication. (Jag har läst och sökt här på pellesoft men mitt problem kvarstår) Du kan testa följande kod för att påtvinga omladdning I min applikation har jag skapat en mapp som heter "secret" och där lagrar jag allt som ska skyddas vid inloggning. Default (inloggningssidan) ligger alltså inte i denna mapp utan i rot-mappen som vanligt. Dessutom så har jag en web.config även i secret-mappen och allt fungerar ypperligt. Nisse. Japp har med <deny user="?"> Jo det går.. du kan lösa det med Location. Pillat lite i helgen har jag gjort, men inte fått det att fungera direkt, jag kan skriva i url: trots deny usesr="?" Jaha... Jag har testat med båda delarna, med kvarvarande cookie, och utan.. och jag har tömt cookies på datorn. Det känns som jag gjort mycket men ingenting rätt. För tillfället ser den ut såhär: Du har ju inte sagt hur Form skall skyddas :-) oj då, trodde att om jag hade deny user där nere så behövd man inte det där uppe.... knäppt men sant ...återkommer snart......testar lite och medelandet som stod här innan är inte längre aktuellt. Fungerar nu, äntligen tack så mycket. Det är cachen som visar sidan. Men du kan inget göra du skickas till logjn så fort du vill göra nått. Problem med form authentication
Det är så att jag har 2 filer (index.aspx och default.aspx) i samma katalog. I index.aspx finns en usercontrol för inloggningen. Om namn o password finns i en databas så skall användaren bli authentiserad och skickas till default.aspx.
men tyvärr kan man komma åt default.aspx utan att logga in, trotts att jag försökt och härmat aspsidan.nu's enkla inloggnings exempel.
Vad kan felet vara? kan man inte skydda enskilda filer i web,config? eller?
Sidan bygger på att man skickar med parametrar i querystringen och därigenom dynamiskt laddar olika usercontroller.
Har även försökt med det gamla hederliga session sättet med typ Session("inloggad") = true och det fungerar faktiskt bättre, förutom att när man har loggat ut och "dödat "sessionen och sedan trycker på "båkot" i explorer så kan man se den skyddade sidan, men så fort man gör något på dnen så blir man utskickad.
Varför kan man se sidan när man klickar "bakåt"? så blir det inte i php.
Någon som har lösning på både eller något av problemen? Sv: Problem med form authentication
' ser till att sidan läses om
Response.Cache.SetLastModified(Now)
Response.Cache.SetExpires(Now)
Response.Cache.SetCacheability(HttpCacheability.NoCache) ' sidan skall inte cachas
Sv: Problem med form authentication
Sv: Problem med form authentication
har du satt upp <deny user=?> i din web.config ? den är viktig för att du skall få det att fungera.
Har du sedan även satt att login urlen är din (är det index.aspx som är loginsidan?)
Mvh JohanSv: Problem med form authentication
och index.aspx som inloggsurl
Det spelar ingenroll om den är en usercontrol i index.aspx som sköter inloggningen eller?
behöver jag ha någon
location path="default.aspx"?
eller det kanske inte går att göra så till en fil?
vill helst ha båda filerna i roten, men det kanske inte går och i så fall får jag väl lägga den skydda sidan i någon mapp.Sv: Problem med form authentication
Men frågan är. Vad händer när du går mot din login.aspx eller där du har din usercontrol? visas den?
Kan du komma åt andra sidor via URLen utan att behöva logga in fast du satt deny user=? ?
Du får uppdatera mitt minne, antar att du fårr pillat en del under helgen? kanske tom, löst det?
Mvh JohanSv: Problem med form authentication
men jagg har nog kommit på lösningen ändå,
formauthentication fungerar bara mot IIS, eller?
jag testar mog webmatrix inbyggda server, och det kan väl vara en stor orsak till att det inte fungerar eller?
om så är fallet ber jag så mycket om ursäkt och tackar för möda ni lagt ner,Sv: Problem med form authentication
För FormAuthentication körs som en HTTPModul innan man når din sida där den gör kontroller om du är inloggad eller ej. Vilket sköts av ASP .Net runtime, så den är inte bunden till server. Det är inte så att du råkat sätta en coockie som fortfarande lever?
Vad har du satt på createPersistentCookie ?
Mvh JohanSv: Problem med form authentication
Jag har kört mycket trail and error, tyvärr har det bara blivit error :)
kom på ett grej till som jag inte testat än, om man lägger de usercontroller som skall visas i default.aspx(den "skyddade" sidan) i en undermapp och man skyddar de istället för default.aspx, skulle det kanske vara en möjlighet?
Då kommer man ku mer på den linje som exemplet ovan med en "secret" mappSv: Problem med form authentication
<configuration>
<system.web>
<authentication mode="Forms">
<forms loginUrl="login.aspx" protection="All" timeout="30">
</forms>
</authentication>
</system.web>
<location path="default.aspx">
<system.web>
<authorization>
<deny users="?" />
<allow users="*" />
</authorization>
</system.web>
</location>
</configuration>
OM man tar bort <authentication> taggarna och de taggarna inom dem så skyddar man default.aspx... men man kan då inte logga in heller.
Ni kommer säkert att hitta fel i min web.config, det hoppas jag på iallafall.Sv: Problem med form authentication
Så det finns inget skydd aktivt.
<authorization>
<deny users="?" />
<authorization>
Lägg den efter din</authentication>
Skall nog lösa problemet. Tog bara en snabb titt, brådis till maten...
Mvh JohanSv: Problem med form authentication
Då skall jag testa det... jag återkommer.Sv: Problem med form authentication
Sv: Problem med form authentication
Ett problem kvarstår dock.
Att man kan trycka på backknappen och se den sidan man varit innepå senast som inloggad.Sv: Problem med form authentication
Mvh Johan