|
| læse cookies på en htm side ? Fra : Lars Beck |
Dato : 28-02-05 23:26 |
|
Hej alle
Jeg skal lave en adgangskontrol til nogle sider. Nogle sider er .aspx og
andre er .htm.
Jeg har en login side som sender brugeren vidrere til disse sider og
samtidig enten smider en cookie med sessionID eller sender sessionID'et med
linket.
På aspx sider er det ikke noget problem at chekke om id fra cookien er den
samme som på den beskyttede side. Men på .htm siderne opstår mit problem.
Hvordan kan jeg kontrolere id her ?
Jeg håber det kan lade sig gøre med at script, der kan sættet ind på hver
htm side.
Jeg vil undgå at man kan gå direkte til underliggende sider, uden først at
have logget ind.
Jeg laver siderne i vb.net. (htm siderne er lavet i forvejen og der er ikke
mulighed for at lave dem om $. Jeg skal kun lave adgangskontrollen, andre
skal forsat vedligeholde siderne og de arbejder kun i ren html )
Lars
| |
Erik Ginnerskov (01-03-2005)
| Kommentar Fra : Erik Ginnerskov |
Dato : 01-03-05 00:43 |
|
Lars Beck wrote:
> På aspx sider er det ikke noget problem at chekke om id fra cookien
> er den samme som på den beskyttede side. Men på .htm siderne opstår
> mit problem. Hvordan kan jeg kontrolere id her ?
Et javascript afvikles i brugerens browser - og så er logintjek for sent,
siden er allerede indlæst. Login og cookies skal tjekkes serverside, enten
asp eller php. vælg selv og spørg så i relevante gruppe:
news:dk.edb.internet.webdesign.serverside.asp
news:dk.edb.internet.webdesign.serverside.php
--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://frip.dk/ginnerskov
| |
NoMoreSpam (01-03-2005)
| Kommentar Fra : NoMoreSpam |
Dato : 01-03-05 21:08 |
|
"Lars Beck"
> Jeg skal lave en adgangskontrol til nogle sider. Nogle sider er .aspx og
> andre er .htm.
> Jeg har en login side som sender brugeren vidrere til disse sider og
> samtidig enten smider en cookie med sessionID eller sender sessionID'et
med
> linket.
> På aspx sider er det ikke noget problem at chekke om id fra cookien er den
> samme som på den beskyttede side. Men på .htm siderne opstår mit problem.
> Hvordan kan jeg kontrolere id her ?
> Jeg håber det kan lade sig gøre med at script, der kan sættet ind på hver
> htm side.
>
> Jeg vil undgå at man kan gå direkte til underliggende sider, uden først at
> have logget ind.
> Jeg laver siderne i vb.net. (htm siderne er lavet i forvejen og der er
ikke
> mulighed for at lave dem om $. Jeg skal kun lave adgangskontrollen, andre
> skal forsat vedligeholde siderne og de arbejder kun i ren html )
>
>
> Lars
Hej Lars
Jeg ved ikke om det er praktisk muligt.
Når brugeren klikker på submit fra en html side for at komme til en
anden html, sendes brugeren i stedet til en aspx side der checker om
brugeren
er logget ind, hvis ja så videre og hvis nej så tilbage til start.
Så kan HTMLerne fortsætte lystigt med deres HTML.
--
Med venlig hilsen
Tom Jensen
Læs mere om databaser og asp her:
http://www.FFSoft.dk
| |
Erik Ginnerskov (01-03-2005)
| Kommentar Fra : Erik Ginnerskov |
Dato : 01-03-05 21:22 |
|
NoMoreSpam wrote:
> Jeg ved ikke om det er praktisk muligt.
> Når brugeren klikker på submit fra en html side for at komme til en
> anden html, sendes brugeren i stedet til en aspx side der checker om
> brugeren er logget ind, hvis ja så videre og hvis nej så tilbage til
start.
> Så kan HTMLerne fortsætte lystigt med deres HTML.
Det lyder brugbart, men er det ikke lidt af en omvej? Du kan da lige så godt
lade Det beskyttede være en del af asp-siden og en eventuel fejlmelding være
en anden, minimal del af samme side. Hvad del brugeren får at se afhænger
af, om vedkommende er logget lovligt ind eller ej.
http://hjemmesideskolen.dk/scripts/asppass/default.asp
--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://frip.dk/ginnerskov
| |
NoMoreSpam (01-03-2005)
| Kommentar Fra : NoMoreSpam |
Dato : 01-03-05 22:24 |
|
> > Jeg ved ikke om det er praktisk muligt.
> > Når brugeren klikker på submit fra en html side for at komme til en
> > anden html, sendes brugeren i stedet til en aspx side der checker om
> > brugeren er logget ind, hvis ja så videre og hvis nej så tilbage til
> start.
> > Så kan HTMLerne fortsætte lystigt med deres HTML.
> > Tom Jensen
> Det lyder brugbart, men er det ikke lidt af en omvej? Du kan da lige så
godt
> lade Det beskyttede være en del af asp-siden og en eventuel fejlmelding
være
> en anden, minimal del af samme side. Hvad del brugeren får at se afhænger
> af, om vedkommende er logget lovligt ind eller ej.
>
> http://hjemmesideskolen.dk/scripts/asppass/default.asp
>
> --
> Med venlig hilsen
> Erik Ginnerskov
> http://hjemmesideskolen.dk - http://html-faq.dk
> http://frip.dk/ginnerskov
Hej Erik
Jeg tror ikke jeg er helt med mere, problemet var at hoppe fra en HTML
side til en anden HTML side, da der er nogen ansat til at vedligeholde disse
HTML sider, som ikke vil røre ved asp eller aspx.
Mit forslag går så på at lave en lille omvej, hen over en aspx side der
checker om
vedkommende er logget ind. Man ved jo hvilken side man gerne vil til og
hvilken side man kommer fra, så det er ikke det store problem at
1) sende brugeren til den ønskede side
2) sende brugeren tilbage
afhængigt af om man er logget ind eller ej. Det testes i sessionen.
Jeg snupper lige chancen til at skrive, at jeg synes det er et kanon
site du har opbygget der.
Til Lars; hvis du vælger denne løsning er der en speciel gruppe til aspx
sider. Den hedder dk.edb.programmering.dotnet
--
Med venlig hilsen
Tom Jensen
Læs mere om databaser og asp her:
http://www.FFSoft.dk
| |
Lars Beck (02-03-2005)
| Kommentar Fra : Lars Beck |
Dato : 02-03-05 20:38 |
|
> Jeg tror ikke jeg er helt med mere, problemet var at hoppe fra en HTML
> side til en anden HTML side, da der er nogen ansat til at vedligeholde
disse
> HTML sider, som ikke vil røre ved asp eller aspx.
Problemet er ikke at hoppe fra en html til en anden html, derimod fra en
aspx til html.
> 2) sende brugeren tilbage
> afhængigt af om man er logget ind eller ej. Det testes i sessionen.
Jeg vil gerne kunne læse en cookie eller evt. session. Problemet er så bare
hvordan jeg gør det på en html side ?
Jeg har prøvet at skrive <% ....kode som virker på en aspx side ..... %>
øverst på html siden, men det virker ikke
Lars
PS. Takker for deltagelsen i min tråd
| |
Erik Ginnerskov (03-03-2005)
| Kommentar Fra : Erik Ginnerskov |
Dato : 03-03-05 01:57 |
| | |
Ryan Kristensen (03-03-2005)
| Kommentar Fra : Ryan Kristensen |
Dato : 03-03-05 11:27 |
|
On Wed, 2 Mar 2005 20:37:37 +0100, Lars Beck <beck@dankemi.danmark> wrote:
> Jeg vil gerne kunne læse en cookie eller evt. session. Problemet er så
> bare
> hvordan jeg gør det på en html side ?
> Jeg har prøvet at skrive <% ....kode som virker på en aspx side ..... %>
> øverst på html siden, men det virker ikke
Hvad med om du lavede en asp(x) side, som tjekkede din cookie/session og
hentede html-siden.
f.eks. med asp:
<%
If Session("login") = true Then
Set HttpObj = Server.CreateObject("AspHTTP.Conn")
HTTPObj.Url = " http://www.domæne.dk/side.html"
Response.Write HTTPObj.GetURL
Else
Response.Redirect("login-side.html")
%>
På denne måde kunne du undgå, at dine html-sider ville fremgå så tydeligt.
- adressen ville ikke være synlig i adressebaren.
html-siderne vil selvfølgelig altid kunne tilgås uden problemer, men så
længe folk ikke ved hvilken adresse de skal indtaste for at få dine
html-sider, så er de rimeligt godt beskyttet.
Hvis du har spørgsmål til serverside-koden, så skal du nok over i en af
serverside-grupperne.
Det aller sikreste ville være, hvis du kunne få folkene overtalt til at
omdøbe deres html-filer til asp(x) og så indsætte et tjek i starten af
filen. - Det er jo ikke fordi det forhindre dem i at skrive html-sider.
--
Ryan Kristensen
| |
Erik Ginnerskov (03-03-2005)
| Kommentar Fra : Erik Ginnerskov |
Dato : 03-03-05 18:01 |
|
Ryan Kristensen wrote:
> Response.Redirect("login-side.html")
> html-siderne vil selvfølgelig altid kunne tilgås uden problemer, men
> så længe folk ikke ved hvilken adresse de skal indtaste for at få dine
> html-sider, så er de rimeligt godt beskyttet.
I det øjeblik der er redirected til html-siden, vil dens adresse netop
fremgå af browserens adresselinje. Derfra er det ikke noget problem hverken
at bogmærke siden eller at videresende adressen til andre, som måske ikke
har lov til at læse med. Deri ligger svagheden i at redirecte til en
html-side.
Hvis man i stedet - som jeg tidligere foreslog - lader det
password-beskyttede og fejlmeddelelsen være hver sin del af den samme
asp(x)-side og lader login-tjek afgøre, hvilken del man ser, kan en sides
beskyttede indhold ikke tilgås med et direkte link udefra.
> Det aller sikreste ville være, hvis du kunne få folkene overtalt til
> at omdøbe deres html-filer til asp(x) og så indsætte et tjek i
> starten af filen. - Det er jo ikke fordi det forhindre dem i at
> skrive html-sider.
Netop. Siderne behøver ikke indeholde mere asp-kode end login-tjekket.
Resten kan fint være ganske almindelig html. Men siderne kan *ikke* hedde
(s)htm(l) - det *skal* være asp(x).
--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://frip.dk/ginnerskov
| |
Ryan Kristensen (03-03-2005)
| Kommentar Fra : Ryan Kristensen |
Dato : 03-03-05 22:24 |
|
On Thu, 3 Mar 2005 18:01:09 +0100, Erik Ginnerskov
<erik@donotspammmeplease.invalid> wrote:
> I det øjeblik der er redirected til html-siden, vil dens adresse netop
> fremgå af browserens adresselinje. Derfra er det ikke noget problem
> hverken
> at bogmærke siden eller at videresende adressen til andre, som måske ikke
> har lov til at læse med. Deri ligger svagheden i at redirecte til en
> html-side.
Response.Redirect("login-side.html") stod i funktionen som alternativ,
hvis man ikke var logget på. Sådan at de folk, der ikke er logget på,
bliver sendt til en side, hvor de kan logge på. - Den side skal jo ikke
være password-beskyttet.
Hvis man er logget på, så vil asp(x)-siden hente indholdet af html-filen
og vise det. På den måde, vil folk ikke kunne se, hvad navnet på
html-siderne er. Og derved kan de godt bogmærke siden, uden at kunne tilgå
den før de har indtastet password.
> Hvis man i stedet - som jeg tidligere foreslog - lader det
> password-beskyttede og fejlmeddelelsen være hver sin del af den samme
> asp(x)-side og lader login-tjek afgøre, hvilken del man ser, kan en sides
> beskyttede indhold ikke tilgås med et direkte link udefra.
Men det vigtige er vel, at brugerne ikke får oplyst en adresse til en
html-side, og det vil de ikke gøre, hvis man henter indholdet af
html-filen med et asp(x) script. Selvfølgelig vil adressen figurere i
serverlogen, men dette kan man ikke komme udenom, hvis man vil bruge
html-filer.
--
Ryan Kristensen
| |
|
|