本文共 4383 字,大约阅读时间需要 14 分钟。
(), 软件工程师, IBM
(), 高级软件工程师, IBM (), 软件工程师, IBM在 WebSphere Portal 中启用 SSL 连接 LDAP 服务器之前,请首先确认您已经能够通过 Portal 的 WebSphere Member Manager(WMM)正常连接到 LDAP 服务器的普通端口(一般为 386 或者 389)进行用户管理。如果 WMM 无法正常工作,请参考 WebSphere Portal 的信息中心里 的相关信息。
然后,您需要在 LDAP 服务器端开启 SSL 连接,并导出用于 SSL 连接的密钥数据库文件。根据 LDAP 服务器的种类不同,相关操作也略有不同,请咨询您的 LDAP 管理员或有关网站来获取这方面的信息。
本文所有示例都是基于如下配置:
操作系统 | SUSE Linux Enterprise Server 9 |
WebSphere Portal 版本 | 6.0.1.4 |
WebSphere Application Server 版本 | 6.0.2.29 |
操作系统 | Microsoft Windows 2000, Service Pack 4 |
LDAP 服务器类型 | IBM Tivoli Directory Server |
LDAP 服务器版本 | 6.0 |
SSL 端口 | 636 |
密钥数据库类型 | CMS |
密钥数据库文件 | key.kdb |
注:以上配置仅为参考信息,是为了便于下文描述操作的具体步骤而提供,如果读者的环境与上述环境有所不同,可根据自身情况,结合下文示例进行调整。本文所述方法适用于所有 6.0 以上版本的 WebSphere Portal 及其支持的 LDAP 服务器。
|
|
在成功启用 LDAP 服务器的 SSL 连接后,您将得到用于 SSL 连接的密钥数据库文件,以 IBM Tivoli Directory Server 为例,该文件通常为 CMS 格式(*.kdb),而在 WMM 中,我们需要格式为 JKS(*.jks)的密钥数据库文件来进行 SSL 连接。
为了处理这种证书文件格式不符的问题,我们需要借助 IBM 密钥管理工具(iKeyman)来帮助我们进行证书格式的转换。
请按照如下步骤来转换证书的格式:
您也可以通过下拉菜单来查看此密钥数据库文件中存储的其他证书内容:
比如当我们选择“ Signer Certificates ”,将列出所有“签署人证书”:
至此,我们了解了如何通过 iKeyman 打开 LDAP 服务器的密钥数据库文件,接下来我们进一步学习如何转换文件格式。
由于 WMM 需要 JKS 格式的文件,我们将文件类型更改为 JKS,您可以根据实际需要更改默认提供的文件名和路径。
注意到由于文件类型的不同,密钥数据库文件中存储的“签署者证书”也有所差别。但最关键的是,用于 SSL 连接的“个人证书”被完整的继承过来,这保证了新类型的文件同样能用于 LDAP 服务器的 SSL 连接。
至此,我们完成了用于 SSL 连接的密钥数据库文件格式的转换,在接下来的内容中,我们将学习如何更改 WebSphere Member Manager 的配置文件,来使 WebSphere Portal 启用 SSL 连接到 LDAP 服务器。
|
如果您的 LDAP 服务器与 WebSphere Portal 处于不同的环境下,请首先将上面得到的 JKS 格式的密钥数据库文件拷贝至 WebSphere Portal 所在的环境中。
然后,在动手修改 WebSphere Member Manger 的配置之前,请确认 WebSphere Portal 当前所使用的 WebSphere Member Manager 配置文件的位置。一般来讲,如果您是独立环境(standalone),配置文件一般位于 /wmm 目录下;如果您是集成环境(cluster),配置文件一般位于 /config/wmm 目录下。
在找到配置文件后,请打开其中的 wmm.xml 文件,编辑如下内容:
指定 LDAP 服务器端用于 SSL 连接的端口号,一般为 636,请根据您的实际情况进行设置。
指定是否开启 SSL 连接,默认值为“ false ”,将其更改为“ true ”。
如果将这个参数的值设为“ false ”,或是不设置这个参数,那么 WebSphere Member Manager 将使用 JSSE(Java Security Socket Extension,Java 安全套接字扩展)系统参数来设置用于 SSL 连接的密钥文件的位置及其密码。
注:JSSE 系统参数适用于整个 JVM 。为了避免与其他同样使用 JSSE 的程序发生冲突,我们强烈推荐用下面介绍的参数在 WebSphere Member Manager 配置文件中显式设置密钥数据库文件的路径及其密码。
指定用于服务器端认证的 LDAP 服务器密钥数据库文件的绝对路径。
指定“sslTrustStroe”的密码。
注:虽然您可以直接使用明文来储存密码,但为了提高安全性,我们更推荐您使用 WebSphere Member Manager 提供的专用加密工具,将您的密码加密后再进行存储。在 WebSphere Portal 信息中心里有关于“”的介绍:
您可以从中了解到该加密工具的使用方法,唯一的不同之处在于:这里我们需要加密、修改的是用于“ sslTrustPassword ”参数的密码,而不是文中提到的 LDAP 管理员密码(adminPassword)。
指定用于客户端认证的 LDAP 服务器密钥数据库文件的绝对路径。
指定“ sslKeyStore ”的密码;如果需要加密,请参考“ sslTrustPassword ”部分的说明。
下面是开启了 SSL 连接的示例文件(片段),以供参考:
636” ldapTimeOut= ” 6000 ” ldapAuthentication= ” SIMPLE ” ldapType= ” 0 ” sslEnabled= ” true ” sslLocalScope= ” true ” sslKeyStore= ” /opt/IBM/WebSphere/PortalServer/keys/key.jks ” sslKeyStorePassword= ” 4eIrkiVIT78= ” sslTrustStore= ” /opt/IBM/WebSphere/PortalServer/keys/key.jks ” sslTrustStorePassword= ” 4eIrkiVIT78= ” > |
至此,我们已经完成了所有的配置,请保存修改后的 wmm.xml 文件,并重新启动 WebSphere Portal 服务器以使更改生效。
在本文最后的内容中,我们将通过一个简单的测试来验证 WebSphere Portal 已经能够通过 SSL 连接到 LDAP 服务器,并进行用户管理。
|
在重新启动 WebSphere Portal 服务器之后,请打开其管理界面,如图 12 所示,在左边的侧栏中点击“用户和用户组”(Users and Groups)。
如图 13 所示,随意搜寻位于 LDAP 服务器上的某个用户。
搜索成功,证明 WebSphere Portal 已经能够通过 SSL 连接到 LDAP 服务器获取信息。测试搜索结果如图 14 所示。
在使用 WebSphere Portal 对后台 LDAP 用户存储库进行管理时,管理员可能需要为访问 LDAP 服务器提供安全保护,例如启用 SSL 连接。本文详细讲述了如何在 WebSphere Portal 中启用 SSL 来连接到 LDAP 服务器,包括密钥数据库文件格式的转换以及 WebSphere Portal 中 Member Manager 配置的修改。相信读者通过本文的学习,掌握这些操作的具体步骤并加以实践,将能在使用 WebSphere Portal 管理后台 LDAP 用户存储库中的数据时,为用户的数据安全提供更好的加密与保护。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14789789/viewspace-610874/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/14789789/viewspace-610874/