我想保护静态文件(图像、.txt文件)不被未经身份验证的用户访问。如何实现对网站的用户认证,使特定文件夹中的静态文件也得到安全保护?我在一个login.asp文件中使用了简单的身份验证,为经过身份验证的用户启动了一个会话,并检查了受保护的.asp文件的会话值。但是我不知道如何在经典ASP网站上保护静态内容。
该网站使用集成管道模式托管在IIS 7上。
发布于 2014-09-25 23:14:56
你已经问过了,我也回答了,我也会给你同样的答案。
您将需要使用BASIC AUTHENTICATION来限制对IIS (Classic ASP)中静态文件的访问。否则,您需要将静态内容保存为另一种格式,并对其进行加密,使其仅供经过您的程序验证的人员查看。
请不要再问这个问题,答案不会不同。
发布于 2014-09-28 04:18:51
如果您不喜欢使用基本身份验证,一种可能是将静态文件替换为ASP文件,该文件在授权后将输出正确的文件。如有必要,您可以将响应的ContentType设置为适当的类型。链接http://support2.microsoft.com/kb/173308向您展示了如何对存储在数据库中的图像执行此操作,当然,您可以使用任何您想要的作为文件源。对于.TXT文件,您甚至可以直接获取该文件,并只需在开头添加一小段ASP代码以进行检查。
所有这些都需要额外的工作。在没有额外工作的情况下,无法简单地使用会话状态为静态文件激活某种类型的保护。
发布于 2021-04-15 00:28:38
老问题-大多数安装了Classic ASP的MS服务器都有几个默认文件夹,只有通过Asp才能访问。它们是/bin /app_code /app_data,可能还有其他的。这取决于你的托管公司。默认情况下,Windows10IIS(他们精简的开发和测试套件)会锁定这些。使用ASP代码检索和显示文本和html非常简单,但我不确定如何做图像。如果您的流量非常低,一种方法是将图像文件复制到一个未锁定的文件夹中,并为其随机命名,然后在IMG标签中正常访问它,然后在使用后删除它。(我来这里是为了寻找更好的方法)。
更新:通过ASP加载图像的答案在这里-- displaying images from sql database with classic asp ...见底部答案"HeavenCore“,而不是Response.BinaryWrite rs("ImageBlob"),将图像的二进制文件放入您的变量,例如: BinaryImageData和do Response.BinaryWrite BinaryImageData
https://stackoverflow.com/questions/26037343
复制相似问题