gpt4 book ai didi

asp.net - 保护 ELMAH 同时还可以通过 RSS 阅读器访问它

转载 作者:行者123 更新时间:2023-12-03 22:30:54 25 4
gpt4 key购买 nike

我们在应用程序中使用 ELMAH 错误异常日志记录。我想保护 ELMAH 免受普通用户的侵害,同时仍然可供应用程序的管理员/开发人员使用。

当您在 web.config 中使用表单例份验证设置安全性时,您将失去访问 RSS 提要的能力。我希望能够保护 ELMAH,但仍然通过身份验证传递给 axd,以便能够从 RSS 阅读器访问 RSS 提要(即/elmah.axd/rss)。

认为 http 身份验证是正确的,因为那时我可能可以使用以下 url 语法 http://username:password@somedomain.com/elmah.axd/rss 访问 rss 提要我假设您需要在 web.config 中的特定路径上设置身份验证模式 =“windows”。但出现的一个问题是如何在虚拟文件上设置凭据?

看着谷歌带回了这个 article on CodeProject关于如何使用 cookie 设置身份验证传递。这是解决我的问题的好方法吗?

是否有另一种更好的方法可以在保持安全的同时访问 RSS 提要?

谢谢。

最佳答案

Supporting HTTP Authentication and Forms Authentication in a Single ASP.NET Web Site

基本上,您将一个名为 MADAM 的 dll 添加到您的项目中,调整您的 web.config 并配置您想要作为 Basic 而不是 Forms 进行身份验证的文件:

<configuration>
<configSections>
<sectionGroup name="madam">
<section name="userSecurityAuthority" type="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="formsAuthenticationDisposition" type="Madam.FormsAuthenticationDispositionSectionHandler, Madam" />
</sectionGroup>
</configSections>

...

<madam>
<userSecurityAuthority ... />

<formsAuthenticationDisposition>
<discriminators all="[true|false]">
...
</discriminators>
</formsAuthenticationDisposition>
</madam>

...

<system.web>
<httpModules>
<add name="FormsAuthenticationDisposition" type="Madam.FormsAuthenticationDispositionModule, Madam" />
<add name="AuthenticationModule" type="MADAM Authentication Module Type" />
</system.web>
</configuration>

这很容易设置并解决了我的问题,即能够对 elmah.axd 进行身份验证,并且仍然能够使用基本身份验证凭据订阅 RSS 提要。

旁注 MADAM 是由写 ELMAH 的同一个人写的,巧合吗?

关于asp.net - 保护 ELMAH 同时还可以通过 RSS 阅读器访问它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1046234/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com