|
| Session og Applications resettes Fra : Peter Nielsen |
Dato : 22-01-08 00:02 |
|
Hej NG,
Jeg har et webhotel (wannafind og unoeuro) hvor jeg sidder og
laver et loginsystem på hvor man kan logge ind (sjovt nok) og så
skulle man gerne kunne blive logget ind da det er en lukket side.
Problemet er nu at mine Sessions i hele tiden bliver resettet...
så folk bliver logget ud. Så prøvede jeg at lave en iframe oppe
i hjørnet som skulle opdatere sig selv og derved sætte sessions
til at opdatere sig selv.. så det ikke bare var fordi at folk var
for inaktive på en side eller for lang tid om at skrive en nyhed
eller et indlæg. Men uanset hvad så virker det ikke.. folk bliver
stadig logget ud. Jeg har lige lavet lidt kodesnip af det oppe
fra iframet... som i kan se har jeg også prøvet at smide Cookies
på:
if request.cookies("kontor")("userid")>0 then
session("user_id") = request.cookies("kontor")("userid")
session("admin") = request.cookies("kontor")("admin")
session("login") = true
end if
if mode = "login" then
username = replace(request.form("username"),"'","''")
password = replace(request.form("password"),"'","''")
set rs = conn.execute("SELECT * FROM users WHERE username='"&
username &"' AND password='"& password &"'")
if not rs.EOF then
session("admin") = rs("admin")
session("login") = true
session("user_id") = rs("id")
session.timeout = 300
end if
response.redirect(thissite)
end if
%>
<html>
<head>
<%
if Login = True then
%>
<meta http-equiv="REFRESH" content="180;URL=<%=thissite%>">
<%
else
%>
<script language="JavaScript">
<!--
alert("Du er ikke længere logget ind - Du skal straks udfylde dit
brugernavn og password i højre hjørne for at kunne fortsætte dit
arbejde!");
document.forms["form2"].userid.focus();
-->
</script>
<%
end if
%>
Håber i kan se hvad det er jeg prøver på her... Og er der nogle
der har en ide om hvorfor det ikke virker... Har fået at vide af
en, at sådan nogle hoteller hvis de har for lidt ram, at de kan
finde på at "koldstarte" serverne... noget med at de bliver
genstartet uden at blive genstartet rigtigt... men det slettet
bl.a. sessions og applications.
Men lige nu vil jeg gerne bare se om folk har andre metoder til
at holde en logget ind på jeres adminsider :)
MVH
Peter Nielsen
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Christian R. Larsen (22-01-2008)
| Kommentar Fra : Christian R. Larsen |
Dato : 22-01-08 10:02 |
|
"Peter Nielsen" <pedn@pedn.dk> wrote in message
news:4795245b$0$90267$14726298@news.sunsite.dk...
> Hej NG,
>
> Jeg har et webhotel (wannafind og unoeuro)
Hvor hurtigt taber den sessionen, log taber den også sessionen, hvois
brugeren er aktiv? Umiddelbart lyder det da llidt som et webhotel-problem.
| |
Peter Nielsen (22-01-2008)
| Kommentar Fra : Peter Nielsen |
Dato : 22-01-08 10:53 |
|
> Hvor hurtigt taber den sessionen, log taber den også sessionen, hvois
> brugeren er aktiv? Umiddelbart lyder det da llidt som et webhotel-problem.
Det er meget forskelligt.. nogle gange kører det OK, og andre gange sker det
hurtigt. Det er jo meningen at man godt kan have den browser kørende i
baggrunden uden at ryge af. Ved bare ikke hvorfor... Men håber lidt der findes
en løsning... evt. en alternativ måde at logge ind på?!
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Christian R. Larsen (22-01-2008)
| Kommentar Fra : Christian R. Larsen |
Dato : 22-01-08 10:59 |
|
"Peter Nielsen" <pedn@pedn.dk> wrote in message
news:4795bceb$0$90263$14726298@news.sunsite.dk...
>
>> Hvor hurtigt taber den sessionen, log taber den også sessionen, hvois
>> brugeren er aktiv? Umiddelbart lyder det da llidt som et
>> webhotel-problem.
>
>
> Det er meget forskelligt.. nogle gange kører det OK, og andre gange sker
> det
> hurtigt. Det er jo meningen at man godt kan have den browser kørende i
> baggrunden uden at ryge af. Ved bare ikke hvorfor... Men håber lidt der
> findes
> en løsning... evt. en alternativ måde at logge ind på?!
Jeg tror ikke, problemet ligger i din kode. Kan du ikke prøve at undersøge
det struktureret? Lav noget kode, der forudsætter, at du har en session, og
se, hvornår det stopper med at virke. Lav evt. lidt statistik på det.
| |
Peter Nielsen (22-01-2008)
| Kommentar Fra : Peter Nielsen |
Dato : 22-01-08 11:06 |
|
> Jeg tror ikke, problemet ligger i din kode. Kan du ikke prøve at undersøge
> det struktureret? Lav noget kode, der forudsætter, at du har en session, og
> se, hvornår det stopper med at virke. Lav evt. lidt statistik på det.
Det er jo sådan set det jeg gør i hele tiden... altså det er det funktionen
der er til. Den tjekker jo om Session stadig er der.. i hele tiden. Og
pludselig ryger den af. Jeg laver jo faktisk også sådan at den skriver
sessionen igen bare for at være sikker på at den ikke timeouter men alligevel
forsvinder den.
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Christian R. Larsen (22-01-2008)
| Kommentar Fra : Christian R. Larsen |
Dato : 22-01-08 12:46 |
|
"Peter Nielsen" <pedn@pedn.dk> wrote in message
news:4795bfee$0$90267$14726298@news.sunsite.dk...
>> Jeg tror ikke, problemet ligger i din kode. Kan du ikke prøve at
>> undersøge
>> det struktureret? Lav noget kode, der forudsætter, at du har en session,
>> og
>> se, hvornår det stopper med at virke. Lav evt. lidt statistik på det.
>
> Det er jo sådan set det jeg gør i hele tiden... altså det er det
> funktionen
> der er til. Den tjekker jo om Session stadig er der.. i hele tiden. Og
> pludselig ryger den af. Jeg laver jo faktisk også sådan at den skriver
> sessionen igen bare for at være sikker på at den ikke timeouter men
> alligevel
> forsvinder den.
Men hvis det sker periodisk er det 99,9% sikkert hostingcenteret, den er gal
med. Har du prøvet at kontakte dem?
| |
Peter Nielsen (22-01-2008)
| Kommentar Fra : Peter Nielsen |
Dato : 22-01-08 13:14 |
|
> Men hvis det sker periodisk er det 99,9% sikkert hostingcenteret, den er gal
> med. Har du prøvet at kontakte dem?
Jeg kontaktede dem engang fordi at jeg mente at deres session.timeout
instilling var for elendig.. men det har jo så senere vist sig at det ikke er
det... Har ikke prøvet at lave sådan en session.timeout log... Men kan godt
være jeg lige skulle prøve at skrive igen.
Hvad nu hvis man helt droppede Sessions.. og så brugte cookies udelukkende...
er der nogle ulemper ved det?
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Christian R. Larsen (22-01-2008)
| Kommentar Fra : Christian R. Larsen |
Dato : 22-01-08 13:33 |
|
"Peter Nielsen" <pedn@pedn.dk> wrote in message
news:4795de13$0$90271$14726298@news.sunsite.dk...
>
>> Men hvis det sker periodisk er det 99,9% sikkert hostingcenteret, den er
>> gal
>> med. Har du prøvet at kontakte dem?
>
> Jeg kontaktede dem engang fordi at jeg mente at deres session.timeout
> instilling var for elendig.. men det har jo så senere vist sig at det ikke
> er
> det... Har ikke prøvet at lave sådan en session.timeout log... Men kan
> godt
> være jeg lige skulle prøve at skrive igen.
>
> Hvad nu hvis man helt droppede Sessions.. og så brugte cookies
> udelukkende...
> er der nogle ulemper ved det?
Ja, sikkerhedsmæssigt er det en dårlig løsning. Du vil skulle kontrollere,
om brugeren er logget ind, ved at læse i cookien. Mange brugere logger ud
ved at lukke browseren og dermed afbryde sessionen. Men det dur jo ikke her,
for det betyder, at du ikke får mulighed for at fjerne "er logget ind" fra
cookien igen. Så i cookien står der stadig et brugernavn og et password.
Næste gang en eller anden vil logge ind fra den pågældende bruge maskine
findes cookien derfor stadig på harddisken, og vupti - vedkommende vil være
logget ind. Og du jo så kan ikke styre det, ved at checke, om log in fandt
sted i en tidligere session, for du har jo netop ikke session ID'et til
hjælp længere.
| |
Peter Nielsen (22-01-2008)
| Kommentar Fra : Peter Nielsen |
Dato : 22-01-08 15:20 |
|
Ja ok... Men det er jo også kun ud fra den forudsætning at det er på
"delemaskiner" at siden bliver brugt. Jeg ved godt at det stadig er sådan, men
når man laver en side firmaer.. så er der ikke mange delecomputere længere...
men selvfølgelig. Vil da også hellere ha Sessions til at virke.
Men altså. Mine Applications forsvinder også... og det er da et tegn på at det
er serveren... fordi at sessions skal jo forsvinde igen, men Applications
skulle da gerne blive der?! :) ik? :)
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jørgen Olesen (22-01-2008)
| Kommentar Fra : Jørgen Olesen |
Dato : 22-01-08 20:30 |
|
> > Hvad nu hvis man helt droppede Sessions.. og så brugte cookies
> > udelukkende...
God ide!
Jeg har selv haft problemer med min udbyder (SurfTown), da de køre med en meget
kort session.timeout.
> Ja, sikkerhedsmæssigt er det en dårlig løsning. Du vil skulle kontrollere,
> om brugeren er logget ind, ved at læse i cookien. Mange brugere logger ud
> ved at lukke browseren og dermed afbryde sessionen. Men det dur jo ikke her,
> for det betyder, at du ikke får mulighed for at fjerne "er logget ind" fra
> cookien igen.
Som standard slettes din cookie når browseren lukkes.
Så længe browseren er åben er din cookie aktiv.
>Så i cookien står der stadig et brugernavn og et password.
Gem ikke brugernavn og password i din cookie!
Benyt istedet en anden form for identifikation.
Lås iøvrigt din cookie med domain attributen, så den kun kan læses fra din
side.
> Næste gang en eller anden vil logge ind fra den pågældende bruge maskine
> findes cookien derfor stadig på harddisken, og vupti - vedkommende vil være
> logget ind. Og du jo så kan ikke styre det, ved at checke, om log in fandt
> sted i en tidligere session, for du har jo netop ikke session ID'et til
> hjælp længere.
Og det er så delvist forkert!
Forlader en bruger computeren med browseren åben, så bliver cookien
på computeren. Men, hvor sandsynligt er det?
Cookien slettes når du lukker browseren.
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Peter Nielsen (23-01-2008)
| Kommentar Fra : Peter Nielsen |
Dato : 23-01-08 09:11 |
|
>
> Som standard slettes din cookie når browseren lukkes.
> Så længe browseren er åben er din cookie aktiv.
Hvordan laver du en cookie der sletter sig selv?? Fordi at hele pointen med
cookies som jeg ser det er at de bliver på computeren så jeg kan se næste gang om
brugeren fx har valgt at huske loginet og få automatisk login.
> Gem ikke brugernavn og password i din cookie!
> Benyt istedet en anden form for identifikation.
Jamen så hvis Cookien bare hedder deres ID fx... så kan man jo som bruger bare gå
ind og ændre cookien til 1 og så ved de at de logger ind som den første i
databasen, som jo som regel er admin.
> Lås iøvrigt din cookie med domain attributen, så den kun kan læses fra din
> side.
Hvordan gør man det og hvad gør det siger du? :)
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jørn Andersen (23-01-2008)
| Kommentar Fra : Jørn Andersen |
Dato : 23-01-08 12:46 |
|
On 23 Jan 2008 08:11:25 GMT, Peter Nielsen <pedn@pedn.dk> wrote:
>> Gem ikke brugernavn og password i din cookie!
>> Benyt istedet en anden form for identifikation.
>
>Jamen så hvis Cookien bare hedder deres ID fx...
Hvilket jo ville være totalt tåbeligt ...
>så kan man jo som bruger bare gå
>ind og ændre cookien til 1 og så ved de at de logger ind som den første i
>databasen, som jo som regel er admin.
Det er netop til den slags situationer, at man har hashing. Så er det
ultra-svært (læs: i praksis umuligt) at gætte værdien.
Se fx:
<url: http://www.asp-faq.dk/article/?id=52>
Mvh. Jørn
--
Jørn Andersen,
Brønshøj
| |
Peter Nielsen (23-01-2008)
| Kommentar Fra : Peter Nielsen |
Dato : 23-01-08 14:15 |
|
> Det er netop til den slags situationer, at man har hashing. Så er det
> ultra-svært (læs: i praksis umuligt) at gætte værdien.
> Se fx:
> <url: http://www.asp-faq.dk/article/?id=52>
Hvordan siger du så at jeg kan bruge den?
Anede ikke at MD5 værdier ikke kunne omvendes... Men kan jeg så bruge den til
at holde mig logget ind på cookies i stedet for Sessions? Ved fx at smide md5
værdien i cookies... og evt smide et ekstra tal bagved... fx 1 for at den
skal logge automatisk ind og 0 hvis den ikke skal. og hvordan tjekker den den
så den anden vej? ved at trække md5 værdien ud af alle brugers user og pass
og så tjekke den vej? kan jeg ikke helt lure det både bedste og sikre måde
på?! :)
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jørgen Olesen (23-01-2008)
| Kommentar Fra : Jørgen Olesen |
Dato : 23-01-08 23:28 |
|
Har lige sakset et par link om emnet til dig:
http://www.html.dk/tutorials/asp/lektion13.asp
http://www.udvikleren.dk/ASP/Article.aspx/69/
Med hensyn til din bekymring med Id numre, så gælder det bare om at være lidt
kreativ.
I korte træk så, danner jeg et tilfældigt 24 cifret id nummer når brugeren logger
ind. Det gemmer jeg så henholdsvis i min access database og i brugerens cookie.
Når brugeren tilgår en af de beskyttet sider checker jeg først om cookien eksistere
og dernæst om id stemmer overens.
Ved ikke at angive nogen expire tid, slettes cookien, når brugeren logger sin
browser. Simpelt og effektivt nok.
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
|
|