Avatar billede canedo Nybegynder
08. maj 2002 - 11:30 Der er 5 kommentarer og
2 løsninger

Sikkerhed

Kan jeg være sikker på, at ingen kan komme ind og se mine sider, hvis jeg session:

<%
If Request.Form("navn") = "hemmeligt" AND Request.Form("password") = "hemmeligt" Then
Session("log") = "ind"
Session.Timeout = 5
Response.Redirect "admin.asp"
%>

Og så har

<%
If session("log") <> "ind" then
Response.Redirect "log.htm"
Else
%>

På alle siderne?
Avatar billede canedo Nybegynder
08. maj 2002 - 11:35 #1
Er det muligt at omgåes Session Object?
Avatar billede meilby Nybegynder
08. maj 2002 - 11:36 #2
Nej det kan du ikke men hvis du og du kan heller ikke 100 % sikre dig men det her er lidt sikre end det du selv har lavet

<%
strNavn = Request.Form("navn")
strPass = Request.Form("password")
strNavn = replace(strNavn,"'","''")
strPass = replace(strPass,"'","''")
If strNavn = "hemmeligt" AND strPass = "hemmeligt" Then
Session("log") = "ind"
Session.Timeout = 5
Response.Redirect "admin.asp"
%>

Og så har

<%
If session("log") <> "ind" then
Response.Redirect "log.htm"
Else
%>
Avatar billede canedo Nybegynder
08. maj 2002 - 11:41 #3
Hvad gør disse?

strNavn = replace(strNavn,"'","''")
strPass = replace(strPass,"'","''")
Avatar billede rou Nybegynder
08. maj 2002 - 12:07 #4
Hvis du vil sikre dig imod at navn og pw opsnappes via packetsniffing, så skal du som minimum også køre SSL.
Avatar billede hirayz Nybegynder
08. maj 2002 - 12:14 #5
FJERN
strNavn = replace(strNavn,"'","''")
strPass = replace(strPass,"'","''")

de har ikke en skid at sige når det ikke er SQL
Avatar billede eagleeye Praktikant
08. maj 2002 - 12:15 #6
Det er kun hvis du har brugernavn og password i en database og be benytter det indtastede navn og password til a lave et opslag for at se om en bruger findes...

Ekse
slq = "SELECT * FROM usertb WHERE navn = '&strNavn&' AND pass = '"&strPass&"'"
set rs = connection.execute (sql)
if NOT rs.EOF then
  'ruger fundet i databasen...
end if

Så fordi ' benyttes i SQL som start og slut på strenge..
Så man kan let "brude" gemmen hvis man angiver navn og password snedigt mend ' i.. Derfor skal man altid når man skriver til en databases kolonne som er tekst felt erstatte en ' med to '' som meilby skriver...

Hvis du bare har et fast password og navn som:
If Request.Form("navn") = "hemmeligt" AND Request.Form("password") = "hemmeligt" Then

Så har det ikke nogen betydning om du skifter en ' med to.
Avatar billede canedo Nybegynder
08. maj 2002 - 12:25 #7
jeg har kun et fast brugernavn og password - så det gør jo nogle ting lidt lettere... når det nu kun er mig der skal have adgang.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester