在我的项目中,我有一个asp.net(webform)网站,比如文件夹/site/...
我创建了一项附加服务:/service/file.ashx
我需要通过http授权来保护这个文件。
我在IIS7中为文件夹«service»选择了身份验证部分,并关闭了anonymouse并将其打开。
所以,现在,如果我只是/service/
那么它就可以了,并且会出现标准的http auth对话框,但它不适用于/service/file.ashx
- 它会将我重定向到网站的身份验证表单(如果我已经被授权,然后它只是处理file.ashx而没有要求授权)
我需要做些什么才能完成这项工作?
答案 0 :(得分:0)
您可以在location section with path property
上添加system.web section
并定义deny and allow sections
<configuration>
<location path="....">
<system.web>
<authorization>
<allow users="?"/>
</authorization>
</system.web>
</location>
</configuration>
链接:http://msdn.microsoft.com/en-us/library/b6x6shw7(v=vs.71).aspx
答案 1 :(得分:0)
我发现了如何解决我的问题: 我无法关闭表单auth,因为它是从root web.config继承的,所以我将web.config复制到文件夹/ site /只有auth部分,并从root web.config中删除。它允许我调整/ Dod /文件夹的web.config然后它解决了:)