IBM WebSphere Cast Iron 提供了一个平台来将来自领先的软件即服务 (SaaS) 提供商的基于云的应用程序与内部部署的应用程序相集成。WebSphere Cast Iron Studio(以下简称 Cast Iron Studio)是一个开发工具,用于设计、测试和向 Cast Iron Integration Appliance 发布集成项目。Studio 提供了多个实体,可将它们拖到工作区中,将它们配置为组成某个集成项目的一个或多个业务流程的一部分。第 1 部分将介绍如何为 WebSphere Cast Iron Appliance(以下简称 Cast Iron Appliance)和 WebSphere Cast Iron Studio(以下简称 Cast Iron Studio)中的 HTTP 连接器配置 SSL 身份验证和相互 SSL 身份验证。
HTTP 页面通常使用以下两种安全协议之一来加密通信:安全套接字层 (SSL) 或传输层安全 (TLS)。
通过常规 HTTP 连接发送的所有通信内容都是 “明文” 形式的,可由任何设法进入客户端与服务器之间的连接中的攻击者读取。如果 “通信” 内容是一个订货单,包含信用卡细节或社会安全号码,这显然很危险。使用 HTTPS 连接时,所有通信都已安全地加密。这意味着,如果某人设法进入了连接中,它们无法解密 在客户端与服务器之间传递的任何数据。
SSL 证书由客户端和服务器通过以下两种方式进行交换:
这个由 2 部分组成的系列文章的第 1 部分将介绍如何为 Cast Iron Studio 和 Cast Iron Appliance 中的 HTTP 连接器配置 SSL 身份验证和相互 SSL 身份验证。
您需要熟悉 Cast Iron Studio、Cast Iron Appliance 和 HTTP。
需要以下产品和资产来配置和部署该模块:
在 SSL 身份验证中,客户端会获得一个服务器的证书 (CA),然后客户端会试着将该服务器的 CA 与客户端的受信任 CA 列表相匹配。
以下步骤可帮助您为 HTTP 连接器配置 SSL 身份验证。为了解释 SSL 身份验证的安全配置,本教程使用了 Apache Tomcat 作为端点服务器,HTTP 调用活动将使用它通过 GET/POST 连接到页面。
图 1. 创建一个新项目 – Cast Iron 工作区
图 2. Create New Project 窗口
图 3. Activities 选项卡 - HTTP 端点
图 4. Invoke Request 活动
图 5. Pick Endpoint 选项卡
图 6. Create New Endpoint 窗口
图 7. 端点配置属性
图 8a. SSL 身份验证的安全设置
图 8b. 相互 SSL 身份验证的安全设置
图 9. 测试连接
图 10. 测试连接结果
图 11. Configure 选项卡
图 12a. Map Inputs 部分
点击查看大图
关闭 [x]
图 12b. Map Inputs 部分
点击查看大图
关闭 [x]
图 13. 最终的编排计划
回页首
要将 Tomcat 服务器证书导入到 Cast Iron Studio 信任库中,可以执行以下步骤:
server.xml
文件中生成和配置的,如图 14 所示。 图 14. server.xml 文件
点击查看大图
关闭 [x]
c:/Program Files/IBM/WebSphere Cast Iron Studio x.x.x
ikeyman.exe
并打开信任库,例如 cacerts
,它位于 Cast Iron Studio security 目录中,如以下代码和图 15 所示。 c:/Program Files/IBM/WebSphere Cast Iron Studio x.x.x/security
图 15. IBM Key Management
点击查看大图
关闭 [x]
图 16. Password Prompt 窗口
图 17. 密钥数据库内容
点击查看大图
关闭 [x]
图 18. 浏览服务器证书
点击查看大图
关闭 [x]
图 19. 标签名称
点击查看大图
关闭 [x]
在相互 SSL 身份验证中,客户端和服务器都会通过数字证书验证对方,以便双方都能确定另一方的身份。
除了上述步骤或 SSL 身份验证之外,还需要执行以下步骤才能实现相互 SSL 身份验证。您可以继续执行下一节中的步骤,以及在 Cast Iron Studio 中配置 SSL 身份验证部分介绍的步骤。
回页首
ikeyman.exe
并打开 Cast Iron Studio 的密钥库,例如 certs
,它位于 Cast Iron Studio security 目录中,如以下代码和图 20 所示。 c:/Program Files/IBM/WebSphere Cast Iron Studio x.x.x/security
图 20. IBM Key Management
图 21. Password prompt
图 22. 密钥数据库内容
点击查看大图
关闭 [x]
图 23. 提取证书
server.xml
文件中配置的,如图 24 所示。 图 24. server.xml 文件
点击查看大图
关闭 [x]
ikeyman.exe
,打开 Tomcat 服务器的信任库,如图 25 所示。 图 25. 服务器信任库
图 26. 添加客户端证书
点击查看大图
关闭 [x]
图 27. 标签名称
图 28. IBM Key Management
图 29. 启动编排计划
图 30. Cast Iron Studio 中已验证的消息输出
已验证了该编排计划的 SSL 身份验证和相互 SSL 身份验证。现在可以将项目部署到运行时或设备中。
回页首
可以将 Cast Iron Studio 中开发的 Cast Iron 项目部署到一个物理设备 (WebSphere DataPower Cast Iron Appliance XH40)、虚拟设备 (WebSphere Cast Iron Hypervisor Edition) 或纯云服务 (IBM Cast Iron Cloud) 中。可以配置或验证 Cast Iron Appliance 中配置了 SSL 身份验证的 HTTP 连接器活动。执行以下步骤:
图 31. 将项目发布到 Cast Iron Appliance
点击查看大图
关闭 [x]
图 32. 成功发布的项目
图 33. Certificates 选项卡
点击查看大图
关闭 [x]
图 34. Trust Store 窗口
点击查看大图
关闭 [x]
图 35. Import certificate 窗口
点击查看大图
关闭 [x]
图 36. 导入证书
图 37. Trust Store 中的已导入的证书
点击查看大图
关闭 [x]
除了上述步骤之外,还需要执行以下步骤来实现相互身份验证。您可以继续执行下一节中的步骤,以及在 Cast Iron Appliance 中配置 SSL 身份验证部分介绍的步骤。
图 38. Key Store 窗口
图 39. 导出证书窗口
图 40. 导出的证书的格式窗口
ikeyman.exe
从 Studio JRE 将导出的证书导入到 Tomcat 信任库中,这已在将客户端证书导入到服务器信任库中部分介绍。 图 41. Repository 选项卡下已上传的项目
点击查看大图
关闭 [x]
图 42. 启动 HTTP 连接器项目
图 43. HTTP 连接器项目的配置细节
点击查看大图
关闭 [x]
图 44. 作业状态为已完成
点击查看大图
关闭 [x]
图 45. 作业输出细节
点击查看大图
关闭 [x]
现在,配置了 SSL 身份验证和相互身份验证的编排计划和项目都已在 Cast Iron Appliance 中成功验证。
回页首
这个由 2 部分组成的文章系列的第 1 部分介绍了如何以更安全的加密方式,为常用的 HTTP 连接器配置 SSL 身份验证和相互 SSL 身份验证。
本系列的第 2 部分(未来的教程)将介绍针对 WebSphere Cast Iron Live 中的 HTTP 连接器的 SSL 身份验证和相互 SSL 身份验证。
感谢 C. Vamsi 和 Hariharan I. Subramanian 帮助审阅本教程和提供宝贵的建议。