2006年9月19日,微软公司一改往日张扬的风格,平静地发布了微软开放规范许诺书(OPS,Open Specification Promise),意味着不同层次的开发者,今后都可以免费使用微软公司数年来所独立或参与开发的许多网络服务协议了。作为其开放用户身份管理(identity management)框架结构的一个重要步骤,这一天,微软公司在圣.克拉拉城(SANTA CLARA)宣布公司将最大限度的向所有的合作开发商让利,不过这一次他让出的不是价格等可以用金钱衡量的物质财产,而是知识产权或专利权这一类的无形资产。在每年一度的IDG主持召开的Digital ID World年会上,微软总共列出了长达35 个Web服务协议名单(详见本文第6部分)作为让利的对象,自微软宣布之日起,名单中的任何协议,不同层次的开发商无需与微软达成任何法律承诺就可以免费使用了。至于微软所出让的知识产权价值如何估量,目前还没有任何相关的报道。协议包括了公司创始以来的作为基础性协议的WS协议包中的用户身份元系统(Identity Metasystem)框架结构,以及微软的信息卡(Infocard)技术和共事卡空间(CardSpace)技术。
微软开放35个协议
微软的用户身份管理架构师Kim Cameron,在他的的博客上也发布了上述消息,博客上还同时包括了第三方对手如Red Hat等对微软的让利行为进行的认可性评价。在此之前,Cameron和同事Mike Jones 在微软从事OPS文档的执行与等级确定工作。消息宣布的同一天,微软主管服务与开发工具事物的资深副总裁Bob Muglia与负责微软专利业务的律师在OPS文档上签了字。Cameron在他的博客上还说,开放这些协议的根本目标是确保不同层次的广大的开发人员在使用协议文本的时候,不必担心是否存在侵犯知识产权的问题,从而以一种简单明了的方法完成了技术资产的共享。
让一切网络系统的开发者成为网络技术资产的共享者,这是微软对IT技术发展做出的牺牲和贡献,但是从长远来讲,微软又是不折不扣的受益者,因为开放后的众多网络服务协议必然使得众多原本各自为战的开发队伍,走上一条微软为他们实现探索和开辟出来的道路上来,从而为微软研发的其它网络基础产品和构件找到了更好的销路。
OPS本质属性
OPS是以"承诺而无需声称权力"为核心的合法协议文档系统的总称。系统中的协议是"自执行的",即开发人员无需签订任何的法律文书就可以成为该系统的合法成员。这类合法的协议文档,无需通过传统专利权的方式来声称著作权人的权利,近来在IBM、Sun、Oracle的推动下得到了快速的发展。其实,早在2005年,微软在处理它的Office 2003 XML Reference Schema的时候,已经采用了类似今天OPS的做法,因此成为OPS的一员,微软公司是具备充分的思想准备和行动基础的。
但是,基于微软与众不同的处世风格,微软所倡导的OPS下所公布的那些协议,无疑将会受到严格的审查和重新解释,以确保其在整个行业中的竞争优势。一个明显的事实表明,所公布的仅仅覆盖了协议的当前版本,而且保留了使用者将来不断需要履行的义务。但是,微软表明了希望OPS与开放源许可组织结成紧密联盟的愿望。
微软开放协议的想法由来已久
众多的业内人士认为,这是非常重要的一次进步,微软公司已经摆出了相互包容的姿态,不仅要追求与其它开发平台的协同工作能力,而且还追求用户身份鉴定技术在功能上的等价性。当许可证技术成为主要障碍的关头,包括微软用于实现其用户身份鉴定技术的元模型和计划在内的关键的技术细节很少得到披露,甚至还包括InfoCard 和 CardSpace等等微软尚未确定如何实现的一些技术。
一些专家认为,仅仅靠协议自身是不能提供给你功能上的等价性的,但是很显然的是,微软公司非常认真地看待CardSpace等协议带来的功能等价性问题,微软的加入使得原本有些低调的话题变得热闹起来。
实际上,在整个世界开源形式的逼迫下,微软开放相关协议的打算由来已久,一个非常明显的变化是,从去年开始,任何一家独立软件开发商(ISV)可以自由地开发可以与微软的用户身份元系统(IM, Identity Metasystem)互操作的客户端的接口和后台构件。目前的焦点主要集中在InfoCard以及UI两个基于CardSpace技术的协议文本,这是一个预先为最新的操作系统Vista准备的新技术。CardSpace技术提供给用户一个身份选择器,基于一个安全的身份卡来实现不同网络资源和Web站点的鉴别。在OPS下,第三方可以开发与CardSpace类似的用户接口而不必担心原来的协议约束,同时第三方可以拥有任何平台上的合法客户身份,并能够与微软的身份鉴定元系统完成互操作。
2005年,由IBM,Novell以及一些学院派人士共同倡导的希金斯项目,计划使协议文本成为他们的一种有力工具,利用该工具可以很方便地完成信息技术中的同一性系统的集成问题。
OPS还开放了WS-Trust等协议的使用权,该协议是微软用户身份元系统(Microsoft''s Identity Metasystem)后端框架的基础。该框架是微软安全令牌服务(Microsoft''s Security Token Service)的核心,在此基础上,利用基于WS-Trust的客户端或服务器端的轻型网关就可以完成在Kerberos或安全断言标记语言(SAML)中所定义的安全令牌交换任务。
微软向先进性结构化信息标准组织(OASIS,Organization for the Advancement of Structured Information Standards)提交的35个协议标准中,有些不需要协议的提供者(卖方)放弃他们的智力财产权,而OPS则允许不同的选择。目前,35个协议中,已经有部分得到了OASIS的认可。
35个协议中,有很多协议是与IBM联合开发的,协议的免费条款因而会受到双方当时约定的限制。IBM正在建立的很多协议都归入了它所倡导的开源计划----日蚀(Eclipse)计划中。另外还要考虑Sun公司等自由软件联盟成员的影响,该公司支持协议中的知识产权的无障碍共享。
已经归入到OPS的一些WS-*协议
协议的英文名称 |
协议的中文简释 |
WS-Addressing |
定义了WS关于网络地址的服务约定 |
WS-AtomicTransaction |
定义了WS关于原子事务处理的服务约定 |
WS-BusinessActivity |
定义了WS关于商务行为的服务约定 |
WS-Coordination |
定义了WS关于网络协作的服务约定 |
WS-Discovery |
定义了WS关于网络发现的服务约定 |
WS-Addressing |
定义了WS关于网络地址的服务约定 |
WS-AtomicTransaction |
定义了WS关于原子事务处理的服务约定 |
WS-BusinessActivity |
定义了WS关于商务行为的服务约定 |
WS-Coordination |
定义了WS关于网络协作的服务约定 |
WS-Discovery |
定义了WS关于网络搜寻的服务约定 |
WS-Enumeration |
定义了WS关于网络枚举的服务约定 |
WS-Eventing |
定义了WS关于网络事件处理的服务约定 |
WS-Federation |
定义了WS关于网络联盟的服务约定 |
WS-Federation Active Requestor Profile |
定义了WS关于网络联盟主动请求轮廓的服务约定 |
WS-Federation Passive Requestor Profile |
定义了WS关于网络联盟被动请求轮廓的服务约定 |
WS-Management |
定义WS关于网络管理的服务约定 |
WS-Management Catalog |
定义WS关于网络管理类目的服务约定 |
WS-Metadata Exchange |
定义WS关于网络元数据交换的服务约定 |
WS-Policy |
定义WS关于网络政策的服务约定 |
WS-Policy Attachment |
定义WS关于网络政策附件的服务约定 |
WS-Reliable Messaging |
定义WS关于网络可靠性通讯的服务约定 |
WS-RM Policy |
定义WS关于网络RM政策的服务约定 |
WS-Secure Conversation |
定义WS关于网络安全性对话的服务约定 |
WS-Security: Kerberos Binding |
定义WS关于网络安全中Kerberos绑定的服务约定 |
WS-Security: SOAP Message Security |
定义WS关于网络安全中SOAP通讯安全的服务约定 |
WS-Security: Username Token Profile |
定义WS网络安全中用户名令牌轮廓的服务约定 |
WS-Security: X.509 Certificate Token Profile |
定义WS网络安全中X.509证书令牌轮廓的服务约定 |
WS-Security Policy |
定义WS关于网络安全政策的服务约定 |
WS-Transfer |
定义WS关于网络变换的服务约定 |
WS-Trust |
定义WS关于网络信任的服务约定 |
WS-I Basic Profile |
定义WS关于网络基本轮廓的服务约定 |
WSDL |
定义WS关于WSDL的服务约定 |
WSDL 1.1 Binding Extension for SOAP 1.2 |
定义关于SOAP1.2的WSDL1.1绑定扩展的服务约定 |
SOAP MTOM / XOP |
定义关于SOAP MTOM / XOP的服务约定 |
SOAP-over-UDP |
定义关于SOAP-over-UDP的服务约定 |
Remote Shell Web Services Protocol |
定义远程Shell Web服务协议的服务约定 |
Web Single Sign-On Interoperability Profile |
定义单一网络签名互操作轮廓的服务约定 |
Web Single Sign-On Metadata Exchange Protocol |
定义单一网络签名元数据交换的服务约定 |