由于Elmah依赖于ASP.NET安全性,因此以下web.config部分不适用于ServiceStack授权:
<location path="admin">
<system.web>
<httpHandlers>
<add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
</httpHandlers>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
那么,除了管理员用户之外,将elmah.axd
锁定到每个人的最佳做法是什么?
答案 0 :(得分:3)
使用MVC运行ServiceStack时,通常应定义ServiceStack以使用api
向<location path="api">
等自定义位置提取请求。
请参阅此处获取设置说明:
因此,ServiceStack不会处理对其他位置的请求,因此位置路径<location path="admin">
将位于ServiceStack处理的路径之外,因此elmah.axd
的身份验证将由IIS处理。因此,IIS将按照惯例进行身份验证。