如何设置站点静态文件的权限?

问题描述

我有一个会员专用网页。

我在 Windows Server 2016 上使用 IIS 10 发布。

会员通过网站上传他们的私人文件到网站。

例如:

http://mywebpage.com/upload/xuser/a.jpg
http://mywebpage.com/upload/xuser/b.pdf
http://mywebpage.com/upload/yuser/c.pdf
http://mywebpage.com/upload/yuser/abc/d.pdf

我在带有经典 asp 的 html 标签中使用这些文件。例如;

<a href='http://mywebpage.com/upload/yuser/c.pdf'>yuser transcript</a>

<h1>Profile</h1><img src='http://mywebpage.com/upload/xuser/a.jpg'/>

但我希望这些文件只能通过“http://mywebpage.com”下的 *.asp 文件访问。

用户可以通过直接在地址栏中输入链接来访问它的可能性让我非常恼火。

为此,我使用了以下方法。但我还是没有安全感。

  1. 禁止 /upload/ 目录中的所有文件包含 robots.txt。

  2. 使用 web.config 阻止浏览到 /upload/。

  3. 使用带有用户 ID 而不是 yuser 的复杂目录名和复杂文件名。 /upload/ASDASD12djd829D2/DUJA811220.jpg

但是这些仍然不是我想要的解决方案。是否可以说除了http://mywebpage.com/*.asp页之外没有人可以读取这些静态文件?我应该走哪条路?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)