1
我想允許訪問elmah.axd文件只有一個perticular登錄和所有其他人應該被拒絕。我遵循菲爾哈克的tutorial來保護文件。保護ELMAH文件
<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
<add verb="POST,GET,HEAD" path="admin/elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
</httpHandlers>
<location path="admin">
<system.web>
<authorization>
<allow users="[email protected]"/>
<deny users="*"/>
</authorization>
</system.web>
</location>
首先我登錄的[email protected],並試圖訪問http://localhost:58961/admin/elmah.axd文件,我理所當然地被重定向到Login.aspx頁面。接下來,我以[email protected]的身份登錄,並能夠訪問位於http://localhost:58961/admin/elmah.axd的elmah文件。現在我再次登錄爲[email protected],我現在可以訪問emlah文件。這種行爲的原因是什麼?
你確定你的兩次嘗試之間註銷。很多時候,打開的瀏覽器窗口不允許cookie過期。我會導航到假頁面junk.aspx來驗證哪個登錄處於活動狀態。 – ggonsalv 2010-05-25 16:01:36