我的 ASP.NET Web 配置文件有问题。我想拒绝某些用户或角色访问特定的 PDF 文件。我正在使用 ASP.NET 成员(member)和角色管理系统。所以我将这行代码添加到 Web.config 文件中:
<location path="myfile.pdf">
<system.web>
<authorization>
<allow roles="admin"/>
<deny users="*"/>
</authorization>
</system.web>
</location>
并将其放入文件所在的目录中。现在,当我在本地系统中运行该项目时,我无法使用“admin”角色登录来访问 PDF 文件。但是当我在网络服务器上发布项目时,我无法浏览该文件夹,但当我浏览 PDF 文件的完整路径时,我可以查看 PDF 文件。所以:
最佳答案
IIS 可能在 ASP.Net 获取 PDF 文件之前就已经提供该文件了。假设您使用的是 .Net 4.0,请将其添加到您的 Web.config 文件中以强制所有请求流向 ASP.Net:
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
<system.webServer>
关于asp.net - 如何使用 ASP.NET Web 配置拒绝访问文件,而不仅仅是本地访问?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5178033/