Till förstasidan för privatkunderOm du vill kontakta oss på TeliaSoneraGer dig översikt och hjälper dig hitta på  privatsidornaSök på telia.se

Telia Webbhotell

Webbhotell Enkel

Webbhotell Standard 

Webbhotell Avancerad

SQL Server

Accessdatabas

ASP Komponenter
Funktioner & Tips

Administration
 
Snabbguide
Support/Kundtjänst
Om domännamn
Tillgänglighetsgaranti
 
 
 
 


Telia Webbhotell

ASPLogin

 

- Introduktion
- Förberedelser inför ditt webb projekt
- Att skydda dina dokument
- Fler ASPL.Login objekt funktioner
- Förbered användardatabasen och inloggningsformulären i global.asa
- Webb-baserad administration
- Vem är inloggad?
- Sammanfattning av alla inställningar, formulär, variabler och metoder

Introduktion

ASPLogin tillhandahåller användarautentisering och kontroll för Active Server Page (ASP) baserade webbsajter och applikationer.

ASPLogin använder en ActiveX serverkomponent för att automatiskt skicka användare till en loginsida. Därefter kontrolleras användarens rättigheter i databasen. Du kan använda den färdiga användardatabasen som följer med ASPLogin eller använda en annan ODBC datakälla. ASPLogin har en webb-baserad administrationssida som kan användas för att lägga till nya användare eller grupper till din ASPLogin databas. Både ASPLogin och administrations-webbsidan är tillräckligt flexibla för att anpassas till egna databaser du redan använder eller planerar att implementera.

Förberedelser inför ditt webb projekt

Se till att alla HTML dokument du vill skydda med ASPLogin har filändelsen .asp, inte .htm eller .html. Om du använder frontPage kan du ändra namnen på dina filer utan att du bryter några länkar.

Det finns kopior av asplogin.asp och aspldeny.asp på din webbservers root. Saknas dessa filer kan du kopiera dit dem själv!

Här kan du hämta filerna om de saknas: asplogin.zip  

Du kan redigera asplogin.asp och aspldeny.asp för att passa din webbsajt. Se dock till att inte ändra i ASP-koden före <HTML> eller mellan <!--ASPLogin form begins--> och <!--ASPLogin form ends-->.

ASPLogin visar meddelandet "invalid login" på loginsidan om användaren matar in ett användarnamn/lösenord som inte finns i databasen. Du kan anpassa meddelandet "invalid login" genom att sätta variabeln Session("asplLoginError") i global.asa. Detta är speciellt användbart för sajter som ej är engelskspråkiga.

Man kan också ha anpassade meddelanden för användare vars konton är avstängda eller för gamla . För att använda dessa funktioner skapar du ett par ASP sidor och lägger dem i server rooten. Du måste sedan sätta ett par sessions variabler med sökvägarna till dessa filer. (se global.asa, längre ned). Om du inte anger dessa filer, kommer ASPLogin att använda aspldeny.asp.

Att skydda dina dokument

Varje Asp fil som kommer skall skyddas med ASPLogin måste ha ett par rader ASP-kod i början på filen. ASP-raderna måste ligga före all annan HTML eller ASP-kod.
Microsoft ASP använder VBScript om man inte anger något annat. I vilket fall så kommer här ett exempel i JScript. Allra högst upp i din Asp fil skall alltså följande rader finnas:

<%@ LANGUAGE=VBScript %>
<%
Set asplObj=Server.CreateObject("ASPL.Login")
asplObj.Protect
Set asplObj=Nothing
%>

Motsvarande i JScript:

<%@LANGUAGE=JScript%>
<%
asplObj=Server.CreateObject("ASPL.Login");
asplObj.Protect();
asplObj="";
%>

Genom att placera ovanstående rader i dina ASP-filer kommer användarna automatiskt att skickas till login sidan (asplogin.asp) första gången de försöker komma åt någon av ASP-filerna. Efter att ha loggat in kommer der att kunna nå alla skyddade sidor utan att behöva logga in igen under deras session. Om de kommer tillbaka vid en annan tidpunkt kommer de att få skriva in namn och lösenord igen oavsett vilken sida de försöker komma åt.

För att manuellt logga ut användare från din webbsajt måste de anropa en webbsida innehållande följande ASP script:

<% Session.Abandon %>

Användar, grupp och utgångsdatum kan sättas i varje dokument med följande direktiv, placerade mellan Server.CreateObject och Protect raderna:

asplObj.Group("GroupName")

asplObj.User("UserName")

asplObj.LastDate("1/1/2001")

Till exempel, för att göra dokument tillgängliga för alla användare i en grupp kallad "Redaktion", medlemmar i en grupp kallad "Tekniker" och användaren "Pelle" (som kan vara men inte behöver vara medlem i någon av grupperna) skulle du behöva lägga till följande rader högst upp i ditt dokument:

<%@ LANGUAGE=VBScript %>
<%
Set asplObj=Server.CreateObject("ASPL.Login")
asplObj.Group("Redaktion")
asplObj.Group("Tekniker")
asplObj.User("Pelle")
asplObj.Protect
Set asplObj=Nothing

%>

Fler funktioner i ASPL.Login objektet

Ett ASPL.Login objekt kan också anropa följande funktion:

asplObj.ResetPermission

Funktionen suddar alla användar, grupp och lastDate direktiv som redan satts på den aktuella sidan. This is useful only when you are running conditional permission code. De flesta ASPLogin installationer kommer aldrig att använda asplObj.ResetPermission.

Slutligen, ASPL.Login objektet har en DebugInfo funktion som returnerar debug information och versionsnummer.

Förbered användardatabasen och inloggningsformulären i global.asa

ASPLogin är konfigurerad med en färdig MS Access databas.

Vill använda en annan databasfil måste du tala om för ASPLogin var den kan hitta den. Likaså om du tänker använda MS SQL Server.

ASP sessions variabler talar om för ASPLogin var den kan hitta databasen.

Det bästa stället att placera den här informationen är i filen  'global.asa' på rootnivån av din webbsajt. Ett exempel på en global.asa fil visas här nedan.

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Sub Session_OnStart
Session("asplConnStr")=
"DBQ=f:\sites\customers\xyz1000\db\asplogin.mdb;
Driver={Microsoft Access Driver (*.mdb)};"
End Sub
</SCRIPT>

Ovanstående exempel filen sätter variabeln Session("asplConnStr") att peka på en Access databas installerad i f:\sites\customers\xyz1000\db\asplogin.mdb

Andra ASPLogin sessions variabler finns tillgängliga för att sätta de kolumn och tabellnamn ASPLogin använder för att authentisera användare och kontrollera grupptillhörigheter. Du behöver bara sätta dessa variabler om du inte vill använda den förinstallerade databasen och du behöver bara sätta dem en gång per session som angivits ovan. Det finns också sessionsvariabler för placeringen av html filer dit användarna skall skickas om deras konto slutar att gälla, om ett fel uppstår på sidan, o s v. Den fullständiga listan på sessionsvariabler finns i följande tabell:

Sessions Variabel

Användning

 

 

asplUserTbl
Namn på tabellen med användarinfo
asplGroupTbl
Namn på tabellen med gruppnamn
asplMemberTbl
Namn på tabellen som kopplar 
användare till grupper.
asplUserTbluserid
Ett fält med unikt nummer för 
varje användare
asplUserTblusername
Fält med användarnamn
asplUserTblpassword
Fält med lösenord
asplUserTblactive
booleskt värde (sant/falkskt) 
som anger om användaren är aktiv
asplUserTblexpires
Det sista datumet användaren 
kan logga in
asplGroupTblgroupid
Ett fält med unikt nummer
för varje grupp
asplGroupTblgroupname
Ett fält med gruppens namn
asplMemberTbluserid
Fält i medlemstabellen för 
användarId.
asplMemberTblgroupid
Fält i medlemstabellen för
gruppId
Session("asplFormPath")
Sökväg till  asplogin.asp
om den inte är 
placerad i rootkatalogen
Session("asplDenyPath")
Sökväg till aspldeny.asp 
om den inte är placerad
i rootkatalogen
Session("asplInactivePath")
Sökväg till sidan för
inaktiva användare 
(default är aspldeny.asp)
Session("asplExpiredPath")
Sökväg till sidan för 
användare vars sista 
inloggningsdatum har
passerats
(default är aspldeny.asp)
Session("asplLogPath")
Sökväg till loggfilen.
Session("asplLoginError")
Felmeddelandet som 
skall visas när ett 
felaktigt lösenord 
eller okänt användarnamn
har matats in i  asplogin.asp
Session("asplErrorPath")
Sökväg till sidan för
databas fel under
inloggningen 
(default är att 
skriva ett felmeddelande 
till webbläsaren)

Webb-baserad administration

Den webb-baserade administrationssidan är normalt installerad som /aspladmn.asp under din webbsajts root. Administrationsverktyget är skyddat av ASPLogin precis som dina andra sidor på din webbsajt.

Access till administrationsverktyget är initialt begränsat till  default användaren 'Admin', med lösenordet för ditt första konto 'Admin' i den förgenererade ASPLogin databasen. Observera att ASPLogin lösenord är skiftlägeskänsliga

Den webb-baserade administrationssidan låter dig lägga till, redigera och ta bort användare och grupper ur din ASPLogin databas.

Vem är inloggad?

ASPLogin sätter sessions variabeln Session("asplUserName") och Session("asplUserID") med namnet på den inloggade användaren. Du kan använda dessa variabler i dina egna script för att specialanpassa din webbsajt för olika användare.

Sammanfattning av alla ASPLogin inställningar, 
formulär, variabler och funktioner

Using the ASPL.Login object in an ASP page
set asplObj=
Server.CreateObject("ASPL.Login")
Create an ASPLogin object
 to protect this document
asplObj.User("<username>")
Restrict access to this 
.asp document to the user
 "<username>"
asplObj.Group("<groupname>")
Restrict access to this 
.asp document to the group
 "<groupname>"
asplObj.LastDate("<mm/dd/yyyy>")
Deny access to this page
 after "<mm/dd/yyyy>"
asplObj.Protect
Protect this page
asplObj.ResetPermission
Reset any user, group and
 date permission set 
already
asplObj.DebugInfo
Print out settings and 
debugging information
Other ASP useful in your documents
Session("asplUserName")
The username field for the 
currently logged in user
Session("asplUserID")
The userid field for the 
currently logged in user
Session.Abandon
Resets the ASP session and 
logs out the current user

 

ASPLogin session variables to
(optionally) be set in global.asa
Session("asplConnStr")
The connection string
or DSN name for the 
ASPLogin database
Session("asplUserTbl")
name of the table 
with user info
Session("asplGroupTbl")
name of the table 
with group names
Session("asplMemberTbl")
name of table that 
maps users 
to groups
Session("asplUserTbluserid")
autonumber or identity 
field for users
Session("asplUserTblusername")
field with user name
Session("asplUserTblpassword")
field with password
Session("asplUserTblactive")
boolean (yes/no) for 
whetherthe user is 
active
Session("asplUserTblexpires")
last date that the 
user can log in
Session("asplGroupTblgroupid")
autonumber or identity 
field for groups
Session("asplGroupTblgroupname")
field with group name
Session("asplMemberTbluserid")
field in member table
for userid
Session("asplMemberTblgroupid")
field in member table 
for groupid
Session("asplFormPath")
Path to asplogin.asp if not 
in the web server root
Session("asplDenyPath")
Path to aspldeny.asp if not 
in the web server root
Session("asplInactivePath")
Path to page for 
inactive users (default is 
aspldeny.asp)
Session("asplExpiredPath")
Path to page for expired 
users (default is 
aspldeny.asp)
Session("asplLogPath")
Windows path to user 
log file
Session("asplLoginError")
Error message to display
when incorrect password 
or unknownuser name is
entered in asplogin.asp
Session("asplErrorPath")
Path to page for 
database errors 
during login 
(default prints
a text message to 
the browser)