27. maj 2006 - 00:43Der er
14 kommentarer og 2 løsninger
Login-sikkerhed
God aften.
Er nybegynder og har fået stillet en opgave i skolen. Jeg skal lave et loginsystem hvor der skal være mulighed for forskellige rettigheder for brugerne.
Hvor ville i starte? Og min største bekymring, hvordan går jeg det sikkert? Altså er det nok at ligge en Response.Redirect på den side som folk ikke må komme ind på, uden de passende rettigheder?
JEg ville lave en access database (let og enkel til test) med 4 felter. Brugerid, brugernavn, password og rolle. Herefter ville jeg kode databasetilgangen i codebehind filen for formen. Indsæt så et par tekstbokse for brugernavn/password, med hver deres labels til at udskrive fejl, f.eks når der ikke er udfyldt felter, eller brugernavnet ikke eksiterer/password er forkert. Herefter er det bare at kæde skidtet sammen ;) Jeg har lavet lignende mange gange. Jeg er ved at læse datamatiker og er tit blevet spurgt hvorfor jeg ikke bare bruger de indbyggede controls fra .net, men det er da lidt sjovere at lave det selv ;)
Glemte lige omkring sikkerheden.. Hvis en bruger er logget ind gemmes hans rolle i en session. På den måde kan du let spørge på den session fra de andre sider der skal have rolle adgang, og hvis session er tom kan du sende dem videre til login siden. Simpelt men effektivt.
Her er et hurtigt eksempel i C# (hvis det da er det du koder). Hvis brugeren logger korrekt ind skrives brugernavnet i en label under login knappen. Det er lavet som en user control. Du kan måske få lidt idéer fra det:
Mange tak for dit svar. Det var til en del hjælp, men hvad gør jeg nu når jeg helt sikkert går på grund? Altså, jeg kan nemt se tingene for mig som du har forklaret, men altså jeg kan jo ikke kode det hele. Jeg har jo heller ikke uendelige points herinde...
Og forresten, vi har kun lært VB, så jeg er slet ikke med i det eksempel der... Lidt ærgeligt, det var ellers fedt du gad skrive et.
Lige en sidste ting, hvad var det en user control var? VI har garanteret fået der at vide, men det er umuligt at huske alt.
Lidt sjovt - som chaos henviser til, så er det hele lavet fikst og færdig i asp.net 2.0. Såfremt opgaven er at du skal kode det hele selv (hvilket self. ville være en smule fjollet når det nu er lavet i forvejen) - kan du jo passende lade dig inspirere af ASP.NET 2.0 modellen. Men æhh... er det i 1.1 i skal lave det - eller i 2.0, og hvis det sidste er tilfældet... Går opgaven så ud på at i skal kigge på det der er lavet i 2.0, og så bare udnytte det? Mvh
Hej X-pander. Synd det ikke er c#, vb.net har jeg ikke kodet i ;) Der er mange hjælpsomme brugere herinde så mon ik du kan få hjælp til det meste i denne tråd.
Okay, tak for svarene alle sammen, især dr chaos' ekspempel. Det skal jeg lige nærstudere. Og ja, vi koder i 2.0, så det kan godt bruges.
Og ja, det er lidt ærgeligt at vi koder VB istedet for C#, da jeg synes der er meget tale omkring C#. Det kan godt være det bare er mig, jeg er heller ikke inde i det endnu helt.
Jeg har kigget en smule på vb.net og jeg synes at sprogets syntaks er lidt snørklet i forhold til c#, som mest minder om en blanding af c++ og java. Det er dog værd at huske på hvis du kan eet sprog er det let at lære syntaksen for et andet. Hæng i ;)
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.