【发布时间】:2011-08-12 00:43:59
【问题描述】:
我有一个应用程序需要支持上传 PDF、图片等内容文件。
确保我只获得我指定的文件类型而不获得其他文件(例如可执行文件)的最可靠方法是什么?我应该只看文件扩展名或内容类型,还是有更好的方法?
【问题讨论】:
-
最适合什么目的?扩展可以伪造,内容类型也可以伪造......
-
验证取决于您和您的应用程序的性质。可能是扩展名或文件大小,或者如果有必要,您可以在接受/存储在服务器上之前验证内容。
-
它是为了用户和提供者之间的交流目的,可以包含pdf文档屏幕截图图像和类似的。我如何确定用户被禁止上传可执行文件和其他有问题的文件(其中许多我不知道)
-
验证应该基于白名单而不是黑名单。我知道这不是您问题的完整答案,但在这种情况下,我认为我只能说。
-
全部:请考虑将编辑作为关闭的替代方法。是的,这个问题写得不好,但这里显然是 一个问题。可以回答并且已经回答了。
标签: .net security file-upload