信息周刊:Web新地基
安全难题
Web2.0 有一个显而易见的特点就是:它并不比第一波网络热潮来
得更安全。
Web2.0公司纷纷采用互动技术,他们会发现在更好地吸引和留住用户的同时,也把更大的风险带入了防火墙之内。使用JavaScript的 Ajax 开发者可以创建在访问者浏览器窗口里自动执行的程序。多种脚本语言都可在浏览器端执行并向服务器发出恶意代码,而JavaScript不过是其中最著名的一种。其他脚本语言还包括微软的Visual Basic以及微软开发的与JavaScript相对应的ECMAScript。另外还包括奥多比系统公司(Adobe)的ActionScript(另一种ECMAScript风格的脚本),它可以在浏览器窗口通用的Flash播放器里运行,而98%~99%的互联网用户都安装了这种播放器。
Ajax的一个组成部分是异步JavaScript,它是谷歌地图(Google Maps)应用的幕后功臣。谷歌地图可追踪用户光标在地图网格上的位置并把信息发回服务器。实际上,JavaScript程序是在告诉服务器,“用户正指向北方。请返回更多他当前位置往北的数据。”
这种互动功能一直是个潜在威胁,因为尽管可以减轻危害,但却不可能完全根除它。对缺乏经验而意识不到自己的程序会出问题的程序员来说,经过培训也只能做到缩减危害。因为Ajax应用程序可以在服务器端和浏览器里运行许多脚本代码,令黑客有可乘之机,攻击与应用程序通信的数据库。
即使经验丰富的程序员也可能中招。一年前,社交网络网站MySpace上存放着一位叫Samy的新用户的个人主页。在他提交的信息里有一个隐藏的JavaScript蠕虫,它可以感染任何访问Samy空间的MySpace用户的浏览器,并把这段代码复制到该访问者的个人主页里。某种程度上,这纯粹是场玩笑:Samy的目标是把“Samy是我的大英雄”这段文字复制到尽可能多的MySpace用户的“英雄”分类里。
感染开始迅速传播。在20小时内,这个JavaScript蠕虫已经感染了上百万MySpace用户。随着感染的增加,这个蠕虫引起的人为流量使MySpace服务器陷于崩溃。MySpace谢绝就此事进行评论,但据Blog媒体Slashdot报道,该公司不得不临时关闭网站以清除感染。
这是为什么Web2.0 开发者必须从一开始就考虑安全问题的例证之一。Web2.0 技术的一个大危险在于,用户从表单或数据字段里提交回复时,开发者可能需要的是某个特定的输入,如名字或邮编,但很少有网站会仔细校验用户的输入。安全软件公司SPI Dynamics公司的研发经理布赖恩·沙利文(Bryan Sullivan)评论说,“在客户端,你没法控制电脑内真正输入的内容。主导权完全在用户手里。”
美国加州大学伯克利分校(University of California, Berkeley)计算机科学系的助教大卫·瓦格纳(David Wagner)警告说,可能有1,001种方式在HTML页面中隐藏JavaScript代码,比如在Wiki、MySpace、Yahoo Mail这类型的网站里。“但即使你拦截了其中1,000种,你还是可能会倒霉,”瓦格纳认为,“坏人更有优势。”2005年春天,Yahoo的网页邮件 (Web Mail)服务器就被一个用户上传的Yamanner蠕虫入侵了。
如果一个懂行的用户在地址栏里输入一个SQL语句,这个语句就可以在服务器上可用的数据库里得以执行。这种花招就叫SQL注入攻击。如果一个 MySpace用户在自己的MySpace服务器上的网页里加入JavaScript蠕虫,蠕虫就可以在访问者的浏览器窗口里执行。MySpace已经采取措施阻止会自我克隆的Samy蠕虫,但恶意程序的作者们下次肯定会尝试其他的方法。
不像以前的病毒,Samy蠕虫与操作系统无关。作为一种与网页相关的技术,Ajax不依赖于平台,而这也催生了一个跨平台蠕虫。无论苹果公司 (Apple)的Mac电脑、Linux工作站还是Windows PC都可以触发它。它默默地在后台窃取用户的信息,不会出现任何警告信息提示用户系统被感染了,而且还会继续感染他人。沙利文警告说:“想象一下,如果银行网站上有Ajax蠕虫,那会是怎样的情景。”
——文/Charles Babcock
轻量级开发
快速变更是Web2.0的一个标志性特点。网站可以非常迅速地添加和去除功能,有时候简直就是一天一个样。而一个固定的尺码肯定不适合所有的人。Web2.0网站必须具有高度的可适应性,以适应用户常变的兴趣,对研发人员来说,轻量级的开发工具能帮上大忙。
两个受欢迎的选择是Ruby和Flash,与Ajax类似。Ajax是个轻量级的、基于浏览器的JavaScript和XML组合,已经在谷歌地图和其他许多互动网站里得到应用。Ruby和Flash这两种网站工具并不像Ajax技术那么新,它们已经有成熟的工具集支持。
Backchannelmedia公司是一家传媒咨询公司,它就用 Ruby on Rails工具开发自己的网站,这是一套使用轻量级编程语言Ruby开发的专用网站平台。该网站为客户提供庞大的电视广告收视率数据库的快速访问。广告商可以根据电视观众打到800免费电话的下单时间,结合当时不同地域投放电视广告的内容,来获知广告效果。
Backchannelmedia的首席信息官(CIO)玛德琳·诺兰德(Madeleine Noland) 表示,公司的25名员工里,有熟悉Java、Visual Studio .Net、Ruby和PHP技术的,一年多前他们决定重新设计客户交互服务,即电视直销(DRTV)研究时,最后选择了Ruby on Rails工具。 技术主管杰森·托伊(Jason Toy)证实这个服务只花了两个月就完成了,而如果选择Java则可能要花上9个月的时间。Ruby on Rails工具的代码量只有Java的十分之一。这个服务每天要添加250万条广告数据到数据库中,并根据用户请求提供上百万次不同的网页查询结果。
此外,耐克网上商店(NikeStore)是用Adobe的Flash技术搭建的又一个交互式网站,Flash是可在浏览器窗口运行 ActionScript脚本的多媒体引擎(该技术由Adobe从Macromedia公司购并),提供最新的购物互动体验。例如,访问者的光标移向标题的“男装”或“童装”位置,就会显现相关产品的下拉菜单。而点击选中的货品,则会弹出一个新窗口,可展示不同颜色的同一产品和其他相关产品。改变就在瞬间发生,所在的页面无需重新加载。
——文/Charles Babcock
用户体验
Web2.0 的一个最大挑战是如何定义和提高用户体验。谷歌用一个简洁、可快速加载的网页,展示了在搜索上可以做到多么与众不同。然而其他网页臃肿、速度缓慢的网站 ——比如MySpace—也仍然大获成功。成功的秘诀关键在于让用户感到惊喜和愉悦,在他们需要的功能外,还提供连他们自己都未意识到会需要的功能。
极少有公司花在提高线上用户体验的时间比微软的MSN网站更多,它从1995年开始提供在线内容业务,至今仍然是互联网上最受欢迎的网站之一。但下载音乐的人们会选择iTunes,而不会有选择微软的冲动,也没有类似iPod的产品制造者来和微软签订合作协议。人们会说去“Google”一下信息,但不会说“MSN”一下信息。另外也是谷歌地图和谷歌地球(Google Earth),而不是微软的虚拟地球(Virtual Earth)在地图定位和寻址上获得更多认可。显然微软网站还不太入引领潮流的年轻一代的法眼。
认识到这些问题,微软正计划一场Web革新。微软公司计划在这个财政年度花费5亿美元在互联网搜索引擎和其他可与谷歌和雅虎竞争的软件研发上。这个投资计划里还包括一个新的数据中心,以支撑将来的家用型和商业软件。此外的产品包括新的Zune音乐播放器和音乐销售网站。微软的在线地图软件—搜索功能广受好评的一个应用—也推出了较大的升级,把地图转换成令人赏心悦目的3D图像。
如果这个产品能受大众欢迎,新网站可帮助微软与谷歌地球一争高下,谷歌地球允许用户全球自由缩放,一下子就从大峡谷飞越到金字塔等标志性建筑,以俯瞰的视角找出离自己最近的星巴克咖啡店。
微软会用什么技术来提高虚拟地球的用户体验呢?我们可以从2006年早些时候的两项购并里一窥端倪。微软购并了Vexcel公司,该公司的 Photogrammetry技术可以通过航拍照片创建出城市和乡村的3D图像。微软还购并了Massive公司,这家软件公司的技术允许赞助商把广告插入视频游戏。像谷歌和雅虎的地图软件一样,微软已经把虚拟地图的应用编程接口授权给百思买公司(Best Buy)、Expedia公司等。这样可以允许合作伙伴为这些应用注入自己的创新,毫无疑问这是十足的Web2.0特色。
谷歌去年年底发布了新版本的谷歌地球,也加入了一些新花样。包括来自发现网络公司(Discovery Networks)和国家地理杂志(《National Geographic》)对一些世界著名景点的描述、国家公园服务的扎营地点和旅游线路的信息,还提供把自己飞越谷歌地球上空时的影像录制成高清电视 (HDTV)的功能。这些功能呈现的前所未见景象,都可能会令用户眼前一亮。在这场对峙中,快速、细节和趣味性最重要。
——文/Aaron Ricadela
质疑社区
Web2.0里最引人瞩目的一方面就是社区概念。从Web的初始阶段开始,大家都认可的一个观念就是,成功的网站需要锁定一批稳定的社区用户,他们有共同的兴趣、乐于讨论和争辩、积极分享自己的音乐、照片、代码和观点。就在2006年10月底,谷歌购并了硅谷初创公司JotSpot公司,该公司用Wiki软件让用户分享电子表单、日历和相册。
但在线社区也是一个令人困惑的概念。他们很少像这个词的表面含义那样意味着“我们都在这里”。奥莱利媒体公司(O´Reilly Media)CEO蒂姆·奥莱利(Tim O´Reilly)在Web2.0 大会上直言不讳地说:“我讨厌‘社区’这个词,人们常用这个词来逃避认真思考什么是Web最核心的概念。”奥莱利媒体公司和《InformationWeek》母公司CMP集团共同召开了Web2.0 大会。
在奥莱利的观点里,一些最成功的社区型网站实际上与人们印象中的和谐型互联网的分享想法可能完全背道而驰。
比如在亚马逊鼓励下,其用户贡献了百万条书评、乐评和产品评论等。“他们不断压榨用户。”奥莱利指出。亚马逊还是一个社区网站吗?
在线社区通常为用户提供交谈、分享和彼此联系的功能——但是最后对网站的业务模式却没有什么帮助。奥莱利认为这就是问题的关键。
以Flickr网站为例,这个雅虎旗下的照片共享网站非常受欢迎。分享照片是很不错,但Flickr网站充分利用了照片的单向链接,所以我可以看到你的照片,而你却不知道我在浏览。这里面几乎没有交流可言。另一个非常受欢迎的网站是由用户驱动的Craigslist,但只是以本人的兴趣为中心,你回应我的广告,而我受惠。
MySpace把社区的概念转化成了真金白银,但绝大多数模仿它的网站都失败了。甚至维基百科(Wikipedia)乌托邦式的理想是收集、编辑与传播全球的知识,现在其实也是被一群核心作者主导着。
“真正的问题在于,用户可以为你的事业做出什么贡献?”奥莱利说道,“社区只不过是Web2.0大局里的一小部分。”
——文/Aaron Ricadela
内容导航
- 第1页:信息周刊:Web新地基
- 第2页:信息周刊:Web新地基(2)


















文章评论
共有 位CH网友发表了评论 查看完整内容