2008-11-07 10 views
3

我正在使用.net2.0和IIS6。.NET Forms身份验证:如何将访问资源限制为仅允许经过身份验证的用户的PDF文件

当使用.net表单身份验证:如何限制只有经过身份验证的用户的PDF文件资源的访问;所以为了访问文件说mysite.com/mydoc.pdf他们将不得不首先认证(通过登录页面)

似乎默认情况下只有.aspx页面受保护。例如。要包含.html,我必须按照here所述的步骤操作。

编辑

谢谢你们非常快速作出回应,该answer by Keltex完美的工作对我来说,我需要一个演示系统速战速决。

其他答案也非常有趣,它们在处理生产系统时非常有用。

你更欢迎届时发布其他答案

回答

3

您可以将文件存储在目录中通过网络直接无法访问,然后用户必须有一个ID指向他们所需要的文件访问一个ASPX页面去下载。此时,您将文件从其中流出。

+0

主办那里有过添加通配符无法控制的环境很好的回答。 – Kev 2008-11-07 16:00:25

0

您是否关闭了匿名访问?如果你只是有集成的Windows身份验证,就应该阻止所有访问,如果你设置你的web配置这些设置

2

创建的HttpHandler其流文件输出到浏览器之前检查验证的用户。然后,您可以将页面上的链接设置为使用文档ID而不是文件直接指向该手柄。

完成此操作后,文档可以存储在您选择的任何位置,即文件系统或数据库,或者甚至可以编码为xml文件(如果需要)。这对于当您想要移动存储位置但不希望更新Web应用程序中的所有链接时非常有用。

相关链接: http://msdn.microsoft.com/en-us/library/system.web.ihttphandler

相关问题