ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 在 WebSphere Portal 中启用 SSL 来进行用户管理

在 WebSphere Portal 中启用 SSL 来进行用户管理

原创 Linux操作系统 作者:CloudSpace 时间:2009-07-30 16:38:22 0 删除 编辑

王 添翼 (tianyiw@cn.ibm.com), 软件工程师, IBM
闫 焱 (yanyan@cn.ibm.com), 高级软件工程师, IBM
暴 莹 (baoying@cn.ibm.com), 软件工程师, IBM

前提条件

在 WebSphere Portal 中启用 SSL 连接 LDAP 服务器之前,请首先确认您已经能够通过 Portal 的 WebSphere Member Manager(WMM)正常连接到 LDAP 服务器的普通端口(一般为 386 或者 389)进行用户管理。如果 WMM 无法正常工作,请参考 WebSphere Portal 的信息中心里 关于 WebSphere Member Manager 配置 的相关信息。

然后,您需要在 LDAP 服务器端开启 SSL 连接,并导出用于 SSL 连接的密钥数据库文件。根据 LDAP 服务器的种类不同,相关操作也略有不同,请咨询您的 LDAP 管理员或有关网站来获取这方面的信息。

本文所有示例都是基于如下配置:

WebSphere Portal 环境:

操作系统 SUSE Linux Enterprise Server 9
WebSphere Portal 版本 6.0.1.4
WebSphere Application Server 版本 6.0.2.29

LDAP 服务器环境:

操作系统 Microsoft Windows 2000, Service Pack 4
LDAP 服务器类型 IBM Tivoli Directory Server
LDAP 服务器版本 6.0
SSL 端口 636
密钥数据库类型 CMS
密钥数据库文件 key.kdb

注:以上配置仅为参考信息,是为了便于下文描述操作的具体步骤而提供,如果读者的环境与上述环境有所不同,可根据自身情况,结合下文示例进行调整。本文所述方法适用于所有 6.0 以上版本的 WebSphere Portal 及其支持的 LDAP 服务器。





回页首


密钥数据库文件格式的转换

关于 iKeyman

iKeyman 实用程序是一种您可以用来管理数字证书的工具。通过 iKeyman,您可以创建新的密钥数据库或测试数字证书、添加 CA 根到数据库、 从一个数据库复制证书到另一个数据库、从 CA 请求和接收数字证书、设置缺省密 钥和更改密码。iKeyman 通常位于 /bin 目录下,在 Windows 系统中,通常也可以在 C:\Program Files\IBM\gsk6\bin 或者是 C:\Program Files\IBM\gsk7\bin 目录下找到。

在成功启用 LDAP 服务器的 SSL 连接后,您将得到用于 SSL 连接的密钥数据库文件,以 IBM Tivoli Directory Server 为例,该文件通常为 CMS 格式(*.kdb),而在 WMM 中,我们需要格式为 JKS(*.jks)的密钥数据库文件来进行 SSL 连接。

为了处理这种证书文件格式不符的问题,我们需要借助 IBM 密钥管理工具(iKeyman)来帮助我们进行证书格式的转换。

请按照如下步骤来转换证书的格式:

导入原始密钥数据库文件

  1. 运行 iKeyman,并从 “ Key Database File ”下拉菜单中选择 “ Open ”。

    图 1. 打开证书文件
    打开证书文件

  2. 在打开的窗口中,根据原始密钥数据库文件的类型,选择相应的“ Key database type ”,再通过“ Browse ”来定位文件。

    图 2. 定位密钥数据库文件
    定位密钥数据库文件

  3. 点击“ OK ”后,将弹出窗口提示我们输入密钥数据库文件密码。请咨询您的 LDAP 管理员获得该密码并输入。

    图 3. 输入密码
    输入密码

  4. 如果输入的密码正确,iKeyman 将打开该密钥数据库文件,并列出文件中所存储的证书的相关信息。下图所示即列出了 key.kdb 文件中存储的“个人证书”,该证书用于 Tivoli Directory Server 的 SSL 连接。

    图 4. “个人证书”内容
    “个人证书”内容

    您也可以通过下拉菜单来查看此密钥数据库文件中存储的其他证书内容:



    图 5. 选择其他证书类型
    选择其他证书类型

    比如当我们选择“ Signer Certificates ”,将列出所有“签署人证书”:



    图 6. “签署人证书”内容
    “签署人证书”内容

至此,我们了解了如何通过 iKeyman 打开 LDAP 服务器的密钥数据库文件,接下来我们进一步学习如何转换文件格式。

转换密钥数据库文件类型

  1. 继上面打开密钥数据库文件之后,点击“ Key Database File ”下拉菜单中的“ Save AS …”按钮,该按钮的功能是将当前密钥数据库文件另存为其他格式。

    图 7. 将密钥数据库文件另存为其他格式
    将密钥数据库文件另存为其他格式

  2. 在弹出的窗口中,根据实际需要,选择要转换的文件类型,以及存储名称、路径。

    图 8. 选择文件类型
    选择文件类型

    由于 WMM 需要 JKS 格式的文件,我们将文件类型更改为 JKS,您可以根据实际需要更改默认提供的文件名和路径。

  3. 点击“ OK ”后,将弹出新的窗口,提示我们为新类型的密钥数据库文件创建密码。您可以自由选择适合自己的密码,iKeyman 将自动判断您当前输入的密码的强度,供您参考。

    图 9. 指定密码
    指定密码

  4. 点击“ OK ”后,新的密钥数据库文件创建完成,并被自动载入到 iKeyman 中。

    图 10. 新的密钥数据库文件
    新的密钥数据库文件

    注意到由于文件类型的不同,密钥数据库文件中存储的“签署者证书”也有所差别。但最关键的是,用于 SSL 连接的“个人证书”被完整的继承过来,这保证了新类型的文件同样能用于 LDAP 服务器的 SSL 连接。



    图 11. 新的密钥数据库文件中“个人证书”内容
    新的密钥数据库文件中“个人证书”内容

至此,我们完成了用于 SSL 连接的密钥数据库文件格式的转换,在接下来的内容中,我们将学习如何更改 WebSphere Member Manager 的配置文件,来使 WebSphere Portal 启用 SSL 连接到 LDAP 服务器。





回页首


WebSphere Portal 中 Member Manager 配置的修改

如果您的 LDAP 服务器与 WebSphere Portal 处于不同的环境下,请首先将上面得到的 JKS 格式的密钥数据库文件拷贝至 WebSphere Portal 所在的环境中。

然后,在动手修改 WebSphere Member Manger 的配置之前,请确认 WebSphere Portal 当前所使用的 WebSphere Member Manager 配置文件的位置。一般来讲,如果您是独立环境(standalone),配置文件一般位于 /wmm 目录下;如果您是集成环境(cluster),配置文件一般位于 /config/wmm 目录下。

在找到配置文件后,请打开其中的 wmm.xml 文件,编辑如下内容:

  1. ldapPort

    指定 LDAP 服务器端用于 SSL 连接的端口号,一般为 636,请根据您的实际情况进行设置。

  2. sslEnabled

    指定是否开启 SSL 连接,默认值为“ false ”,将其更改为“ true ”。

  3. sslLocalScope

    如果将这个参数的值设为“ false ”,或是不设置这个参数,那么 WebSphere Member Manager 将使用 JSSE(Java Security Socket Extension,Java 安全套接字扩展)系统参数来设置用于 SSL 连接的密钥文件的位置及其密码。

    注:JSSE 系统参数适用于整个 JVM 。为了避免与其他同样使用 JSSE 的程序发生冲突,我们强烈推荐用下面介绍的参数在 WebSphere Member Manager 配置文件中显式设置密钥数据库文件的路径及其密码。

  4. sslTrustStore

    指定用于服务器端认证的 LDAP 服务器密钥数据库文件的绝对路径。

  5. sslTrustPassword

    指定“sslTrustStroe”的密码。

    注:虽然您可以直接使用明文来储存密码,但为了提高安全性,我们更推荐您使用 WebSphere Member Manager 提供的专用加密工具,将您的密码加密后再进行存储。在 WebSphere Portal 信息中心里有关于“在成员管理器配置中更改 LDAP 管理员密码”的介绍:

    您可以从中了解到该加密工具的使用方法,唯一的不同之处在于:这里我们需要加密、修改的是用于“ sslTrustPassword ”参数的密码,而不是文中提到的 LDAP 管理员密码(adminPassword)。

  6. sslKeyStore

    指定用于客户端认证的 LDAP 服务器密钥数据库文件的绝对路径。

  7. sslKeyStorePassword

    指定“ sslKeyStore ”的密码;如果需要加密,请参考“ sslTrustPassword ”部分的说明。

下面是开启了 SSL 连接的示例文件(片段),以供参考:


清单 1. WebSphere Member Manager 配置文件示例

				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 用户管理的测试

在重新启动 WebSphere Portal 服务器之后,请打开其管理界面,如图 12 所示,在左边的侧栏中点击“用户和用户组”(Users and Groups)。


图 12. 管理用户和用户组(查看大图
管理用户和用户组

如图 13 所示,随意搜寻位于 LDAP 服务器上的某个用户。


图 13. 搜寻用户(查看大图
图 13. 搜寻用户

搜索成功,证明 WebSphere Portal 已经能够通过 SSL 连接到 LDAP 服务器获取信息。测试搜索结果如图 14 所示。


图 14. 搜索结果(查看大图
图 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/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-07-08

  • 博文量
    355
  • 访问量
    855779