当前位置 : 主页 > 网络编程 > ASP >

asp.net安全图像对其他用户的静态请求?

来源:互联网 收集:自由互联 发布时间:2021-06-24
我在一个为每个特定用户生成动态图像的网站上工作.有时这些图像包含非常敏感数据的描述.最近,我们开始以形式查看属于不同用户的图像请求 http://myapp/images/someuid/image1.jpg 显然,有人
我在一个为每个特定用户生成动态图像的网站上工作.有时这些图像包含非常敏感数据的描述.最近,我们开始以形式查看属于不同用户的图像请求

http://myapp/images/someuid/image1.jpg

显然,有人发现如果他们创建了正确的URL,他们可以访问其他用户的图像.我们将图像存储到文件系统以帮助减少带宽.

>我们怎样才能保护这个 – 某种http处理程序?
>有没有一种方法可以提供图像以利用o -f缓存而无需将其写入文件系统并让IIS执行脏工作?

使用.ashx: –

TimeSpan maxAge = new TimeSpan(0, 15, 0); //!5 minute lifetiem.

context.Response.ContentType = "image/gif";
context.Response.Cache.SetCacheability(HttpCacheability.Private);
context.Response.Cache.SetExpires(DateTime.UtcNow.Add(maxAge));
context.Response.Cache.SetMaxAge(maxAge);
context.Response.Cache.SetLastModified(lastModified); // last modified date time of file
context.Response.WriteFile(filenameofGif);

您可以包含所需的代码检查,以确保正确的用户访问映像.

网友评论