• ASP.NET上传文件时真正做到限定上传文件的种类的实现方案
  • 卡卡 发表于 2015/12/3 11:54:00 | 分类标签: 上传文件 文件类型限制 文件上传
  • 我们再做上传文件的功能时候出于安全的考虑一般会对上传文件的类型进行限制,但是如果只是简单的通过判断后缀类型来做限制的话很难真正起到限制的作用,因为用户有可能修改后缀比如把.exe后缀改成.jpg的后缀而实现绕过系统限制的功能,所以这个时候最好根据文件的postedFile.ContentType属性来获取文件的真正类型,通过判断该类型来实现相关的限制。整理一个文件类型表如下:

    postedFile.ContentType得到的是类似这样的属性,如image/gif,text/html==

    System.IO.Path.GetExtension得到是文件扩展名,如123.txt 中的txt,123.gif 中的gif

    后坠名如 jpg 文件是可以改的
    而postedFile.ContentType
     是 是很难改变的就算把 xxxx.jpg 改名成 xxxx.gif ContentType仍然是不变的

    ContentType mime 类型在注册表 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\MIME\Database\Content Type
    这东西是根据文件的二进制特征码生成的如
    jpg文件头 FF D8 FF E0 00 10 4A 46 49 46

  • 请您注意

    ·自觉遵守:爱国、守法、自律、真实、文明的原则

    ·尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规

    ·严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的作品

    ·承担一切因您的行为而直接或间接导致的民事或刑事法律责任

    ·您在编程中国社区新闻评论发表的作品,本网站有权在网站内保留、转载、引用或者删除

    ·参与本评论即表明您已经阅读并接受上述条款

  • 感谢本文作者
  • 作者头像
  • 昵称:卡卡
  • 加入时间:2013/5/17 0:00:00
  • TA的签名
  • 这家伙很懒,虾米都没写
  • +进入TA的空间
  • 以下内容也很赞哦
分享按钮