如何在asp.net中为文件夹创建http授权?

时间:2012-10-24 13:28:59

标签: asp.net authorization

在我的项目中,我有一个asp.net(webform)网站,比如文件夹/site/... 我创建了一项附加服务:/service/file.ashx 我需要通过http授权来保护这个文件。

我在IIS7中为文件夹«service»选择了身份验证部分,并关闭了anonymouse并将其打开。

所以,现在,如果我只是/service/那么它就可以了,并且会出现标准的http auth对话框,但它不适用于/service/file.ashx - 它会将我重定向到网站的身份验证表单(如果我已经被授权,然后它只是处理file.ashx而没有要求授权)

我需要做些什么才能完成这项工作?

2 个答案:

答案 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然后它解决了:)