Archive for November, 2007

Atom feed reader

Friday, November 30th, 2007

前天收到一个客户询问想知道有哪些免费的feed reader可以用来订阅Connections的atom feed。因为Connections部署在公司内网,在线的feed reader都无法访问(如果有基于JS的atom reader倒是可用),所以只能需找客户端软件。

在网上搜了一吧,免费的里面对Connections的支持好的feed reader算一个,RSSOwl也可以不过在处理Connections的feed上出现了一个问题。ThunderBird不支持Atom很遗憾,虽然Firefox上有atom reader插件不过客户大多数使用IE 6/7,所以也不是个通用的方法。

如有更好选择,请跟帖拉

Lotus Connections的安全性

Saturday, November 17th, 2007

Lotus Connections的安全性包括以下几个方面:

1. 传输层安全。Connections在用户登录时强制采用SSL,用户也可以修改配置实现整个应用的SSL保护。上周我们根据一个国外客户的需求,通过定制web.xml和HTTP Server的rewriterule实现了Web访问的强制SSL保护和feed内容的强制basic authentication。

2. 认证安全。Connections的认证包括form based authentication(j_security_check)和basic authentication。前者是在使用浏览器访问5个模块的时候用户认证方式,后者是feed reader使用的。在Connections 1.0.2中,强制要求feed reader在做post等写操作的时候使用basic authentication over SSL,其他读feed的操作无需认证。

3. 第三方安全产品的支持。1.0.2增加了对Tivoli Access Manager (TAM)的支持。看似和应用无关的安全支持实际上影响了不少的代码。而为了支持AJAX, JSON等调用,TAM的配置也是很不同。举例来讲,我们尝试过的一个TAM配置会在返回的页面的末尾添加一段JS代码,这会break我们的JSON调用,必须用其他配置形式绕过。

4. 对Web内容的过滤。Connections使用了ACF对用户提交内容进行检查,去除掉一些会危害Web访问安全的代码,如Cross-site scripting (XSS)。Blogs还会根据用户配置对上传的文件进行检测,最大程度上减少XSS的可能性。Activities甚至还提供了对CSRF的防范功能。

天下没有免费的午餐,增加了诸多的安全性机制,会在某种程度上对系统性能产生影响,比如HTTPS相对HTTP会降低约40%的性能(仅在登录是使用可以忽略);ACF的HTML解析的代价。好消息是大部分安全机制都是可以由用户修改配置来enable或者disable,有相当的灵活性。

Connections 1.0.2 edge server配置

Wednesday, November 14th, 2007

这几天在帮助Connections的客户配置edge reverse proxy,下面是目前使用到的全部配置列表(安装了Blogs,dogear和Activities):

ServerInit C:\Progra~1\IBM\edge\cp\lib\plugins\mod_rewrite\mod_rw.dll:modrw_init Transmogrifier

Transmogrifier C:\Progra~1\IBM\edge\cp\lib\plugins\mod_rewrite\mod_rw.dll:modrw_open:modrw_write:modrw_close:modrw_error

SSLEnable On

SendRevProxyName yes

Enable PUT
Enable DELETE

Map /blogs/* /connections/blogs/*
Map /dogear/* /connections/dogear/*
Map /activities/* /connections/activities/*

JunctionRewrite on

Proxy /connections/* http://wasserver/* :80
Proxy /connections/* https://wasserver/*:443

ReversePass http://wasserver/* http://myserver.com/connections/*
ReversePass https://wasserver/* https://myserver.com/connections/*

JunctionReplaceUrlPrefix http://wasserver/* http://myserver.com/connections/*
JunctionReplaceUrlPrefix https://wasserver/* https://myserver.com/connections/*

MaxContentLengthBuffer 5M

KeyRing C:\Progra~1\IBM\key.kdb

KeyRingStash C:\Progra~1\IBM\key.sth

最后两项的key database文件需要利用ikeyman导入WebSphere for IBM HTTP Server (IHS) plugins的证书以建立edge server和IHS之间的SSL连接。

此文专为搜索引擎供稿。

奔2

Sunday, November 4th, 2007

过去的三个星期,是Lotus Connections 1.0.2和2.0并行开发的三周,一边解bug,一边考虑实现新功能,ClearCase里面两条stream来回切换,不亦乐乎。1.0.2到这个周末算正式结束,进入最终release。1.0.2 Blogs除了修复了从1.0里遗留的30多个bug外,在性能方面也做了诸多调整;另外根据客户反映,恢复了MetaWeblog API的支持(与ATOM API共存)。Connections整体功能方面则支持Tivoli Access Manager,强制的ATOM basic authentication over HTTPS (写入部分,读取依然保持HTTP);增加了AIX平台和MS SQL Server数据库的支持等一系列的改进。

目前正紧锣密鼓开发的Connections 2.0将基于Java 5构建,此前1.0.x基于JDK 1.4,虽然包含了部分1.5的代码,但使用了retroweaver保证这些1.5的代码运行在1.4的VM之上。2.0版的Blogs会在1.0.x基础上增加新的功能,UI方面也会有相当程度的改进与提高,这些工作目前都在紧张的进行中,不久就能看到阶段性成果。