Защита файла ELMAH - PullRequest
       7

Защита файла ELMAH

1 голос
/ 25 мая 2010

Я пытаюсь разрешить доступ к файлу elmah.axd только для частичного входа в систему, а все остальные должны быть запрещены. Я следовал учебнику Фила Хаака по защите файла.

<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="admin@testing.com"/>
            <deny users="*"/>
        </authorization>
    </system.web>
</location>

Сначала я вошел в систему как user@testing.com и попытался получить доступ к файлу http://localhost:58961/admin/elmah.axd, и меня правильно перенаправили на страницу Login.aspx. Затем я вошел как admin@testing.com и смог получить доступ к файлу elmah по http://localhost:58961/admin/elmah.axd. Теперь я снова вошел как user@testing.com и я был в состоянии получить доступ к файлу emlah теперь. В чем причина такого поведения?

1 Ответ

0 голосов
/ 11 января 2011

Может показаться, что у вас все еще есть действительный ключ сеанса от вашей учетной записи "admin@testing.com". Это может быть из окна браузера или из-за того, как asp.net обрабатывает аутентификацию.

иногда может возникнуть ситуация, когда билет аутентификации asp.net имеет рыночный срок действия, но срок действия файла cookie еще не истек (из-за истечения срока действия)

...