【发布时间】:2010-11-17 17:42:44
【问题描述】:
我在尝试保护 ELMAH 时遇到了麻烦。我关注了 Phil Haacked 的 tutorial,唯一的区别是演示项目是一个 Web 应用程序,而我的项目是一个网站。
<add verb="POST,GET,HEAD" path="/admin/elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
<location path="admin">
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
</location>
使用前导“/”我收到“找不到资源。”的响应,如果我删除前导“/”,一切正常,除了可以通过在 /admin/ 前面附加目录名称来绕过身份验证elmah.axd。
例如没有前导“/”
www.mysite.com/admin/elmah.axd - 触发身份验证
www.mysite.com/asdasdasd/admin/elmah.axd - 不触发身份验证并显示 ELMAH
如何确保 ELMAH 安全,同时保持远程查看日志的能力?
谢谢。
给其他人的注意事项:
遵循 Alan 在下面的回答会产生以下结果。
www.mysite.com/admin/elmah.axd - 触发身份验证
www.mysite.com/admin/asdasdasd/elmah.axd - 触发身份验证
www.mysite.com/asdasdasd/admin/elmah.axd - 找不到资源。 (正是我们想要的)
【问题讨论】:
标签: .net asp.net web-config elmah