拒绝直接访问文件夹(仅允许通过应用程序)
我需要阻止某人直接访问 pdf,而只允许他们通过应用程序本身拉取。这怎么能做到呢?
I need to prevent someone from directly accessing a pdf, instead only allowing them to be pulled through the app itself. How can this be done?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
将此添加到您的顶级 Web.config 以阻止名为 Reports 的文件夹(您的文件夹名称位于此处)。
这将允许您的应用程序访问 Reports/file.pdf,但对 yoursite.com/Reports/file.pdf 的外部请求将被阻止。
Add this to your top-level Web.config to block a folder called Reports (your folder name goes there).
This will allow your application to access Reports/file.pdf but an outside request to yoursite.com/Reports/file.pdf will be blocked.
将文件放入
app_data
文件夹中,然后使用HttpHandler
来提供文件。如果你想隐藏它并使其看起来更干净,你可以使用 url 重写。Put the files in the
app_data
folder and then use aHttpHandler
to serve the files. You can use url rewriting if you want to hide it and make it look cleaner.设置文件夹的权限以拒绝任何人的访问。请您的系统管理员创建一个帐户并授予对该文件夹的读取权限。然后在 web.config 文件中设置模拟以使用新帐户。
阅读此
http://msdn.microsoft.com/en-我们/库/aa292118(VS.71).aspx
set the permissions on the folder to deny access to whoever. Ask your sys admin guy to create an account and give read access to the folder. Then set impersonation up in the web.config file to use the new account.
Read this
http://msdn.microsoft.com/en-us/library/aa292118(VS.71).aspx