Avatar billede coder Nybegynder
25. januar 2006 - 20:53 Der er 12 kommentarer og
1 løsning

Masterpage logincheck

Hey.

Sidder og fifler lidt med masterpages. Vil have at brugeren SKAL logge ind for at se siderne.

Det ville jo være oplagt at placere login-checket på masterpagen... altså en metode masterpagen kalder.

Men content-siderne, som er de sider der benytter masterpagen loades FØR masterpagen :(
Altså  Page_Load kaldes før masterpagen's...

Så det eneste masterpages skal bruges til er grafiske template, eller hvad?! Det er da crappy!

Hvordan ville I bygge et fælles logincheck samt fælles design op?

Havde også overvejet at lave alle aspx sider arve fra en superklasse i stedet for System.Web.UI.Page... men er det nu smart?


Tak!
Avatar billede dr_chaos Nybegynder
25. januar 2006 - 21:07 #1
I asp.net placerer man "login check" i web.config.
Ikke noget asp skidt.
hvis du placerer
<authentication mode="Forms">
            <forms name=".FORMS" loginUrl="~/Logind.aspx" protection="All" timeout="30" path="/" requireSSL="false" slidingExpiration="true" cookieless="UseCookies"/>
        </authentication>

i <system.web> delen af web.config
Vil en bruger som ikke er logget på automatisk ryge hen til login.aspx
hvor du har din login form.
Avatar billede coder Nybegynder
25. januar 2006 - 21:09 #2
Og det kan jeg gøre i en specifik mappe www.x.dk/SECURE?

Mht requireSSL - sættes den til true ryger den selv over på https? Har SSL-certifikat...
Avatar billede dr_chaos Nybegynder
25. januar 2006 - 21:09 #3
Hvis du laver en fælles masterpage med en menu f.eks. bruger sitemap delen i asp.net så vil en bruger kun kunne se de punkter han har adgang til som ikke logget på.
Avatar billede coder Nybegynder
25. januar 2006 - 21:10 #4
Hvordan ved web.config at den er logget ind?
Avatar billede dr_chaos Nybegynder
25. januar 2006 - 21:13 #5
det vil jeg tro har ikke mulighed for at teste det da jeg ikke har certifikat.
du kan tilføje det i roden af dit websted.
hvis du nu vil lave specielle mapper for bestemte adgangsniveau laver du bare en ny web.config og tilføjer
<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
    <system.web>
        <authorization>
            <allow roles="Ansvarlig"  />
        <deny users="*"/>
        </authorization>
    </system.web>
</configuration>

det er alt som skal være i web.config filen. Den placeres i den mappe hvor en bruger med rollen ansvarlig skal have adgang til
Avatar billede coder Nybegynder
25. januar 2006 - 21:16 #6
Hmm... tror ik helt vi forstår hinanden.

Den skal redirecte til en login-side, hvis der ikke er logget ind... det gør ovenstående ikke så vidt jeg kan se.

Og det skal kun være for /SECURE biblioteket.
Avatar billede dr_chaos Nybegynder
25. januar 2006 - 21:20 #7
dette er den web.config fil du skal bruge:
<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
    <system.web>
      <authentication mode="Forms">
            <forms name=".FORMS" loginUrl="~/Logind.aspx" protection="All" timeout="30" path="/" requireSSL="false" slidingExpiration="true" cookieless="UseCookies"/>
        </authentication>
    </system.web>
</configuration>
den skal placeres i secure biblioteket også laver du en side kaldet login.aspx hvor brugeren skal logge sig på.
Avatar billede dr_chaos Nybegynder
25. januar 2006 - 21:22 #8
Når <authentication mode="Forms"> er sat sørger IIS for at holde styr på om du er logget på eller ej.
Hvis ikke sender den dig til den login side som er angivet i web.config filen.
Avatar billede coder Nybegynder
25. januar 2006 - 21:24 #9
Man må skulle sætte noget i logind.aspx for at IIS'en ved jeg er logget på, eller giver det da ingen mening!
Avatar billede dr_chaos Nybegynder
25. januar 2006 - 21:29 #10
nej det skal du ikke.
prøv evt. at kigge her:
Det er fra msdn hvor de giver et godt overblik over forms authentication
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/paght000012.asp
Avatar billede coder Nybegynder
25. januar 2006 - 21:42 #11
Kom til at tænke, hvor specificerer jeg så hvilke brugere der skal have access?

Med denne måde kan jeg så ikke selv designe sikkerhedscookies? Vil ikke have noget .NET standard-snask!!
Avatar billede dr_chaos Nybegynder
25. januar 2006 - 21:57 #12
Tror jeg ikke men det standard .net snask bruges af stortset alle som laver asp.net sider og det mindst lige så godt som det snask man laver i asp.
Avatar billede coder Nybegynder
10. juni 2006 - 21:09 #13
luk
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester