Någon som har nåt tips på hur man gör en bra inloggningsfunktion via asp? Den behöver inte vara idotsäker. Är det förresten "bättre" att göra inloggningsfunktioner mha ASP eller skall jag istället välja nåt JavaScript?
// Mattias
9 svar · 760 visningar · startad av Mattias
Någon som har nåt tips på hur man gör en bra inloggningsfunktion via asp? Den behöver inte vara idotsäker. Är det förresten "bättre" att göra inloggningsfunktioner mha ASP eller skall jag istället välja nåt JavaScript?
// Mattias
att göra en inloggning via javascript funkar ju bara om browsern stödjer javascript, och javascript går ju att stänga av i browsern, så man skall inte bara förlita sig på javascript... ur denna synpunkt är ASP säkrare... en nackdel är ju att sidan måste skickas till servern och tillbaks för att att valideras... säkrast är naturligtvis att använda båda metoderna. Använd javascript först, och om det funkar så kan du ju alltid skippa ASP:n...
------------------
MVH / Vide
Min hemsida:webeye.nu
Om du vill använda dig av det allra enklaste ska du använda dig av javascript. Vill du dock ha det lite mer avancerat och säkert kan du använda dig av asp eller perl. Jag rekommenderar att du kollar in på http://www.idg.se/iworld/webbskolan/ där det finns ett mycket bra script som du kan skydda dig med.
------------------
H_A_Z_Z_E
[Redigerat av Hazze den 22 mar 2000]
därför att du använder en webbplats som har asp-stöd tycker jag att du skall lägga in ett asp-lösenordskydd, det är inte krångligare än att använda sig av javascript, dessutom är säkerheten god med asp och obefintlig med javascript (om vi talar om ett klient-baserat script)
Om du bara behöver skydda ett par sidor och är ensam om att behöva logga in kan du enkelt slänga in din lösenordskod direkt i asp-dokumentet utan att använda en databas (hör av dig om du behöver kunna ha många användare).
Börja med att skapa en inloggningssida, login.html:
<html>
<head>
<title>logga in</title>
</head>
<body>
<form action="login.asp" method="post">
Login:<input type="text" name="login"><br>
Lösenord:<input type="password" name="password"><br>
<input type="submit" value="Login" name="submit">
</form>
</body>
</html>
Sen en sida som kollar lösenordet och sätter en session, login.asp:
<%@ LANGUAGE="VBSCRIPT" %>
<%
'byt login och lösenord till något lurigt nedan
If Request.Form("login") = "mattias" AND Request.Form("password") = "halmstad" Then
'om login och lösen var rätt, skapa en session.
session("inloggad") = 1
%>
<html>
<head>
<title>Inloggad</title>
</head>
<body>
Du är nu inloggad.<br>
<a href="index.asp">Fortsätt
till hemsidan >> </a>
</body>
</html>
<%
'om login eller lösen var fel, skicka tillbaka personen till inloggningssidan
Else
response.Redirect("login.html")
End If
%>
Sen skriver du enligt följande modell på alla sidor du vill skydda:
<%@ LANGUAGE="VBSCRIPT" %>
<%
If session("inloggad") = 1 Then
%>
<html> din sidas innehåll här...</html>
<%
Else
response.Redirect("login.html")
End If
%>
Sådär nu skall det funka, kanske inte den snyggaste lösningen, men antagligen en av de enklaste. Det kan ju kanske vara idé att skapa en utloggningssida där du dödar sessionen när du är klar, menmen jag orkar inte skriva mer just nu...
Verkar vara ett riktigt bra inloggninsscript tycker jag :)
Hur gör jag om jag vill ha flera användare? Måste jag använda mig av en databas?
------------------
// Hazze
Hur många användare talar vi om? Om det är tex fem stycken är det väl lite "overkill" att använda en databas.
Förutsatt att du bara skall ha med ett fåtal personer kan du byta ut följande i login.asp:
<%@ LANGUAGE="VBSCRIPT" %>
<%
'byt login och lösenord till något lurigt nedan
If Request.Form("login") = "mattias" AND Request.Form("password") = "halmstad" Then
'om login och lösen var rätt, skapa en session.
session("inloggad") = 1
%>
<html>
mot:
<%@ LANGUAGE="VBSCRIPT" %>
<%
Dim Login, Password, Forsok
Login = Request.Form("login")
Password = Request.Form("password")
'Byt ut login & lösenorden mot något lite
'lurigare än de angivna nedan
If Login = "person1" AND Password = "losen1" Then
Inloggningsforsok = "Ok"
' Här lägger vi in de nya användarna, det är
' bara att kopiera de två nästkommande raderna
' för att lägga in fler användare
ElseIf Login = "person2" AND Password = "losen2" Then
Inloggningsforsok = "Ok"
' Här har jag kopierat ovanstående rader och
' lagt in nytt login & lösen
ElseIf Login = "person3" AND Password = "losen3" Then
Inloggningsforsok = "Ok"
else
end If
' Här kollar vi om inloggningsförsöket var
' okej, om så är fallet så sätter vi en session
If Inloggningsforsok ="Ok" Then
session("inloggad") = 1
%>
<html>
Koden jag använder ser ut så här, kort och bra :) ;
<%
dim id, psw
session("id") = Request.Form("login")
session("psw") = Request.Form("password")
If session("id") = "Person1" And session("psw") = "psw1" or session("id") = "Person2" and session("psw") = "psw2" or session("id") = "Person3" and sessin("psw") = "psw3" then
Inte så stor skillnad, bara det att det blir mindre att skriva :)
------------------
SPiN, bjowik99@it-gymnasiet.nu
Stämmer, i varje fall om man bara har några få sidor att skydda.
Det finns helt enkelt många sätt att göra på ... Välj den som känns bra för dig!