Ric*_*tte 5 .net asp.net security authentication error-handling
我在IIS 6中使用自定义错误页面:
<customErrors redirectMode="ResponseRedirect" mode="On" defaultRedirect="Error2.aspx"/>
Run Code Online (Sandbox Code Playgroud)
我想禁用自定义错误页面的身份验证,因为引发的错误与身份验证模块有关,我不想进入无限循环,我想向用户显示一个干净的错误页面.我一直在尝试以下配置来做到这一点.
<location path="Error2.aspx">
<system.web>
<authentication mode="None"/>
<authorization>
<allow users="?"/>
<allow users="*"/>
</authorization>
</system.web>
</location>
Run Code Online (Sandbox Code Playgroud)
我收到设置身份验证模式的行的System.Configuration.ConfigurationErrorsException.
在应用程序级别之外使用注册为allowDefinition ='MachineToApplication'的部分是错误的.此错误可能是由于未在IIS中将虚拟目录配置为应用程序引起的.
我已经验证应用程序的文件夹下的子目录中没有其他web.config文件.Applications文件夹在IIS中配置为应用程序,错误页面位于应用程序的根目录下.为IIS中的错误页面设置的文件权限包括匿名和Windows身份验证(我也尝试过匿名).
我将自定义错误重定向模式更改为 rewriteResponse。通过这样做,不会为错误页面发出单独的请求,不会重新执行引发错误的身份验证模块等。
我可以想象这在某些场景中可能不够(也许是 MVC 框架?),但对于我的用例来说,这已经足够了。
现在,我将用我想出的解决方法来回答我自己的问题,除非其他人可以演示一种按照最初所述实际禁用身份验证的方法。
| 归档时间: |
|
| 查看次数: |
5742 次 |
| 最近记录: |