Оскільки 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
для всіх, крім користувачів адміністраторів?
Відповіді:
3 для відповіді № 1Коли ви запускаєте ServiceStack за допомогою MVC, ви, як правило, визначаєте ServiceStack, щоб вибрати запити до спеціального розташування, наприклад api
використовуючи <location path="api">
.
Дивіться тут, щоб налаштувати інструкції:
Тому ServiceStack не зможе обробляти запити в інших місцях, а також шлях до місця розташування <location path="admin">
буде за межами шляху, що обробляється ServiceStack, тож автентифікація вашого elmah.axd
буде оброблятися IIS. Таким чином, IIS буде автентифікувати, як звичайно.