Kom ihåg mig?
Home Menu

Menu


Lösenordsskydda mapp i ASP.NET-applikation

Ämnesverktyg Visningsalternativ
Oläst 2008-12-31, 08:41 #1
etanders etanders är inte uppkopplad
Medlem
 
Reg.datum: Dec 2004
Inlägg: 160
etanders etanders är inte uppkopplad
Medlem
 
Reg.datum: Dec 2004
Inlägg: 160
Skulle vilja uppnå följande situation i en ASP.NET 3.5-applikation:
- Roten och ev. undermappar är ej lösenordsskyddade.
- Endast undermappen "Admin" är lösenordsskyddad.

Har försökt att lägga in följande i web.config-filen i roten:
Kod:
 <location path="Admin">
  <system.web>
   <authentication mode="Forms">
    <forms loginUrl="~/Admin/Login.aspx" />
   </authentication>
   <authorization>
    <deny users="?" />
   </authorization>
  </system.web>
 </location>
Det funkar att köra (lokalt från Visual Studio 2008) när jag går till sidor i roten, men om jag försöker gå till Adminmappen kommer ett felmeddelande:

Serverfel i tillämpningsprogrammet /.
Konfigurationsfel
Beskrivning: Ett fel uppstod när en konfigurationsfil som är nödvändig för att utföra begäran behandlades. Granska felinformationen nedan och gör nödvändiga ändringar i konfigurationsfilen.
Parsningsfelmeddelande: Det är fel att använda ett avsnitt som är registrerat som allowDefinition=MachineToApplication utanför tillämpningsnivån. Felet kan uppstå av att en virtuell katalog inte är konfigurerad som ett tillämpningsprogram i IIS.


Under utvecklingen kör jag applikationen lokalt i Visual Studio 2008, så jag har inte IIS installerat. Hela applikationen ska sedan upp på ett webbhotell. Finns det någon enkel detalj jag har missat för att få det att funka?

Eller ska jag tänka om och göra admin-delen som en separat webbapplikation? Jag har ändå all businesslogik i ett separat projekt.
etanders är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-12-31, 10:30 #2
ChristofferP ChristofferP är inte uppkopplad
Nykomling
 
Reg.datum: Oct 2008
Inlägg: 34
ChristofferP ChristofferP är inte uppkopplad
Nykomling
 
Reg.datum: Oct 2008
Inlägg: 34
Kika på http://www.theserverside.net/tt/arti...Authentication, där tar dom upp felet du får samt hur man löser det.

En sak som säkert inte orsakar felet men som slår mig direkt är att om du sätter "deny" på /Admin så kan inte inloggningssidan ligga på /Admin/Login.aspx, man har ju inte rättigheter att gå dit
ChristofferP är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-12-31, 10:41 #3
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Här beskrivs en lösning på ditt problem:

http://www.eggheadcafe.com/forumarchives/n...ost24881509.asp

Eller kika på den kompletta Knowledgebase artikel hos Microsoft som beskriver det hela:

http://support.microsoft.com/default.aspx?...kb;en-us;316871


Kod:
<system.web> *
 * *<authorization> *
 * * * *<allow users="*" /> *
 * *</authorization> *
</system.web> *
<location path="/yoursubfolder"> *
 * *<system.web> * 
 * * * *<authentication mode="Forms" > *
 * * * * * *<forms loginUrl="login.aspx" name=".ASPNETAUTH" protection="None" path="/subdir" 
 * * * * * * * timeout="20" > *
 * * * * * *</forms> *
 * * * *</authentication> *
 * * * *<authorization> *
 * * * * * *<allow users="?" /> *
 * * * *</authorization> *
 * *</system.web> *
</location>
Conny Westh är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-12-31, 19:01 #4
etanders etanders är inte uppkopplad
Medlem
 
Reg.datum: Dec 2004
Inlägg: 160
etanders etanders är inte uppkopplad
Medlem
 
Reg.datum: Dec 2004
Inlägg: 160
Tack för länktipsen! Jag ska kolla på dem, men det får nog bli nästa år

Gott nytt år!
etanders är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-01-01, 21:43 #5
etanders etanders är inte uppkopplad
Medlem
 
Reg.datum: Dec 2004
Inlägg: 160
etanders etanders är inte uppkopplad
Medlem
 
Reg.datum: Dec 2004
Inlägg: 160
ConnyWesth, det exempel du gav var inte riktigt vad jag önskade, men det gav mig ändå den hjälp jag behövde. Tack för det.

I mitt fall vill jag ha roten öppen för alla, och endast mappen "Admin" lösenordsskyddad. Om någon annan skulle ha samma problem så verkar följande innehåll i web.config (i roten) fungera.

Kod:
<configuration>
  <system.web>
    <authentication mode="Forms">
      <forms loginUrl="Login.aspx" />
    </authentication>
    <authorization>
      <allow users="?" />
    </authorization>
  </system.web>
  <location path="Admin">
    <system.web>
      <authorization>
        <deny users="?" />
      </authorization>
    </system.web>
  </location>
</configuration>
etanders är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 06:55.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017