网站的一个文件夹下的文件,必须验证用户后才能下载,否则不给下载,直接地址访问文件地址也不允许下载!谢谢

sj6071 2011-04-26 09:51:26
一般情况下,知道文件地址后直接在IE打地址后是直接下载的,现在不允许这样做,必须要经过我的验证,符合条件才能下载,不然不允许


Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment;FileName="+YourFileName);
Response.BinaryWrite((byte[])YourFileData.Rows[0]["AttachmentContent"]);
Response.End();


这个代码可以隐藏地址,但对于知道实际地址的人还是可以直接下载,怎么才能从程序和IIS设置方面进行处理,不允许地址直接访问下载?
...全文
280 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
sj6071 2011-04-27
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 rock870210 的回复:]
知道地址的貌似不好防!
为何不把地址全部放到数据库呢,只有虚拟路径,然后有权限下载的根据文件ID去读取文件流传递给用户,也不需要暴露实际地址!
[/Quote]

文件必须放在文件夹啊,所以肯定存在一个地址啊,这个地址存在数据库没有关系啊,也就是那个文件夹不能直接访问,通过验证才能访问(权限够),怎么设置IIS文件夹访问的验证呢
Rock870210 2011-04-26
  • 打赏
  • 举报
回复
知道地址的貌似不好防!
为何不把地址全部放到数据库呢,只有虚拟路径,然后有权限下载的根据文件ID去读取文件流传递给用户,也不需要暴露实际地址!
laolaolai 2011-04-26
  • 打赏
  • 举报
回复
采用表单验证方式
ZhuZhuYuXiang 2011-04-26
  • 打赏
  • 举报
回复
判定权限,如果用户知道资源的地址,是无法防止的,只有让用户不知道地址这样他们才不能下载,你可以把地址加密
jianshao810 2011-04-26
  • 打赏
  • 举报
回复
下载你 先转到一个页面 相当于中转站的效果 在那个页面判断是否有权限 可以下载
没权限就返回 有权限就从这个页面直接链接到相关下载的文件那去 就 ok了
我觉得这个比较方便。。
另外我觉得还可以自己写一个处理 ,做一个 handel。专门处理这些文件.
sj6071 2011-04-26
  • 打赏
  • 举报
回复
就是一般的WORD之类的文件,不允许直接地址访问,假设用户知道真实地址的情况下如何禁止直接地址访问下载
cjh200102 2011-04-26
  • 打赏
  • 举报
回复
下载先判断就好了
liukaizxc 2011-04-26
  • 打赏
  • 举报
回复
下载你 先转到一个页面 相当于中转站的效果 在那个页面判断是否有权限 可以下载
没权限就返回 有权限就从这个页面直接链接到相关下载的文件那去 就 ok了
cfvgodot 2011-04-26
  • 打赏
  • 举报
回复
防盗链。。。。GOOGLE搜索!
harvesthouhao 2011-04-26
  • 打赏
  • 举报
回复
拦截一下请求然后判断是否有权限,如果没有,直接返回!
ycproc 2011-04-26
  • 打赏
  • 举报
回复
你说的什么是什么文件

代码文件 ?编译后已经无法下载了

资源文件 ?设置权限
wtj2832 2011-04-26
  • 打赏
  • 举报
回复
参考

放到App_Data文件夹下,看看还能不能被下载了,呵呵

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧