开发者必备Web应用检查清单.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
开发者必备Web应用检查清单

Web开发者必备:Web应用检查清单 开发 记录UI错误日志 JavaScript?允许捕获异常。这些异常需要通过Ajax请求提交到日志服务,否则很难截获Web环境中的错误。 可交换的数据层 数据层可分离,也可以与另一个遵从规范的数据层互换。 部署过程自动化 部署过程应自动化。生产环境所用的项目文件应由部署服务器生成,并在无人工干预的情况下自动完成。 使用版本控制系统 版本控制系统保存代码更改的历史,防止现有代码的丢失。同时,它还有助于协同开发。GitHub是这项服务最流行的提供商。除此以外,还有BitBucket。微软也有提供了额外协作特性的Team?Foundation。 代码审阅 人总会有写错代码的时候,而代码审阅系统能保证开发者的高质量产出。同时,该系统还能让不止一位开发者熟悉代码。在某段代码的作者不在的时候,其他开发者可以顺利地做出修改。GitHub和Team?Foundation都提供了相应的代码审阅功能。 权限与角色系统 每个应用都需要设计实现权限和角色系统。设立系统管理员,用户管理员等角色需要一个灵活的全局角色系统。 记录所有未处理的错误 所有错误应当记录下来,并用于未来的全面检查。也就是所有错误都应当提交给全局错误记录机制。 测试过程自动化 每次部署前,测试服务器应当运行所有测试。代码测试通过时部署应用,没能通过时报告给系统管理员。 业务层可以在不同环境上使用 业务层中的代码必须通用。即使代码本身面向Web环境,它也应当能在不要求改变代码的情况下使用于桌面环境,服务器环境,移动设备环境的不同用户界面,不同数据层上。 制定编码规范 一份规定明确的编码规范在未来项目开发的过程中起到重要作用。方法前需要写上注释吗?命名规范是什么?示例代码应放置何处? 开发者机器配置的指导方案 开发时最耗时的问题是不同的开发者之间的开发环境不同。需要让人们知道的是,他们应当安装什么软件,使用的是什么版本,同时需要安装什么组件,以及怎样安装这些组件。 性能 使用CDN Content?Delivery?Networks(内容分发网络)通过离访客最近的服务器,为你的服务提供图片,JS和CSS等静态文件来提高访问速度,同时削减了带宽的用量。CloudFlare是CDN服务的绝佳示例。 压缩所有的JS和CSS文件 JS和CSS文件应当使用YUI?compressor这样的压缩器来减少文件体积,并且使用gzip传输。把JS代码的引用放到最后也是不错的做法。 记录加载较慢的页面 Web应用程序应当响应迅速。分析页面加载的系统有责任识别加载较慢的页面。运行迅速的页面可能会遇到一些用户读取特定数据时加载时间过长的问题。 非关键数据使用NoSQL存储 NoSQL数据库(文档型数据库)在接收数据和存储数据时的速度很快,并且可以大规模扩展。由于这类数据库不能确保关系的完整性,所以应当为关键数据使用关系型数据库。在诸如用户通知和聊天记录等场合,NoSQL可以节约成本,安全地使用。 选择附近的数据中心 数据中心的位址应当靠近绝大多数用户。处在与用户同一个国家的数据中心对页面访问速度大有影响。有必要的情况下,还可以建立多个数据中心。 允许数据多来源 存储数据的成倍增加,带来的是应用程序性能降低。程序架构应做好处理多来源的大规模数据的准备。 安全 隔离数据库中的关键信息 数据库用户在访问关键信息时应受到限制,比如取得哪怕是已经Hash过了的密码和所有用户的Email地址等信息。应当使用存储过程和视图作验证,或者作自定义数据。 防止远程执行代码 应用程序包含了对安全性较差代码的依赖时,会使攻击者在远程执行相应的攻击代码。 防止洪水攻击和垃圾邮件攻击 认证用户发起的洪水攻击和垃圾邮件攻击都是可能的。要注意随时跟踪他们最后发起的不明操作,避免制造大量请求。 对密码散列处理时使用唯一salt值 所有密码都应当使用salt值散列处理,并且每个用户的salt值都是唯一的。人们容易在不同的服务上使用相同的密码,应用程序有责任保护用户的密码。 全局的跨站脚本攻击(XSS)保护 XSS攻击的全称是Cross?Site?Scripting跨站脚本攻击,是让用户执行远程恶意脚本的Web漏洞。 防止SQL注入漏洞 SQL注入是常见的漏洞。攻击者通过构造字符串,可以执行有害的SQL命令。使用ORM是一种防范的好方法。 防止跨站请求伪造(CSRF) Cross-Site?Request?Forgery跨站请求伪造是一种常见的Web漏洞,攻击者在他们的网站上放置一个iframe框架,该框架从程序中请求页面,而用户并不处于应用程序中。对GET请求不会强制性的作出修改,防止从应用程序域名之外发出的POST请求可以受到保护,而更好的做法,则是在每个表单里提供接收请求后验证的token。 修改关键

文档评论(0)

jjkk585 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档