c# - 禁止直接浏览文件
问题描述
在 asp.net 网络表单站点中,我想禁止用户直接浏览存储在目录中的文件。例如,我将 PDF 存储在一个目录中,如果用户知道路径,他们可以简单地在浏览器地址栏中键入它并拉出 PDF。
寻找有关如何停止这种情况的想法,除非他们使用与目录名称匹配的特定 ID 登录。
任何想法表示赞赏。
解决方案
除非他们以特定 ID 登录,否则如何禁用目录浏览
我假设这是 ASP.NET Web 窗体。
如果您使用 ASP.NET Membership Provider 或 Form Authentication,您可以在 web.config 中为所有用户和所有文件配置授权。
但是,如果用户和文件不断变化,上述方法将不起作用。
这变得很复杂。我将用户及其授权文件存储在数据库等持久存储中。然后将实际文件存储在文件App_Data
夹(或私有 blob 存储)中。IIS 不会为存储在App_Data
文件夹中的文件提供服务。然后每个文件请求都通过通用处理程序,例如FileHandler.ashx?filename=sample.pdf
.
推荐阅读
- c# - 使用 Ajax 传递多个模型返回 null?
- shopware - shopwaredata.shipping_method_price_new_price_update 已经存在
- asp.net - Quartz.NET 手动调用重复作业
- flutter - 颤振:RangeError(最大值):必须为正且<= 2 ^ 32:不在包含范围1..4294967296:0
- excel - Excel Countifs 函数,其中条件之一是名称列表
- google-bigquery - 谷歌表格---->BigQuery 迁移
- java - 给定数组中不同数组的数量
- java - 查看目前加载的所有 Spring 配置文件
- visual-studio - 如何通过单击开始在解决方案中构建所有项目?
- c++ - 如何找到列表中列的平均值?