Gert Simonsen skrev:
> Jeg har et sikkerhedsproblem med en side:
>
http://www.logporten.dk/demo/se_log1.asp?brugernavn=elev
Jeg bliver henvist til <
http://www.logporten.dk/demo/forbudt.asp>
>
http://www.logporten.dk/demo/se_log1.asp?brugernavn=lærer
- og det samme sker med denne adresse.
> så kan elev læse lærers side...... det er ikke så godt!!
To generelle ting vedr. login:
a) Brug altid brugernavn + adgangskode - ikke blot brugernavn.
Sikkerheden er langt bedre med to koder. Brugernavnet kan fint være
et "logisk" navn - fx "elev" eller "lærer", mens adgangskode ikke
må være for let at gætte (kræv fx både bogstaver og tal og mindst 6
tegn)
b) Undgå at smide koder op i adressefeltet hvor de dels kan aflæses
og dels kan ændres. Brug POST i stedet for GET til login-
formularer, så kan man ikke se de værdier der sendes til formen så
let.
Mht. adgangskoder er det en god ide at undgå at gemme dem i
databasen. Hvis man gemmer adgangskoder i databasen risikerer man
at de kan blive læst af uvedkommende - enten hvis siden bliver
hacket eller hvis en person på anden måde får adgang til serveren.
Løsningen er at gemme hashede adgangskoder i stedet. Hash-værdien
af en adgangskode kan bruges til at validere et login (man
sammenligner hash-værdien af den indtastede adgangskode med den
gemte hash-værdi) - men den kan ikke bruges til at finde frem til
adgangskoden og dermed heller ikke til at logge ind på siden.
Metoden er forklaret her: <
http://www.asp-faq.dk/article/?id=52>.
> Det vil jo sige at man skal være logget på for at se siden
> men det er jo ikke nok da session stadig er elev (hvis det er
> elev der er logget på)
Mht. session-variable, så er den eneste sikre måde man kan slutte
en login-session på at lukke browseren. Man kan sætte nogle
parametre der beder browseren om ikke at cache siderne (se
<
http://www.asp-faq.dk/article/?id=70>), men man skal stadig bede
brugerne om at lukke browseren efter logout.
> Hele koden ligger på:
http://www.logporten.dk/kode.txt
Det er en ret uoverskuelig kode - nogle funktioner eller
procedurer, samt passende kommentarer ville hjælpe gevaldigt på
læsbarheden - men det er svært at få med et grafisk baseret program
(DreamWeaver). Jeg kender meget lidt til DW, men jeg vil tro at der
er nogle skabeloner eller funktioner til at lave loginsystemer med
både brugernavn og adgangskode.
--
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