---
title: "Säker inloggning"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/138169-säker-inloggning"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "freddssite"
published: "2005-11-24T10:37:26.000Z"
updated: "2005-11-24T13:49:43.000Z"
replies: 3
views: 335
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/138169-säker-inloggning"
---

# Säker inloggning

## #1 — freddssite, 2005-11-24T10:37Z

Jag undrar om denna inloggningen är korrekt gjord och säker? Jätte tacksam för svar...:)

```
<%
' 0===================================================================0
' 		Kontroll Användare
' 0===================================================================0
	
If Request.Querystring("kontroll") = "anvandare" Then	

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("safe.mdb") & ";pwd=kalle;"
Set RecSet = Server.CreateObject("ADODB.Recordset")

username = replace(request.form("user"),"'","''")
password = MD5(replace(request.form("pass"),"'","''"))

SQL = "SELECT * FROM userid where user= '"&username&"' and pass= '"&password&"'"
RecSet.Open SQL, Connect

If RecSet.EOF then
Connect.Close
Set Connect=Nothing
Session.Abandon
Response.Redirect "default.asp?session=De blev något fel, försök igen!"
	
Else if RecSet("aktiv") = "nej" then
Connect.Close
Set Connect=Nothing
Session.Abandon
Response.Redirect "default.asp?session=Konto ej aktivt, kontakta Webmaster!"
end if

Session.TimeOut = 120

Session("valkommen") = recset("valkommen")

Connect.Close
Set Connect=Nothing

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("safe.mdb") & ";pwd=kalle;"
Set RecSet = Server.CreateObject("ADODB.Recordset")

Uppdatera = "SELECT * FROM userid WHERE user= '"&username&"' and pass= '"&password&"'"
RecSet.Open Uppdatera, Connect, adOpenDynamic, adLockOptimistic
		
RecSet("inloggad") = date+time
		
RecSet.Update
RecSet.Close
Set RecSet = Nothing
Connect.Close
Set Connect = Nothing

Response.Redirect "../space/mir/default.asp"

End If 
End If %>
```

Permalänk: https://www.webforum.nu/p/138169

## #2 — emission, 2005-11-24T10:49Z

Rätt så bra, men

\-Onödigt att öppna samma databaskoppling två gånger
\-Onödigt att SELECT:a ut ett recordset för att uppdatera
\-Lite tokig if-struktur
\-Strängar måste URLEncodas när de ska med i en querystring

```
<%
' 0===========================================================  ========0
' 		Kontroll Användare
' 0===========================================================  ========0

If Request.Querystring("kontroll") = "anvandare" Then	

	username = replace(request.form("user"),"'","''")
	password = MD5(replace(request.form("pass"),"'","''"))

	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("safe.mdb") & ";pwd=kalle;"
	
	SQL = "SELECT * FROM userid where user= '"&username&"' and pass= '"&password&"'"
	Set RecSet=Connect.Execute(SQL)

	If RecSet.EOF then
		Connect.Close
		Set Connect=Nothing
		Session.Abandon
		Response.Redirect "default.asp?session=" & Server.URLEncode("De blev något fel, försök igen!")
	Elseif RecSet("aktiv") = "nej" then
		Connect.Close
		Set Connect=Nothing
		Session.Abandon
		Response.Redirect "default.asp?session=" & Server.URLEncode("Konto ej aktivt, kontakta Webmaster!")
	end if

	Session.TimeOut = 120

	Session("valkommen") = recset("valkommen")

	Uppdatera = "UPDATE userid SET inloggad=Now() WHERE user= '"&username&"' and pass= '"&password&"'"
	Connect.Execute Uppdatera,,128
	
	Connect.Close
	Set Connect = Nothing

	Response.Redirect "../space/mir/default.asp"

End If %>
```

Permalänk: https://www.webforum.nu/p/1714622

## #3 — freddssite, 2005-11-24T11:46Z

Strängar måste URLEncodas när de ska med i en querystring....varför då? vad gör de?

Permalänk: https://www.webforum.nu/p/1714634

## #4 — Calippo, 2005-11-24T13:49Z

pwd=Kalle kan du lika gärna ta bort. Det är ändå lätt att knäcka lösenord till databaser.
Lägg istället databasen utanför www mappen på servern, tex en mapp som heter db.

Permalänk: https://www.webforum.nu/p/1714662

---

Tråden på webben: https://www.webforum.nu/amne/asp/138169-säker-inloggning
