---
title: "Rättigheter"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/84234-rättigheter"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Biasse"
published: "2003-08-14T13:04:19.000Z"
updated: "2003-08-15T05:38:33.000Z"
replies: 13
views: 478
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/84234-rättigheter"
---

# Rättigheter

## #1 — Biasse, 2003-08-14T13:04Z

Har en sida där jag skulle vilja bestämma hur menyn ska se ut för olika medlemar som loggat in.
Ska kunna bestämma 2-3 olika behörighets nivåer.

Har provat runt lite själv men gått i väggen med det.

Finns det nått färdigt script eller annan lösning på det?

mvh  Biasse    :q

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

## #2 — erka, 2003-08-14T13:11Z

Hur identifierar du deras behörighet idag då ?

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

## #3 — Biasse, 2003-08-14T13:18Z

Jag har bara en login sida idag så det måste nog donas en hel del.

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

## #4 — erka, 2003-08-14T13:19Z

Hur är den då ? Har du användarna i en databas ?

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

## #5 — Biasse, 2003-08-14T13:19Z

Dom ser alltså samma sidor alla.   Scriptet ger alla samma behörighet och det är det jag vill ändra på.

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

## #6 — Biasse, 2003-08-14T13:20Z

Jepp

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

## #7 — Biasse, 2003-08-14T13:28Z

erka.    du har pm

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

## #8 — erka, 2003-08-14T13:29Z

Ja men hur loggar de in ? Har de alla samma lösenord och inget som identifierar dem idag ? Isåfall får du börja med att tex göra en databasdriven login mot tex access. 

En databas skulle kunna se ut så här (om du kör access)
TBL_Users
\-Pk_UsrId (Primärnyckel räknare)
\-Fk_AccessLevelId (Främmandenyckel från tabellen TBL_AccessLevels
\-UsrName (Text)
\-UsrPassword (Text)

TBL_AccessLevels
\-Pk_AccessLevelId (Primärnyckel räknare)
\-AccessId (tal, skulle även kunna vara Pk_AccessLevelId id:t)
\-AccessDescription (text)

Sen kan du även om du vill bygga in menyerna i en tabell
TBL_MenuItems
\-Pk_MenuItemId
\-MenuItemText
\-MenuAccessLevel
\-MenuItemPageName

Där du bygger upp menyerna och visar endast de ens behörighets id har rätt att se.

Allt beror på hur du vill lösa det, du skulle kunna ta och skippa meny tabellen och köra en case satts om vilken "statisk" meny du ska visa,och sedan på sidorna köra en behörighetskoll (vilket du även måste göra med tabellsättet)

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

## #9 — Biasse, 2003-08-14T13:31Z

Nej alla har olika lösen.

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

## #10 — PatrikB, 2003-08-14T14:08Z

> **erka skrev:**
>
> En databas skulle kunna se ut så här (om du kör access)
> TBL_Users
> \-Pk_UsrId (Primärnyckel räknare)
> \-Fk_AccessLevelId (Främmandenyckel från tabellen TBL_AccessLevels
> \-UsrName (Text)
> \-UsrPassword (Text)
> 
> TBL_AccessLevels
> \-Pk_AccessLevelId (Primärnyckel räknare)
> \-AccessId (tal, skulle även kunna vara Pk_AccessLevelId id:t)
> \-AccessDescription (text)
> 
> Sen kan du även om du vill bygga in menyerna i en tabell
> TBL_MenuItems
> \-Pk_MenuItemId
> \-MenuItemText
> \-MenuAccessLevel
> \-MenuItemPageName

Det blir väldigt stelt att ha den uppbyggnaden.
Säg att vi har dessa menyer atlernativ:

\- Produkter
\- Säljstöd
\- Support

Nu är det så att Nisse behöver tillgång till Produkter & Support, Eva till Support & Säljstöd, Pelle till Produkter, Kalle till Produkter & Säljstöd

Hur skulle det då lösas med med tabellerna ovan om varje person endast kan ingå i en AccessLevel?

Jag skulle nog vilja ha en tabell till där man kopplar användarid + AccessLevel id för att kunna ge olika personer olika behörigheter.

Kika gärna igenom hur de har löst det i IBuySpy portalen (ok, det är asp.net men går att "tweaka" till Classic ASP

cya,
/PatrikB

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

## #11 — Melea, 2003-08-14T14:11Z

Mm fint sagt PatrikB. Du kan även skapa en kolumn i databasen som heter Access. I den skriver du sedan i det access numret personen i fråga ska ha. Sen kör du en If koll om personen har så hög access nivå som krävs för att innehållet ska visas.

```
<%If Session("access") > "1" then%>
```

MVH

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

## #12 — Biasse, 2003-08-14T14:59Z

hmm..   Finns det inget färdigt script man kan kika på??
Det här är helt nytt för mig...

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

## #13 — erka, 2003-08-14T16:01Z

PatrikB Jo det skulle man kunna göra men jag uppfattade det som han skulle ha 2-3 olika typer av användare, 2-3 olika menyer, och då tog jag det som var enklast. Ska han ha det som skrev är det ju bara att flytta

\-AccessId till användartabellen och köra en kommasepareradlista (eller en länktabell) så får du varje menyalternativ på användare

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

## #14 — Biasse, 2003-08-15T05:38Z

Min kontroll sida ser ut så här idag. Men hur jag än testar får jag inte till det. Jag vill ha 3 olika nivåer på inloggningen och har gjort en extra komlum i databasen som heter "access".  Nivåerna har jag tänkt skulle heta 1, 2 & 3. Jag kan tänka mig att ha 3 olika sidor att komma till ochså men efter som jag har ett lösen skydd på dom så måste det ochså ändras till alla. Det står längst ner som det är idag.
Hur skulle ni löst det om ni skrivit om det då??
\______________________________________\_
kontroll.asp:
\<%

Session.TimeOut=120
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (\*.mdb)};dbq=" & Server.MapPath("db/admin.mdb")&";pwd=Utz14trWQ"
Set RecSet = Server.CreateObject("ADODB.Recordset")

SQL = "Select \* From admin"
RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic

IF (RecSet.EOF or RecSet.BOF) then
Session("mess") = "Databasen är tom!"
Response.Redirect "index.asp"
ELSE

Do Until RecSet.EOF
IF RecSet("anvnamn") = Request.Form("anvnamn") AND RecSet("losenord") = Request.Form("losenord") Then
Session("check") = "111ok111"
Session("passw") = "YtSQ12uTr"

RecSet.Close
Connect.Close
Set RecSet = nothing
Set Connect = nothing

Response.Redirect "index2.asp"

END IF

RecSet.MoveNext
Loop

RecSet.Close
Connect.Close
Set RecSet = nothing
Set Connect = nothing

Session("mess") = "fel användarnamn eller lösenord"
Response.Redirect "index.asp"
END IF
%\>
\_____________________________________________\_
Sid skyddet:
\<% IF NOT Session("check") = "111ok111" AND NOT Session("passw") = "YtSQ12uTr" THEN
Session("mess") = "Du måste logga in först!"
Response.Redirect "index.asp" 
ELSE %\>
\________________________________________________\_
mvh  Biasse

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/84234-rättigheter
