我们有ac#asp.net web应用程序,其中包括允许用户下载以前上传的文件,如PDF,Word文档等。该asp.net应用程序通过IIS6服务器并且文件资源位于不同的服务器上。IIS虚拟文件夹URL加密
当用户请求文件(即单击Web表单上的按钮)时,我们将文件传输回其浏览器,并适当更改ContentType。
这似乎是一种避免让IIS虚拟文件夹路由来提供文件资源的好方法 - 由于用户有可能破解URL,我们担心这些问题。即具有诸如https://mydomain/myresource/clientid/myreport.docx的URL,精明的用户可以在猜测替代cvlientid和文档名称时具有良好的刺激。
将Word文档传输到浏览器的麻烦在于,当浏览器在Word中引发Word时,Word会将其视为一个全新的文档,这意味着原始文档的属性&保证金信息丢失。
我们的用户将元数据信息存储在Word文档属性中,因此这种解决方案不被他们接受。
通过IIS虚拟文件夹提供服务解决了这个问题,但引入了URL安全问题。
所以我的问题是...
有谁知道我们如何使用URL加密/解密(或混淆)与IIS虚拟文件夹?
还是有人知道任何开展类似工作的开源项目。
还是没有人有任何关于如何去编写我们自己的虚拟文件夹的实现,但加密的URL?
非常感谢提前。
ps。我们的网络应用程序通过https发送
您可否详细说明“Word将它视为全新的文档,这意味着原始文档的属性和保证金信息会丢失”?我们通过身份验证的httphandler进行流式处理,并且没有任何问题,弹出一个框来保存文件,这是您正在做什么? – 2010-02-25 12:35:28
是的,弹出框打开或保存文件。如果客户端保存它,服务器版本(标题,主题,标签等)上存在的任何属性都不存在于客户端副本上。 – 2010-02-25 12:53:03
嗯,只是做了与虚拟文件夹的另一个测试,当我说“通过IIS虚拟文件夹服务解决了这个问题”,看起来像我犯了一个错误。 也许我的问题是:“如何通过客户端浏览器传递Word保存的docx文件的元数据属性(如标题,主题) – 2010-02-25 13:00:42