/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Er Sessions ok?
Fra : Kasper Katzmann


Dato : 19-01-03 22:57

Er sessions OK at bruge set fra et lidt mere professionelt syn.

Jeg mener, man kan jo slå dem fra i browseren, men er det overhovedet værd
at regne med?

--
Mvh
Kasper K
---------------------------------
Find en masse gode svar på de spørgsmål
der oftest stilles i nyhedsgruppen d.e.i.w.s.a
http://www.asp-faq.dk?



 
 
Jimmy (19-01-2003)
Kommentar
Fra : Jimmy


Dato : 19-01-03 23:31


"Kasper Katzmann" <kasper @ FJERNESkatzmann.dk> wrote in message
news:b0f6vj$f90$1@sunsite.dk...
> Er sessions OK at bruge set fra et lidt mere professionelt syn.
>
> Jeg mener, man kan jo slå dem fra i browseren, men er det overhovedet værd
> at regne med?


Har du ikke selv besvaret spørgsmålet?

1 - Du vil anvende dem "professionelt" (Jeg læser dette som erhvervsmæssig
øjemed hvor det er vitalt at koden ikke fejler)
2 - Man kan deaktivere sessions, hvilket vil gøre at koden fejler.
3 - Konklusion - Sessions kan ikke anvendes professionelt


Jeg ser det meget sort og hvidt - Hvis du ønsker "mission critical" kode
skal du naturligvis ikke anvende en teknologi, hvor brugere har indflydelse
på din success rate.

Du kan evt. gardere dig ved at inkludere en asp-side i toppen af *alle* dine
dokumenter, som checker for om en given session-variabel er instantieret.
Denne variabel instantieres i global.asa og sættes med en meget høj timeout.

Er den ikke instantieret afbryder du udførslen eller viser en side, hvor du
beder brugeren slå sessions til.

Andre check kan naturligvis konstrueres, men ovenstående vil virke. Ulempen
er, at den kræver en høj timeout på sessions eller at sessionen også
instantieres ved hver afslutning af en side.


Mvh
Jimmy



TH (19-01-2003)
Kommentar
Fra : TH


Dato : 19-01-03 23:43

Davs,

"Jimmy" <spoerg@efter.den> skrev i en meddelelse
news:4HFW9.4010$kT5.1679@news.get2net.dk...

> Jeg ser det meget sort og hvidt - Hvis du ønsker "mission critical" kode
> skal du naturligvis ikke anvende en teknologi, hvor brugere har
indflydelse
> på din success rate.

Hvad hvis de ikke har en browser? Eller blot folk med tekstbaserede
browsere?

/TH


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.443 / Virus Database: 248 - Release Date: 10-01-2003



Jimmy (19-01-2003)
Kommentar
Fra : Jimmy


Dato : 19-01-03 23:49


"TH" <th@cogito.dk> wrote in message
news:3e2b2a02$0$120$edfadb0f@dtext02.news.tele.dk...
> Davs,
>
> "Jimmy" <spoerg@efter.den> skrev i en meddelelse
> news:4HFW9.4010$kT5.1679@news.get2net.dk...
>
> > Jeg ser det meget sort og hvidt - Hvis du ønsker "mission critical" kode
> > skal du naturligvis ikke anvende en teknologi, hvor brugere har
> indflydelse
> > på din success rate.
>
> Hvad hvis de ikke har en browser?

Så ingenting - Det ville svare til at jeg aldrig besøgte siden, hvilket
næppe får koden til at fejle, da den aldrig afvikles.

> Eller blot folk med tekstbaserede
> browsere?

Hvad med dem?

Der gælder naturligvis samme forbehold. Anvend ikke teknologi der kan fejle
pga. brugere, hvis det er "mission critical" kode der ønskes.

I praksis er dette dog svært at efterleve 100%, hvorfor man blot tager
forbehold for dette, når man afleverer sit produkt til kunden.

Mvh
Jimmy



Jens Gyldenkærne Cla~ (20-01-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 20-01-03 10:28

Jimmy skrev:

> 1 - Du vil anvende dem "professionelt" (Jeg læser dette som
> erhvervsmæssig øjemed hvor det er vitalt at koden ikke fejler)
> 2 - Man kan deaktivere sessions, hvilket vil gøre at koden
> fejler.

Vel ikke nødvendigvis. Det skulle vel nok være til at kontrollere
om session-variable eksisterer eller ej. Hvis ikke, kan man smide
brugeren over på en fejlside, hvor man forklarer at cookies er
nødvendigt på dette site.

På loginbaserede sider er det vel nærmest standard at man
kontrollerer for en sessionvariabel og sender brugeren videre hvis
den ikke findes. Det bør ikke være svært at udbygge det til at
virke på sider hvor der ikke foretages login. Man kan placere en
eller anden tjekvariabel i session_onstart og så tjekke på den
senere.

> 3 - Konklusion - Sessions kan ikke anvendes professionelt

Jeg er ikke enig. Det er mig bekendt ganske almindeligt at kræve
forskellige ting af brugerne - også på professionelle sites.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jimmy (20-01-2003)
Kommentar
Fra : Jimmy


Dato : 20-01-03 11:39


"Jens Gyldenkærne Clausen" <jens@gyros.invalid> wrote in message
news:Xns93096A8073BFEjcdmfdk@gyrosmod.dtext.news.tele.dk...
> Jimmy skrev:
>
> > 1 - Du vil anvende dem "professionelt" (Jeg læser dette som
> > erhvervsmæssig øjemed hvor det er vitalt at koden ikke fejler)
> > 2 - Man kan deaktivere sessions, hvilket vil gøre at koden
> > fejler.
>
> Vel ikke nødvendigvis. Det skulle vel nok være til at kontrollere
> om session-variable eksisterer eller ej. Hvis ikke, kan man smide
> brugeren over på en fejlside, hvor man forklarer at cookies er
> nødvendigt på dette site.

Ja da - Dette beskrev jeg.

> På loginbaserede sider er det vel nærmest standard at man
> kontrollerer for en sessionvariabel og sender brugeren videre hvis
> den ikke findes. Det bør ikke være svært at udbygge det til at
> virke på sider hvor der ikke foretages login. Man kan placere en
> eller anden tjekvariabel i session_onstart og så tjekke på den
> senere.

Ja da - Dette beskrev jeg.


> > 3 - Konklusion - Sessions kan ikke anvendes professionelt
>
> Jeg er ikke enig. Det er mig bekendt ganske almindeligt at kræve
> forskellige ting af brugerne - også på professionelle sites.

De check man kan lave er ofte tilstrækkelige, men hvis man vil være
virkeligt sikker på noget skal man ikke anvende en teknologi en bruger har
så direkte indflydelse på.

Jeg forestiller mig at en netbank ikke ville anvende sessions i speciel stor
udstrækning.

Jeg anvender selv sessions på mine egne hjemmesider, men der har jeg heller
ikke haft behov for "mission critical" kode. (Udtryk fra MySQL manualen som
jeg ikke aner hvad hedder på dansk)

Men ok - lad mig da strække mig - Jeg ville ikke *udelukkende* anvende
sessions til vitale informationer. Jeg ville kombinere forskellige metoder
til dataopbevaring og nøjes med at tracke brugeren igennem sessions mv.

Det er muligt jeg lagde mere i ordet "professionel" end der egentligt var
behov for.

Mvh
Jimmy





Jesper Stocholm (20-01-2003)
Kommentar
Fra : Jesper Stocholm


Dato : 20-01-03 10:28

Jimmy wrote :

>
> "Kasper Katzmann" <kasper @ FJERNESkatzmann.dk> wrote in message
> news:b0f6vj$f90$1@sunsite.dk...
>> Er sessions OK at bruge set fra et lidt mere professionelt syn.
>>
> Har du ikke selv besvaret spørgsmålet?
>
> 1 - Du vil anvende dem "professionelt" (Jeg læser dette som
> erhvervsmæssig øjemed hvor det er vitalt at koden ikke fejler)
> 2 - Man kan deaktivere sessions, hvilket vil gøre at koden fejler.
> 3 - Konklusion - Sessions kan ikke anvendes professionelt

jeg må sige, at jeg synes at din accept-tærskel er for høj.

> Jeg ser det meget sort og hvidt - Hvis du ønsker "mission critical"
> kode skal du naturligvis ikke anvende en teknologi, hvor brugere har
> indflydelse på din success rate.

Hvordan vil du lavet noget som helst web-programmering, hvor brugerne
ikke har indflydelse på din applikation ?

Hvis du
* overfører værdier i din URI, så kan brugerne ændre i dem
* bruger fx CSS2, så kan NN4.7x ikke rigtigt lide det
* bruger strict xHTML kan NN4.7 ikke vise det korrekt - dvs
potentielt kan knapper, links etc forsvinde eller ikke virke.

Hvordan vil du i øvrigt være 100% sikker på, hvordan en side bliver vist
i alle browsere ?

Jeg vil mene, at det kan du ikke. Det du derimod kan gøre er at checke
for de mulige fejl du kan komme på kan forekomme ved fejl i din
applikation. Nøjagtig på samme måde kan du checke, om sessions er
understøttede - og i givet fald bruge dem med de fordele det indebærer.
Hvis de ikke er understøttede - så finder man på noget andet.

> Du kan evt. gardere dig ved at inkludere en asp-side i toppen af
> *alle* dine dokumenter, som checker for om en given session-variabel
> er instantieret. Denne variabel instantieres i global.asa og sættes
> med en meget høj timeout.
>
> Er den ikke instantieret afbryder du udførslen eller viser en side,
> hvor du beder brugeren slå sessions til.

Ved anvendelse af ASP.Net findes der en feature til at
vedligeholde/opbevare session-state i URI. Der sættes altså ingen cookies
overhovedet, men session-state overføres som værdier i URI. Det er
faktisk bare en værdi der sættes i machine.config, og vupti - så er
"problemet væk".

Kort sagt: sessions er fine til det de er lavet til, og hvis man har øje
for de begrænsninger de medfører, så kan jeg ikke se, hvorfor man ikke
skule bruge dem.

Hvordan definerer du i øvrigt "missions-kritisk" ? Er det
brugerinterfacet til pumperne på et atomkraftværk ... eller ?

--
Jesper Stocholm - www.stocholm.dk - www.asp-faq.dk
** De andre siger, at han er 16 **
Svar venligst til gruppen og ikke til mig privat !
Skriv under det du svarer på - www.usenet.dk/netikette/citatteknik.html

Jens Gyldenkærne Cla~ (20-01-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 20-01-03 12:48

Jimmy skrev:

> De check man kan lave er ofte tilstrækkelige, men hvis man vil
> være virkeligt sikker på noget skal man ikke anvende en
> teknologi en bruger har så direkte indflydelse på.

Brugeren har ingen indflydelse på selve sessionobjektet (så vidt
jeg ved). Det eneste en bruger kan gøre er at blokere for en
sessioncookie. Sikkerhedsmæssigt er der ikke noget problem i at
smide brugere der ikke tillader cookies over på en fejlside, og så
nøjes med at servicere resten.

> Jeg forestiller mig at en netbank ikke ville anvende sessions
> i speciel stor udstrækning.

Jeg prøvede lige min egen netbank - der kommer man ikke engang til
loginsiden uden at have cookies slået til. Den jeg bruger fungerer
iøvrigt heller ikke uden javascript. Det er ikke et
sikkerhedsproblem, men muligvis et tilgængelighedsproblem (specielt
når banker og andre designer MS-specifikke sider der ikke kan
benyttes i andre browsere).


> Jeg anvender selv sessions på mine egne hjemmesider, men der
> har jeg heller ikke haft behov for "mission critical" kode.

Missionskritisk kode er i mine øjne ikke relevant fra første
browserklik. Det skal forstås sådan at de steder hvor man skal
bruge vigtig kode - fx ved pengeoverførsler - kommer man først til
den missionskritiske del efter en forudgående validering. Denne
validering tjekker ikke blot brugerens identitet, men også om de
nødvendige faciliteter er til stede i brugerens browser.

Så længe man behandler fejl og undtagelser pænt - altså fx ved at
sende brugerne til en informationsside - så må koden for min skyld
gerne fejle ved bestemte konfigurationer.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Steen Eiler Jørgense~ (20-01-2003)
Kommentar
Fra : Steen Eiler Jørgense~


Dato : 20-01-03 10:11

"Kasper Katzmann" <kasper @ FJERNESkatzmann.dk> skrev

> Jeg mener, man kan jo slå dem fra i browseren, men er det overhovedet værd
> at regne med?

???

Øh, hvad? Kan man slå sessions fra i browseren? Der er vist noget, jeg er
gået glip af? Hvordan gør man det?

Mvh Steen

--
Steen Eiler Jørgensen
"No, I don't think I'll ever get over Macho Grande.
Those wounds run...pretty deep."



TH (20-01-2003)
Kommentar
Fra : TH


Dato : 20-01-03 10:17

Hej,

"Steen Eiler Jørgensen" <oz1sejREMOVETHIS@get2net.dk> skrev i en meddelelse
news:b0gee9$9mf$1@sunsite.dk...

> Øh, hvad? Kan man slå sessions fra i browseren? Der er vist noget, jeg er
> gået glip af? Hvordan gør man det?

Sessions er blot cookies....slå cookies fra og sessionsvariable kan ikke
bruges :)

/TH


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.443 / Virus Database: 248 - Release Date: 10-01-2003



Steen Eiler Jørgense~ (20-01-2003)
Kommentar
Fra : Steen Eiler Jørgense~


Dato : 20-01-03 10:37

"TH" <th@cogito.dk> skrev

> Sessions er blot cookies....slå cookies fra og sessionsvariable kan ikke
> bruges :)

Argh! Hvorfor er der ingen, der har fortalt mig det?!

Hvad fanden gør man så? Hvordan holder man f.eks. styr på, om ens brugere er
logget ind?

--
Steen Eiler Jørgensen
"No, I don't think I'll ever get over Macho Grande.
Those wounds run...pretty deep."



Chrisser (20-01-2003)
Kommentar
Fra : Chrisser


Dato : 20-01-03 10:41

"Steen Eiler Jørgensen" <oz1sejREMOVETHIS@get2net.dk> skrev i en meddelelse
news:b0gfv8$kpf$1@sunsite.dk...
> "TH" <th@cogito.dk> skrev
>
> > Sessions er blot cookies....slå cookies fra og sessionsvariable kan ikke
> > bruges :)
>
> Argh! Hvorfor er der ingen, der har fortalt mig det?!
>
> Hvad fanden gør man så? Hvordan holder man f.eks. styr på, om ens brugere
er
> logget ind?

Det tester man på i toppen af hver side, hvis de ikke er logget ind sender
man dem til logind-siden.

Hvis man ønsker at teste for om de understøtter sessions kan man lave en
test-session allerede på logind-siden, og tjekke den på næste side (typisk
den der behandler logind-forespørgslen), hvis denne session ikke er sat, så
kan de sendes til en side hvor man forklarer betydningen af sessioner på det
pågældende site mm.

Chrisser




Steen Eiler Jørgense~ (20-01-2003)
Kommentar
Fra : Steen Eiler Jørgense~


Dato : 20-01-03 10:48

"Chrisser" <cbj@egdatainform.dk> skrev i en meddelelse
news:b0ggdc$mnq$1@sunsite.dk...

> Hvis man ønsker at teste for om de understøtter sessions kan man lave en
> test-session allerede på logind-siden, og tjekke den på næste side (typisk
> den der behandler logind-forespørgslen), hvis denne session ikke er sat,

> kan de sendes til en side hvor man forklarer betydningen af sessioner på
det
> pågældende site mm.

MAO: hvis man vil have et site, hvor brugere kan logge ind, så må man
forklare dem, at de skal tillade cookies - ellers er det simpelthen ikke
muligt?

--
Steen Eiler Jørgensen
"No, I don't think I'll ever get over Macho Grande.
Those wounds run...pretty deep."



Chrisser (20-01-2003)
Kommentar
Fra : Chrisser


Dato : 20-01-03 10:54

"Steen Eiler Jørgensen" <oz1sejREMOVETHIS@get2net.dk> skrev i en meddelelse
news:b0ggkd$oac$1@sunsite.dk...
> MAO: hvis man vil have et site, hvor brugere kan logge ind, så må man
> forklare dem, at de skal tillade cookies - ellers er det simpelthen ikke
> muligt?
( - eller sessioner - man kan ex. sætte IE op til at tillade cookies under
sessionen )

Yep, og så kan man jo passende fortælle lidt om sessioner så de ikke tror
man er ved at samle oplysninger sammen, sitets sikkerhedspolitik mm. Så
synes jeg det efterfølgende er op til brugeren selv hvad de vil, og det er
efter min mening fint.

Prøv selv at slå cookies fra, og se hvor langt du kan komme rundt på nettet,
især når vi snakker sider med logind. Du render uværgeligt ind i fejl, men
ganske få sites fortæller dig hvorfor, så ovenstående vil alt andet lige
være en bedre service end så mange andre giver....


Chrisser


Jens Gyldenkærne Cla~ (20-01-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 20-01-03 11:04

Steen Eiler Jørgensen skrev:

> MAO: hvis man vil have et site, hvor brugere kan logge ind, så
> må man forklare dem, at de skal tillade cookies - ellers er
> det simpelthen ikke muligt?

Man kan lave andre former for loginsystemer - fx med Windows
security, der virker udmærket uden cookies. Det virker til gengæld
kun ordentligt (hvor adgangsoplysningerne krypteres) med IE.

Men i praksis er det helt almindeligt at kræve understøttelse af
cookies for at benytte loginsystemer.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Carsten Suurland (20-01-2003)
Kommentar
Fra : Carsten Suurland


Dato : 20-01-03 11:52

Hej NG

Man kan da sagtens lave systemer (med login) uden anvendelsen af sessions.
Det kræver blot lidt mere programmering fra vores side...

Efter et login, skal alle sider "fodres" med en eller anden form for
brugerid, som så kan aflæses af serveren.

/Carsten Suurland



Jesper Stocholm (20-01-2003)
Kommentar
Fra : Jesper Stocholm


Dato : 20-01-03 14:18

Carsten Suurland wrote :

> Man kan da sagtens lave systemer (med login) uden anvendelsen af
> sessions. Det kræver blot lidt mere programmering fra vores side...
>
> Efter et login, skal alle sider "fodres" med en eller anden form for
> brugerid, som så kan aflæses af serveren.

og dette "brugerid" kunne så passende serveres via URI med passende check.

Der er jo stor forskel på at vedligeholde session-state via cookies eller
via URI. I sidstnævnte tilfælde er der fin mulighed for dette - omend det
kræver, som du siger, en del mere kodning af "os".



--
Jesper Stocholm - http://stocholm.dk
www.asp-faq.dk : FAQ for dk.edb.internet.webdesign.serverside.asp
www.usenet.dk/netikette/citatteknik.html : Skriv under det du svarer på
Svar til gruppen og ikke til mig privat !

Chrisser (20-01-2003)
Kommentar
Fra : Chrisser


Dato : 20-01-03 10:21

"Steen Eiler Jørgensen" <oz1sejREMOVETHIS@get2net.dk> skrev i en meddelelse
news:b0gee9$9mf$1@sunsite.dk...
> "Kasper Katzmann" <kasper @ FJERNESkatzmann.dk> skrev
>
> > Jeg mener, man kan jo slå dem fra i browseren, men er det overhovedet
værd
> > at regne med?
>
> ???
>
> Øh, hvad? Kan man slå sessions fra i browseren? Der er vist noget, jeg er
> gået glip af? Hvordan gør man det?
>

IE6.0:
Funktioner -> internetindstillinger: Vælg Fanen "beskyttelse af personlige
oplysninger". Klik på "avanceret".


Chrisser



Jakob Andersen (21-01-2003)
Kommentar
Fra : Jakob Andersen


Dato : 21-01-03 05:37

"Kasper Katzmann" wrote
> Er sessions OK at bruge set fra et lidt mere professionelt syn.

Hvis Sessions er en nødvendighed for applikationens "ve og vel" er sessions
ganske fint at bruge hvis man blot er nobel overfor sin (kundes) brugere og
informere dem om dette både _før_ de prøver at benytte applikationen(i evt.
kundevilkår) og hvis de prøver at logge ind uden cookies aktiveret.

Herudover er det selvfølgelig vigtigt at du overfor din kunde, ligesom med
så meget andet, specificerer hvilke krav din løsning stiller til brugerens
afviklingsmiljø.

Ovenstående er den ene side af sagen som sikrer dig som udvikler at din
kunde ikke på et tidsspunkt står foran din dør og brokker sig over at nogle
af deres brugere ikke kan benytte for dem kritiske features på deres
hjemmeside.

Den anden side er så om det er teknisk sikkerhedsmæssigt forsvarligt at
benytte sessions, en af de kritiske emner når vi snakker Sessions er det der
hedder Session hijacking(overtagelse af andres Sessions), dette forekommer
hvis en bruger der på dit site har fået tildelt sin session, kan gætte et
andet sessionid altså forestil dig en implementation hvor man bruge
fortløbende numre til sessionid's, en bruger får sessionid nr. 10 og ændrer
det herefter i cookien for dit site til 9 og kan nu se alt data der tilhører
brugeren der er logget ind med sessionid nr. 9. Dog skulle jeg mene at ASP
har en ret "stærk" session identifier som ikke er helt så let at gennemskue.

Hvis ovenstående er gældende, altså en ikke broken sessionimplementation, så
er det blot dig selv der skal undgå at lave fejl i funktioner som:

Glemt password
Skift password
Opdater brugerdata
Nyoprettelse af brugere

og så skal du selvfølgelig generelt sikre din application mod SQL-injection
således at dine brugerdata forbliver en hemmelighed. Og når vi snakker
worst-case-scenario samt nobelhed for dine brugere er det STÆRKT anbefalet
at du krypterer dine brugeres password således at du ikke kan se dem, men så
sandelig også at deres måske "ofte" brugte password ikke bliver afsløret
hvis nogle "rødder" for adgang til dit datalager.


--
Jakob Andersen



Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408937
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste