创建Web应用程序的目的是执行可以在线完成的任何有用功能。近些年出现的一些Web应用程序的主要功能有:
购物(Amazon);
社交网络(Facebook);
银行服务(Citibank);
Web搜索(Google);
拍卖(eBay);
博彩与投机(Betfair);
博客(Blogger);
Web邮件(Gmail);
交互信息(Wikipedia)。
如今,使用计算机浏览器访问的应用程序的功能越来越多地与使用智能手机或平板电脑访问的移动应用程序的功能重叠。大多数移动应用程序都通过浏览器或定制客户端与服务器进行通信,这些浏览器或客户端大多使用基于HTTP的API。应用程序功能和数据通常在应用程序用于不同用户平台的各种接口之间共享。
除公共因特网外,组织内部已广泛采用Web应用程序来支持关键业务功能。许多这类应用程序可以访问各种高度敏感的数据和功能。
用户可以使用HR应用程序访问工资信息、提供并接收绩效反馈,以及管理人员招聘和纪律处分程序。
连接关键体系架构(如Web和邮件服务器)的管理接口、用户工作站及虚拟机管理。
用于共享文档、管理工作流程和项目、跟踪问题的协作软件。这些功能通常涉及重要的安全和监管问题,而且组织结构大多完全依赖于它们的Web应用程序内置的控件来实现这些功能。
企业资源规划(ERP)软件等业务应用程序,这类应用程序以前使用专用厚客户端应用程序访问,现在则可以通过Web浏览器进行访问。
电子邮件之类的软件服务,这类服务最初需要独立的电子邮件客户端,现在可以通过Web接口(如Outlook Web Access)访问。
传统的桌面办公应用程序(如文字处理程序和电子表格)已通过Google Apps和Microsoft Office Live等服务转换为Web应用程序。
为降低成本,组织逐渐将各种任务外包给外部服务提供商来完成,因此,在上述所有示例中,我们所认为的"内部"应用程序正日益由外部机构托管。在这些所谓的"云"解决方案中,业务关键功能和数据向数目更庞大的潜在攻击者开放,而组织却越来越多地依赖于不受其控制的安全防御。
大多数计算机用户所需要的客户端软件仅仅是一个Web应用程序,这样的时代即将来临。到那时,用户使用一组共享的协议和技术即可执行各种功能,但随之也会出现各种常见的安全漏洞