Avatar billede theselfimages Nybegynder
06. februar 2003 - 14:04 Der er 24 kommentarer og
2 løsninger

Simpel og sikker login

Jeg har brug for Login+pass beskyttelse fra en side til en anden. Der er ikke tale om DB, men blot en side med login+pass indtastningsfelt, der giver adgang til en anden side hvis korrekt indtastet.

Nogen bud eller henvisninger?
Avatar billede mufoxe Nybegynder
06. februar 2003 - 14:07 #1
Du kan bare hardcode kodeordet i din ASP fil.
Avatar billede mufoxe Nybegynder
06. februar 2003 - 14:07 #2
Kontrollere en input box imod den hardcodede værdi.
Avatar billede no_doubt Nybegynder
06. februar 2003 - 14:08 #4
<% Response.Buffer = True %>
<%
fejl = ""
If Request("Submit")<>"" Then
    If Request("navn") = "ditnavn" and _       
        Request("password")="ditpassword" Then
        Session("Valid") = Request("navn")
        Response.redirect "in.asp"

    Else       
        fejl = "Forkert brugernavn eller password. Prøv igen!"   
    End If
End If
%>
Avatar billede oasen Nybegynder
06. februar 2003 - 14:13 #5
Og husk så at indsætte følgende på de sider, du vil have beskyttet:

<%
If Session("Valid") = "" Then Response.Redirect "forside.asp"
%>
Avatar billede no_doubt Nybegynder
06. februar 2003 - 14:15 #6
Nemligt *s*
Avatar billede theselfimages Nybegynder
06. februar 2003 - 14:19 #7
Hvordan tilføjer jeg et brugernavns indtastningsfelt?
Så den måde checker for brugernavn og passeword + giver en melder tilbage om det er rigtigt eller forkert? Og hvordan kan jeg undgå at man blot at view source og både se password og den side der henvises til?

<%
Response.Buffer = True
STATUS = Request("STATUS")
PASSWORD = Request("PASSWORD")
   
If STATUS = "CHECKEM" Then
    If PASSWORD = "sample" THEN
            Session("PASSWORDACCESS") = "Yes"
      End If
End If
   
If Session("PASSWORDACCESS") <> "Yes" Then
%>
      <HTML>
      <BODY bgcolor="#FFFFFF">
      <form method="POST" action="thispage.asp">
      <div align="center"><center><p><input type="password" name="PASSWORD" size="10"><br>
      <input type="hidden" value="CHECKEM" Name="STATUS" >
      <input type="submit" value="Login"></p>
      </center></div>
      </form>
      </BODY>
      </HTML>
<%
Response.End
End If
%>
Avatar billede no_doubt Nybegynder
06. februar 2003 - 14:22 #8
<% Response.Buffer = True %>
<%
fejl = ""
If Request("Submit")<>"" Then
    If Request("STATUS") = "ditnavn" and _       
        Request("PASSWORD")="ditpassword" Then
        Session("Valid") = Request("navn")
        Response.redirect "den-hemmelige-side.asp"

    Else       
        fejl = "Forkert brugernavn eller password. Prøv igen!"   
    End If
End If
%>
<HTML>
      <BODY bgcolor="#FFFFFF">
      <form method="POST" action="thispage.asp">
      <div align="center"><center><p><input type="password" name="PASSWORD" size="10"><br>
      <input type="hidden" value="CHECKEM" Name="STATUS" >
      <input type="submit" value="Login"></p>
      </center></div>
      </form>
Avatar billede theselfimages Nybegynder
06. februar 2003 - 14:25 #9
NO_DOUBT => men der er stadig kun ÉT indtastningsfelt...

Jeg ville gerne ha' 2 felter

BRUGERNAVN
PASSWORD
Avatar billede no_doubt Nybegynder
06. februar 2003 - 14:30 #10
<% Response.Buffer = True %>
<%
fejl = ""
If Request("Submit")<>"" Then
If Request("STATUS") = "ditnavn" and _
Request("PASSWORD")="ditpassword" Then
Session("Valid") = Request("navn")
Response.redirect "den-hemmelige-side.asp"

Else
fejl = "Forkert brugernavn eller password. Prøv igen!"
End If
End If
%>
<html>

<head>
<title></title>
</head>

<body bgcolor="#FFFFFF">

<form method="POST" action="thispage.asp">
  <input type="hidden" name="STATUS" value="CHECKEM"><div align="center"><center><p><input
  type="password" name="STATUS" size="10"><input type="password" name="PASSWORD" size="10"><br>
  <input type="submit" value="Login"></p>
  </center></div>
</form>
Avatar billede somaliomar Praktikant
06. februar 2003 - 14:31 #11
<%
Response.Buffer = True
STATUS = Request("STATUS")
PASSWORD = Request("PASSWORD")
USERNAME = Request("USERNAME")
   
If STATUS = "CHECKEM" Then
    If (PASSWORD = "sample") AND (USERNAME = "sample" )THEN
        Session("PASSWORDACCESS") = "Yes"
        Response.redirect "den-hemmelige-side.asp"
    End If
End If

If Session("PASSWORDACCESS") <> "Yes" Then
%>
      <HTML>
      <BODY bgcolor="#FFFFFF">
      <form method="POST" action="thispage.asp">
      <div align="center"><center><p>
      <input type="password" name="USERNAME" size="10"><br>
      <input type="password" name="PASSWORD" size="10"><br>
      <input type="hidden" value="CHECKEM" Name="STATUS" >
      <input type="submit" value="Login"></p>
      </center></div>
      </form>
      </BODY>
      </HTML>
<%
Response.End
End If
%>
Avatar billede somaliomar Praktikant
06. februar 2003 - 14:31 #12
For sent... :)
Avatar billede mm12010 Nybegynder
06. februar 2003 - 14:34 #13
-----------------------------------------------------
Du kan bare hardcode kodeordet i din ASP fil.
-----------------------------------------------------

mufoxe >> hvad er hardcode?
Avatar billede theselfimages Nybegynder
06. februar 2003 - 14:47 #14
somaliomar => jeg har brugt dit svar...
men da jeg loggede ind og det virkede! klikkede jeg på et link for at vise en anden side, og derefter klikkede jeg til login siden, som nu er HELT blank!?
Avatar billede somaliomar Praktikant
06. februar 2003 - 14:51 #15
Hvad er det for et link du klikkede på? Hvis du forlader siden bliver session'et dødt. Læs mere om sessions på http://www.html.dk/tutorials/asp/lektion12.asp
Avatar billede theselfimages Nybegynder
06. februar 2003 - 14:56 #16
Hmm.. ja. Men så skulle der vel tilføjes en session ala den tutorial? Det virker jo hvis man går væk fra siden og tilbage til login siden.
Avatar billede theselfimages Nybegynder
06. februar 2003 - 15:12 #17
Somaliomar=> Hvordan tilføjes denne Session objektet korrekt til dit svar?
Avatar billede oasen Nybegynder
06. februar 2003 - 16:03 #18
Siden er blank, fordi din session ikke er tom. Du vil nok blive glad for en logout-knap: (Jvf. somaliomars eksempel)

<%
If Request.Querystring("action") = "logout" Then
  Session.Abandon
  Response.Redirect "thispage.asp"
End If
Response.Write "<a href='den-hemmelige-side.asp?action=logout'>Log ud</a>"
%>

Dette skal indsættes på din "hemmelige" side.
Avatar billede somaliomar Praktikant
06. februar 2003 - 16:12 #19
oasen har ret. Her har du oasen's eksempel flettet ind i mit tidligere eksempel :)

<%
Response.Buffer = True
STATUS = Request("STATUS")
PASSWORD = Request("PASSWORD")
USERNAME = Request("USERNAME")

If STATUS = "CHECKEM" Then
    If (PASSWORD = "sample") AND (USERNAME = "sample" ) THEN
        Session("PASSWORDACCESS") = "Yes"
        Response.redirect "den-hemmelige-side.asp"
    End If
Elseif STATUS = "LOGOFF" THEN
    Session.Abandon
    Response.Redirect "thispage.asp"
End If

If Session("PASSWORDACCESS") <> "Yes" Then
%>
      <HTML>
      <BODY bgcolor="#FFFFFF">
      <form method="POST" action="thispage.asp">
      <div align="center"><center><p>
      <input type="password" name="USERNAME" size="10"><br>
      <input type="password" name="PASSWORD" size="10"><br>
      <input type="hidden" value="CHECKEM" Name="STATUS" >
      <input type="submit" value="Login"></p>
      </center></div>
      </form>
      </BODY>
      </HTML>
      <%
      Response.End
Else
%>
      <h1>Nu er du logget ind!</h1>
      <a href="thispage.asp?STATUS=LOGOFF">Log af</a>
<%
     
End If
%>
Avatar billede theselfimages Nybegynder
06. februar 2003 - 16:22 #20
Tak for hjælpen til alle!
Avatar billede somaliomar Praktikant
06. februar 2003 - 16:23 #21
Takker for points :)
Avatar billede theselfimages Nybegynder
06. februar 2003 - 16:29 #22
Lige en lille ting!
Hvordan er det nu jeg sætter focus i det første indtastningsfelt fra start?
Avatar billede mm12010 Nybegynder
06. februar 2003 - 16:35 #23
<BODY bgcolor="#FFFFFF" onLoad="document.formnavn.USERNAME.focus();">

NB: Husk at navngive din form, ellers virker det ikke :o)
Avatar billede theselfimages Nybegynder
06. februar 2003 - 16:44 #24
FORM?
Avatar billede somaliomar Praktikant
06. februar 2003 - 16:45 #25
Ja
<form method="POST" name="formnavn" action="thispage.asp">
Avatar billede theselfimages Nybegynder
06. februar 2003 - 16:49 #26
Ahhh! jeg have bare ikke noget name på min form! Derfor fattede jeg ikke lige hvad du mente... Sorry.
Tak for hjælpen!
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