我们有 ac# asp.net web 应用程序,除其他外,它允许用户下载以前上传的文件,如 PDF、Word 文档等。asp.net 应用程序通过 IIS6 服务器提供服务,文件资源位于不同的服务器上服务器。
当用户请求一个文件时(即单击 Web 表单上的按钮),我们将文件流式传输回他们的浏览器,相应地更改 ContentType。
这似乎是避免通过 IIS 虚拟文件夹路径来提供文件资源的好方法——我们担心用户可能会破解 URL。即使用https://mydomain/myresource/clientid/myreport.docx 之类的 URL ,精明的用户可以很好地猜测替代 cvlientid 和文档名称。
将 Word 文档流式传输到浏览器的问题在于,当浏览器将其扔给 Word 时,Word 会将其视为全新的文档,这意味着原始文档的属性和边距信息会丢失。
我们的用户将元数据信息存储在 Word 文档属性中,因此他们无法接受这种解决方案。
通过 IIS 虚拟文件夹提供服务解决了这个问题,但引入了 URL 安全问题。
所以我的问题是...
有谁知道我们如何对 IIS 虚拟文件夹使用 URL 加密/解密(或混淆)?
或者有谁知道做类似工作的任何开源项目。
或者是否有人对如何编写我们自己的虚拟文件夹实现但使用加密的 URL 有任何建议?
提前谢谢了。
附言。我们的网络应用程序通过 https 交付