2009-04-20 21 views
0

Ich habe eine Webanwendung mit dem .Net 2.0 Framework. Die gesamte Website ist auf authentifizierte Benutzer mit Windows-Authentifizierung beschränkt. Diese Regeln sind in der Datei web.config folgendermaßen einstellen:ASP.Net URL Neuschreiben und Authentifizierung

<location path="/"> 
    <system.web> 
     <authorization> 
      <allow roles="CustomerAdministrator, Manager"/> 
      <deny users="*"/> 
     </authorization> 
    </system.web> 
</location> 
<location path="Path/To/Public/File.aspx"> 
    <system.web> 
     <authorization> 
      <allow users="*"/> 
     </authorization> 
    </system.web> 
</location> 
[...] 

Wie oben gezeigt, ich habe eine Seite, die ich öffentlich sein soll. Bis zu diesem Punkt funktioniert alles gut. Wir url vor kurzem hinzugefügt, um schönere URLs umschreiben, so dass ich eine Rewrite-Regel für die Öffentlichkeit Seite:

<RewriterConfig> 
    <Rules> 
     <RewriterRule> 
      <LookFor>~/Public</LookFor> 
      <SendTo><![CDATA[~/Path/To/Public/File.aspx]]></SendTo> 
     </RewriterRule> 
    </Rules> 
</RewriterConfig> 

Wenn nun durch seine direkte URL der öffentliche Seite zugreifen, es funktioniert als (keine Authentifizierung erforderlich) erwartet, aber Wenn ich versuche, über die neu geschriebene URL auf die Seite zuzugreifen, wird nach Authentifizierung gefragt.

Weiß jemand wo dieses Problem herkommt?

+0

Was verwenden Sie zum Umschreiben der URLs? –

Antwort

0

Ich habe tatsächlich das Problem gefunden. Ich verwende ein URLRewriter Projekt, das einige meiner Kollegen im Internet gefunden haben, und das Problem kam von der Tatsache, dass es sich unter der Ereignis registriert. Dies funktioniert zwar mit der Formularauthentifizierung, aber nicht mit der Windows-Authentifizierung, die ich verwende.

Um das Problem zu lösen, musste ich es einfach so ändern, dass es sich stattdessen auf dem BeginRequest-Ereignis registriert (wie in den Kommentaren geschrieben ... RTFM ...).

0

Haben Sie versucht, Ihr Standort-Tag zu ändern, um die/Public URL zu verwenden?

+0

Gute Idee ... aber ich habe es nur versucht, es ändert nichts. – Wookai

Verwandte Themen