2005年09月22日

SAML(Security Assertion Markup Language,安全断言标记语言)是被OASIS
(Organization for the Advancement of Structured Information Standards,结构化信息标准促进组织)
批准执行的标准。

SAML是一种基于XML语言用于传输认证及授权信息的框架,可以作为商业合作伙伴之间交换验证和授权信息的实现,尤其是借助Web服务交换的信息。有了SAML,多家公司管理的站点之间就可以实现基于Web的安全兼容,如单点登录。

针对不同目的,SAML提供以下几种不同类型的安全断言:
a、认证断言(Authentication Assertion):表明用户是否已经认证,通常用于单点登录。
b、属性断言(Attribute Assertion):表明某个Sujbect 的属性。
c、决定断言(Decision Assertion):表明描述一个具体授权请求的结果。
d、授权断言(Authorization Assertion):表明某个资源的权限。

SAML利用基本的Web服务标准,如XML、简单对象访问协议(SOAP)和传输层安全(TLS),支持安全交换验证和授权信息。RSA、Netegrity、IBM、Oracle、BEA、Oblix和Jericho等厂商已承诺支持SAML,并正在把这项规范实施到各自的产品中去。

SAML使用SOAP消息里面的标题通过HTTP进行传输,在断言管理方和转发方之间传输安全信息。比如,用户在某一站点登录后,SAML断言会传输用户验证令牌,其中提供了通过验证登录远程站点验证的手段。SAML封包包括验证令牌和用户属性,可以对照用于验证和访问控制的规则引擎进行检验。

值得一提的是,SAML不负责验证,它只负责传输被验证的信息。另外,SAML可使用不同的验证管理机构,比如LDAP、活动目录和RADIUS,允许使用不同的识别方法,如口令、生物检测术、公钥基础设施(PKI)、安全套接层(SSL)和Kerberos等等。随后,作为传输机制,SAML传输用户已通过验证的断言信息。相比之下,SAML既不进行授权,也不传输访问控制信息。

目前SAML的版本是V2.0,2005年8月9日通过正式批准,2005年8月12日开始实行。

2005年09月06日

开放应用程序组(OAG)是又一个尝试将 XML 格式标准化以用于组织间交换的开拓小组。他们的核心工作产品是开放应用程序组互操作标准(Open Applications Group Interoperability Standard (OAGIS)),最近公布了其新发行版版本 9.0。

OAGIS 包含一组用 XML 格式化的公共业务交易的消息集,称为业务对象文档(BOD)。构成公共业务交互的消息序列称为方案(scenario)。OAG 鼓励用户使用电子应用程序集成(EAI)特性、基本或安全的 HTTP 或 SMTP,或者 SOAP,甚至是在 ebXML 框架中,直接交换方案中的每个 BOD。

OAGIS 版本 8.0 提供了与版本 7.2.1 相同的 BOD 集合。添加了对更具描述性的标记名称的支持,但大多数更改是添加了技术特性规范。尤其是,BOD 现在具有 W3C XML 模式定义语言(XSDL)定义;还有用 XPath 定义的映射,用于根据消息内容集成应用程序执行。版本 8.0 中的所有 BOD 文档都是以强交叉引用的 HTML 提供的。

OAG 似乎还很认真地采用了与其它组的可互操作的思想。7.2.1 发行版已经提供了对 ebXML、RosettaNet 实现框架(RNIF)和 Microsoft 的 BizTalk 的支持。随着核心 XML 技术映射的添加,现在,在各种通用 XML 工具中支持 OAGIS 的道路越发清晰了。

OAGIS 8.0 可免费下载。您会得到一个大的 zip 文件,在解压缩之后,可以通过在 Web 浏览器中查看所包含的 index.html 来开始。压缩文档还包含 XML 概要(schemata)(仅 XSDL 格式 ― 没有 DTD)和示例 BOD。这个概要很大,并且展开成错综复杂互连文件。OAG 推荐使用 XML IDE,也许是基于这样的设想:这样的工具有助于理解散乱的模式文档。为方便起见,Xerces 解析器、Saxon XSLT 引擎和 XSV XSDL 验证器被捆绑在一起。

在该 zip 文件中,还有所有 200 多个 BOD 的示例。这些示例不大象它们应有的那样有用,因为它们有许多占位符,如文本“String”大意相当于说“把某个字符串放在这儿”。也许这适合于模板,但在示例中,这不是很有用。看起来这些样本不大可能仅仅意味着模板,因为 OAG 推荐使用 XML 工具,而任何工具都能方便地从模式生成模板。但是,作为示例它们应该以友好的方式帮助用户理解文档的结构和意图。因此,不完整的示例有点让人沮丧,但考虑到 BOD 可能很大,因此可能认为将完整的示例放入免费可用的软件包中要投入太多的工作而不能实现。

UBL – Universal Business Language ,通用商业语言,目的在促进电子文件格式 (例如订单或发票的格式)的标准化,从而增进企业之间的信息与数据的交流。

OASIS 委员会于2004年5月通过通用业务语言UBL(Universal Business Language)1.0草案,经过6个月后,UBL1.0 成为 OASIS 的正式标准。


UBL 是一种将纸本文件转为电子文件的简单方法,其目的是要让企业做在线交易时,简化采购单等一类文件的共享。UBL 的设计是要和XML 及OASIS 技术标准里与商业相关的ebXML 兼容──包含了一系列的网络传输协定。

UBL 1.0 版的通过显示出,去年1 月间所提出的原始规范提案受到了ebXML 系统的支持。USB 文件格式与ebXML 协定结合之后,将提供一套低成本的标准,取代旧有的EDI (电子信息交换)电子商务系统。

结构化信息标准促进组织(Organization for the Advancement of Structured Information Standards,OASIS)——OASIS 是一个产业标准组织,会员包括了惠普、IBM ,及微软等科技大厂,以及在商业应用上使用XML 语言的一些企业,例如Visa 及Wells Fargo Bank。

OASIS 是少数积极为企业间信息交换与处理建立XML 格式标准的组织。

这个组织宣称有来自100个国家的参与开发软件系统的越过600个的企业和个人。

OASIS 已经在 ebXML(由联合国联合主办)、UDDI 和 LegalXML 等的标准的开发中发挥了作用。OASIS 还主办了应用程序schema的信息交换站XML.org,以及一个互操作语言标准的联机资源 Cover Pages

注意 OASIS 并不与 W3C 或 ISO 等组织竞争,它主要负责在以下领域中建立创建解决schema的标准:

  • 垂直产业:开发基于 XML 的应用程序和用于具体垂直产业的schema。

  • 水平和电子商务框构:开发商业信息的电子交换的规范。

  • 互操作性:开发其它标准,它们的操作和它们的功能与前 XML API 之间进行集成的规范。

  • 适应性测试:开发相关schema 的测试场景。

    OASIS 的工作方式是通过采用一个供应商中立的,技术委员会方法来管理开发。技术委员会通常是对所有 OASIS 开放的,而且委员会使用民主过程管理,鼓励团队成员取得一致意见。

    技术委员会渴望提供供应商中立的,灵活的,可伸缩的解决方案。OASIS 目前已经有不计其数的活动技术委员会正在为 eXtensible Access Control Markup Language(可扩展访问控制标记语言,XACML)和 Human Markup Language(人类标记语言,HumanML)等目标而工作。

  • 2005年08月26日

    在Apache组织中,有一个称做Tcl的项目。包括以Tcl语言为基础的三个子项目:

    mod_tcl 包含了Tcl 的解释器,作为模块提供给Apache web server,可以使tcl程序在web浏览器运行。

    Rivet 是类似mod_dtcl的新一代的web脚本语言。

    Websh 是一个用于创建强大、快速、可信赖的web应用程序的开发环境。

    Tcl (tool command language)是一种简明,高效,灵活,多功能,可移植性好,广泛用于工业的、开源的、跨平台的脚本语言,发音为[tickle]。Tcl是1988年,由伯克利大学的教授John K. Ousterhout 发明的。

    Tcl 最初的构想的是希望把编程按照基于组件的方法 (component approach),即与其为单个的应用程序编写成百上千行的程序代码,不如寻找一个种方法将程序分割成一个个小的, 具备一定“完整”功能的,可重复使用的组件。这些小的组件小到可以基本满足一些独立的应用程序的需求,其它部分可由这些小的组件功能基础上生成。不同的组件有不同的功能,用于不同的目的。并可为其它的应用程序所利用。当然, 这种语言还要有良好的扩展性, 以便用户为其增添新的功能模块。最后,需要用一种强的,灵活的“胶水”把这些组件“粘”合在一起, 使各个组件之间可互相“通信”,协同工作。程序设计有如拼图游戏一样,这种设计思想与后来的 Java 不谋而合。终于在 1988 年的春天, 这种强大灵活的胶水 – Tcl 语言被发明出来了。

    按照 Ousterhout 教授的定义, Tcl 是一种可嵌入的命令脚本化语言 (Command Script Language)。“可嵌入”是指把很多应用有效,无缝地集成在一起。“命令”是指每一条 Tcl 语句都可以理解成命令加参数的形式:

      命令 [参数 1] [参数 2] [参数 3] [参数 4] …… [参数 N]

       脚本化是指 Tcl 为特殊的,特定的任务所设计。

    关于Tcl语言详见: http://www.tcl.tk/resource/doc/start/

    Lucene是一个非常优秀的开源的全文搜索引擎,目前是Apache的顶级项目。Lucene读做loo-seen ['lusen]。

    Apache Lucene项目开发开放源代码的搜索引擎,包括:

    Lucene Java,提供基于Java语言的索引和搜索技术;
    Nutch,以Lucene Java为基础,提供Web方式的搜索引擎,是在2005年6月1日正式成为Lucene子项目的;
    Lucene4c,是基于C语言的搜索引擎,兼容Lucene Java,运行在Apache Portable Runtime下,目前还在孵化阶段。

    2005年6月1日
    - The Nutch project has graduated from the Apache Incubator and now joins Lucene as a sub-project.

    2005年2月14日
    – Lucene moves to Apache top-level

    2004年01月11日

    深夜。


    只有计算机的嗡嗡声和键盘声。


    早上,北京下了一场雪,不大。今年冬天很暖,这场雪也是等了好久,才终于在春节到来之前降了下来。打开窗,风猛地灌进来,倒有几分寒意。


    项目还在进行中,忙碌中似乎淡忘了时间。只有在有人谈到定火车票的时候,才感觉春节越来越近了…