Hittils när jag skapat inloggningssidor har jag följt Webstudios exempel där man först kontrollerar om användarnamnet finns i databasen och om så är fallet sätter en bolean till "true", sedan samma sak med lösenordet etc.
Vi håller just nu på med ett mindre projekt i plugget där en klasskamrat skrivit koden till inloggningen och den ser annorlunda ut, vilket är anledningen till mitt inlägg. Han exekverar istället en SQL-sträng liknande denna:
"SELECT Anvnamn, Losenord FROM tblAdmin WHERE Anvnamn = '" & strUserName & "' AND Losenord = '" & strLosenord & "'"
Om sedan objRecSet.EOF inträffar innan SQL-uttrycket hittat någonting som matchar kommer man inte in.
Om man vill tillåta flera användare att ha samma lösenord fungerar inte Webstudios exempel, men vilket är bäst annars tycker ni? Hur säkra är egentligen sådana här enkla databasjämförelser att komma förbi? Finns det någonting man ska tänka på?
Dessa inloggningar är ganska säkra, tänk bara på att inte lägga databasfilen under samma mapp som inloggningsfilerna. Och döp inte den till något vanligt, tex members.mdb eller login.mdb eller något liknande.
Den absolut säkraste lösningen som jag ser är att ska password protection via unix, med .htaccess, då skyddar su samtliga filer i ett bibliotek
Jag kollade med mitt webhotel om man kunde få en säker mapp. De gjorde då en mapp (www_root) i min katalog dit min domän istället pekar. Sedan lägger jag databasen under denna mapp och det medför att det inte går att komma åt den.
Jag mappar sedan till den med:
Om man vill tillåta flera användare att ha samma lösenord fungerar inte Webstudios exempel, men vilket är bäst annars tycker ni? Hur säkra är egentligen sådana här enkla databasjämförelser att komma förbi? Finns det någonting man ska tänka på?
Om du vill tillåta en användare att använda någon annans lösenord så skall du använda Webstudios kod. Gör INTE det!
------------------
Doesn't 'expecting the unexpected' make the unexpected expected? webeye.nu
264 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2