| 免费下载:IBM® WebSphere® Message Broker 试用版 |
|---|
| 下载更多的 IBM 软件试用版,并加入 IBM 软件下载与技术交流群组,参与在线交流。 |
在许多环境中,安全套接层 (SSL) 配置 往往充满挑战,因为配置和设置中涉及到许多组件。IBM® WebSphere® MQ 中的 SSL 配置和用途完全不同于 WebSphere Message Broker 中的 SSL 用途,包括术语方面的不同。实现 WebSphere Message Broker SSL 需要对面向开发人员的 WebSphere Message Broker 节点有很好的理解,还需要对面向基础架构 支持团队的 WebSphere Message Broker Infrastructure 有很好的理解。
对于 Web 服务中介和 Web 服务定义语言 (Web Services Definition Language, WSDL) 定义的转换而言,WebSphere Message Broker 是一个便利的中间点。消息流既可以是请求提供某项 Web 服务的请求者,也可以是其 Web 服务客户端被调用的服务提供者。最常用于此目的的节点是 HTTPInput 节点、HTTPReply 节点、HTTPRequest 节点和相应的 HTTPS 节点。
本文将向您展示如何在 WebSphere Message Broker 上实现 SSL 并配置 HTTP,从而使用 SSL (HTTPS) 通信。
Java 密钥库 (JKS) 格式的 Truststore cacert 存储在 AIX 上的以下默认位置:
- WebSphere Message Broker V6:/opt/IBM/mqsi/610/jre15/ppc64/lib/security
- WebSphere Message Broker V7:/opt/IBM/mqsi/7.0/jre16/lib/security
只要在代理注册表中指定了密钥库文件(如下所示) ,就可以在任意位置存储它。
和在 WebSphere MQ 一样,WebSphere Message Broker 中的 SSL 配置需要一个密钥存储库,即一个密钥库。SSL 用于加强 WebSphere Message Broker 基础架构的安全。以下是一些高级的 SSL 配置步骤:
- 生成一个密钥库: 创建密钥库文件的方法有许多种,比如使用
gsk7cmd/gsk6cmd,它是叫做 ikeyman 的全球安全工具包 (GSK) 图形工具的一部分。本文使用了一个叫做 keytool 的命令行工具。 - 为现有的密钥库生成一个证书签名请求 (CSR)。
- 将一个 root 或中间证书机构 (CA) 证书导入现有密钥库。
- 将一个已签署的证书导入现有密钥库。
- 验证证书的细节信息,包括以下内容:
- 列出所有证书。
- 列出某个特定证书。
- 列出受信任的 CA 证书。
keytool -genkey -alias <broker name> -keystore <broker name>.jks -keysize 2048 |
keytool 命令将出现在代理服务 id 的路径中。在这里,<broker name> 表示运行在您的服务器之上的代理实例;可以使用代理名称作为别名,以便在每个代理的单独的条目之间进行区分。
作为最佳实践,密钥库文件的名称 (keystore.jks) 应该将 <broker name> 名称包含在内,比如 <broker name>.jks。 为了简便起见,我们将使用 BROKER1 作为代理的名称。上述命令生成了私钥和密钥库文件。在输入上述命令之后,系统会提示您回答以下问题:
What is your first and last name?
[Unknown]:
What is the name of your organizational unit?
[Unknown]:
What is the name of your organization?
[Unknown]:
What is the name of your City or Locality?
[Unknown]:
What is the name of your State or Province?
[Unknown]:
What is the two-letter country code for this unit?
[Unknown]:
|
在提供上述问题的答案之后,系统会提示您确认所有回答是否正确,如下所示。如果所有回答都是正确的,请输入 Yes:
Is CN=, OU=, O=, L=, ST=, C= correct? (type "yes" or "no")
[no]: yes
Enter key password for <alias name>:
(RETURN if same as keystore password):
|
一个样例条目如下所示:
What is your first and last name?
[Unknown]: BROKER1
What is the name of your organizational unit?
[Unknown]: ZONE1
What is the name of your organization?
[Unknown]: IBM
What is the name of your City or Locality?
[Unknown]: US
What is the name of your State or Province?
[Unknown]: Washington
What is the two-letter country code for this unit?
[Unknown]: US
Is CN=BROKER1, OU=ZONE1, O=IBM, L=US, ST=Washington, C=US correct? (type "yes" or "no")
[no]: yes
Enter key password for <bonca60>:
(RETURN if same as keystore password): ********
$
|
keytool -certreq -alias BROKER1 -keystore BROKER1.jks -file BROKER1.csr |
在这里,您要创建一个私钥。将 CSR 文件发送给 CA 团队,以便获得生成的证书。将 CRS 传递给 CA 的过程取决于 CA,传输 证书详细信息的最常见方法是通过网络链接。在收到来自 CA 的已签名证书(下方将其命名为 certificate.der)之后,继续以下步骤:
3. 将一个 root 或中间证书机构 (CA) 证书导入现有密钥库
keytool -import -trustcacerts -alias root -file Thawte.crt -keystore BROKER1.jks |
密钥库文件的名称为 BROKER1.jks,中间 CA 证书的名称为 Thawte.crt。
您必须在导入已签名的证书之前导入 root 和/或中间 CA 证书,因为证书是按序生效的。root 证书必须 出现在密钥文件中,这样已签名的证书才有一个发挥其效用的平台。最常使用的 CA 是 GlobalSign 和 VeriSign。
keytool -import -trustcacerts -alias BROKER1 -file certificate.der -keystore BROKER1.jks |
此证书是您从上述 CA 中接收的证书。已签名证书文件的名称为 certificate.der。
为了确保已正确执行上述步骤,进行以下确认和验证检查非常重要:
列出密钥库中的所有可用证书
keytool -list -keystore BROKER1.jks
/home/brkr>keytool -list -keystore BROKER1.jks
IBMJSSEProvider2 Build-Level: -20100325
Enter keystore password:
Keystore type: jks
Keystore provider: IBMJCE
Your keystore contains 11 entries
verisign class 1 public primary certification authority - g3,
Sep 14, 2011, trustedCertEntry,
Certificate fingerprint (MD5): B1:47:BC:18:57:D1:18:A0:78:2D:EC:71:E8:2A:95:73
verisign class 1 public primary certification authority - g2,
Sep 14, 2011, trustedCertEntry,
Certificate fingerprint (MD5): DB:23:3D:F9:69:FA:4B:B9:95:80:44:73:5E:7D:41:83
verisign class 4 public primary certification authority - g3,
Sep 14, 2011, trustedCertEntry,
Certificate fingerprint (MD5): DB:C8:F2:27:2E:B1:EA:6A:29:23:5D:FE:56:3E:33:DF
verisign class 4 public primary certification authority - g2,
Sep 14, 2011, trustedCertEntry,
Certificate fingerprint (MD5): 26:6D:2C:19:98:B6:70:68:38:50:54:19:EC:90:34:60
verisign class 2 public primary certification authority,
Sep 14, 2011, trustedCertEntry,
Certificate fingerprint (MD5): B3:9C:25:B1:C3:2E:32:53:80:15:30:9D:4D:02:77:3E
entrust.net global client certification authority,
Sep 14, 2011, trustedCertEntry,
Certificate fingerprint (MD5): 9A:77:19:18:ED:96:CF:DF:1B:B7:0E:F5:8D:B9:88:2E
thawte_dv_ssl_ca_3, Oct 14, 2011, trustedCertEntry,
Certificate fingerprint (MD5): A5:97:C7:3F:D2:0D:F6:0C:10:D5:4D:31:49:D6:CA:9D
verisign class 2 public primary certification authority - g3,
Sep 14, 2011, trustedCertEntry,
Certificate fingerprint (MD5): F8:BE:C4:63:22:C9:A8:46:74:8B:B8:1D:1E:4A:2B:F6
verisign class 2 public primary certification authority - g2,
Sep 14, 2011, trustedCertEntry,
Certificate fingerprint (MD5): 2D:BB:E5:25:D3:D1:65:82:3A:B7:0E:FA:E6:EB:E2:E1
verisign class 3 secure server ca, Sep 14, 2011, trustedCertEntry,
Certificate fingerprint (MD5): 2A:C8:48:C0:85:F3:27:DE:32:29:44:BB:B0:2C:79:F8
verisign class 3 public primary certification authority,
Sep 14, 2011, trustedCertEntry,
Certificate fingerprint (MD5): 10:FC:63:5D:F6:26:3E:0D:F3:25:BE:5F:79:CD:67:67
|
列出某个特定的证书
keytool -list –v –keystore BROKER1.jks –alias <alias name>
/home/brkr>keytool -list -v -keystore BROKER1.jks -alias broker1
IBMJSSEProvider2 Build-Level: -20100325
Enter keystore password:
Alias name: broker1
Creation date: Sep 14, 2011
Entry type: keyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=xxxx.xxx.xxxxxxxx.com, OU=Zone1, O=IBM, L=India, ST=Chennai, C=IN
Issuer: CN=M-PKI-TER-CA, O=IBM, C=IN
Serial number: 13fd3b
Valid from: 9/8/11 1:51 PM until: 10/12/12 1:51 PM
Certificate fingerprints:
MD5: 21:6B:F8:B8:31:3B:CA:5A:6D:92:86:80:B6:24:70:C1
SHA1: DC:88:DA:49:72:4E:53:F5:74:6D:7C:82:A8:18:7C:7F:A3:E1:FA:BD
|
列出受信任的 CA 证书
此命令显示了 CA 机构证书的详细信息:
keytool -list –v -keystore /opt/IBM/mqsi/7.0/jre16/lib/security/cacerts |
配置 Message Broker,以便为 HTTP/HTTPS 请求提供服务
在 WebSphere Message Broker 中,HTTPInput、HTTPReply、HTTPRequest、SOAPInput、SOAPReply、SOAPRequest 和 SOAPAsyncRequest 节点用于促进发往 Web 服务和来自 Web 服务的 HTTP/HTTS 请求的顺利完成。关于这些节点的更多信息,请参阅 WebSphere Message Broker 信息中心内的 内置节点。
作为代理基础架构变更的一部分,您必须告诉代理去哪儿查找密钥库和 truststore 文件:
mqsireportproperties BROKER1 -o BrokerRegistry -r
BrokerRegistry
uuid='BrokerRegistry'
brokerKeystoreType='JKS'
brokerKeystoreFile=' /home/brkr/BROKER1.jks’
brokerKeystorePass='brokerKeystore::password'
brokerTruststoreType='JKS'
brokerTruststoreFile=' /opt/IBM/mqsi/7.0/jre16/lib/security/cacerts'
brokerTruststorePass='brokerTruststore::password'
httpConnectorPortRange=''
httpsConnectorPortRange=''
modeExtensions=''
operationMode='enterprise'
shortDesc=''
longDesc=''
BIP8071I: Successful command completion.
|
有关更多信息,请参阅 WebSphere Message Broker 信息中心内的 mqsireportproperties 命令。
2. 将 root 证书和服务器证书导入代理 truststore
转至 CODE/opt/IBM/mqsi/7.0/jre16/lib/security 并继续以下步骤:
keytool -import -trustcacerts –alias root.Cert -file /home/brkr/ Thawte.crt -keypass <password> -keystore cacerts –storepass changeit keytool -import -alias BROKER1 -file /home/brkr/certificate.der -keystore cacerts –storepass changeit |
trustore (cacerts) 的默认密码为 XXXXX。
该命令对 HTTP 侦听器对象启用了 SSL:
mqsichangeproperties BROKER1 -b httplistener -o HTTPListener -n enableSSLConnector -v true |
密钥库文件是在上面的 步骤 1. 生成一个密钥库 中生成的。
mqsichangeproperties BROKER1 -b httplistener -o HTTPSConnector -n keystoreFile
-v /home/brkr/BROKER1.jks
|
mqsichangeproperties BROKER1 -o BrokerRegistry -n brokerKeystoreFile
-v /home/brkr/BROKER1.jks
|
mqsichangeproperties BROKER1 -o BrokerRegistry -n brokerTruststoreFile
-v /opt/IBM/mqsi/7.0/jre16/lib/security/cacerts
|
mqsisetdbparms BROKER1 -n brokerTruststore::password -u temp -p changeit |
mqsichangeproperties BROKER1 -b httplistener -o HTTPSConnector -n keystorePass
-v <password>
|
mqsichangeproperties BROKER1 -b httplistener -o HTTPSConnector -n port -v 7094 |
现在 BROKER1 会运行在端口 7094 之上,以便处理 HTTPS 请求。处理 HTTPS 请求的默认端口为 7083。
mqsichangeproperties BROKER1 -b httplistener -o HTTPConnector -n port -v 7091 |
现在 BROKER1 会运行在端口 7091 之上,以便处理 HTTP 请求。处理 HTTP 请求的默认端口为 7080。
通过修改对象 ComIbmJVMManager,您
可以根据您的需要更改 JVM 堆大小:
mqsichangeproperties BROKER1 -o ComIbmJVMManager -n jvmMaxHeapSize -v 1048576000 mqsichangeproperties BROKER1 -o ComIbmJVMManager -n jvmMinHeapSize -v 134217728 |
mqsireportproperties BROKER1 -b httplistener -o HTTPConnector -n port 7091 BIP8071I: Successful command completion. mqsireportproperties BROKER1 -b httplistener -o HTTPSConnector -n port 7094 BIP8071I: Successful command completion. |
mqsistop <Broker Name> mqsistart <Broker Name> mqsistop BROKER1 mqsistart BROKER1 |
为了给 SOAP 请求提供服务,需要在执行组 (EG) 级别上配置端口。每个执行组都有一个侦听器、一个 HTTP 端口和一个 HTTPS 端口。默认 SOAP 节点的端口号为 7800(适用于 HTTP)和 7843(适用于 HTTPS)。在下面的示例中,<EG Name> 代表执行组的名称。
首先告诉 EG 正在使用哪种 SSL 协议。SSLv3 是默认 的 SSL 协议。
mqsichangeproperties BROKER1 -e <EG Name> -o HTTPSConnector -n sslProtocol -v SSLv3 |
明确为 SOAP over HTTP 请求配置端口。
mqsichangeproperties BROKER1 –e <EG Name> -o HTTPSConnector
-n explicitlySetPortNumber -v 7963
|
前面创建的密钥库文件需要与代理实例建立关联,以便了解其存储库文件。为了避免混淆,不要在服务器上使用多个密钥库文件。
mqsichangeproperties BROKER1 -e <EG Name> -o HTTPSConnector
-n keystoreFile -v /home/brkr/BROKER1.jks
|
您应该在代理上配置密钥库类型,因为代理还支持其他几种密钥库类型。关于这些类型的信息已超出了本书的讨论范围,本文使用了一个 Java 密钥库 (JKS)。
mqsichangeproperties BROKER1 -e <EG Name> -o HTTPSConnector -n keystoreType -v JKS |
建立密钥库密码与代理的关联,这样就可以将它保存在其存储库中,将它用于身份验证之目的,在查询新的请求时会要求进行身份验证:
mqsichangeproperties BROKER1 -e <EG Name> -o HTTPSConnector -n keystorePass -v <password> |
在 WebSphere Message Broker 中启动一个执行组时,会创建一个 JVM,该 JVM 主要由 IBM 原始节点使用,用来发挥 Java 功能。可以通过将参数传递给 DataFlowEngine JVM 来直接配置 JVM,也可以通过代理配置它。在以任何方式使用代理 JVM 时,DataFlowEngine 内存 会继续扩大,并且可能导致资源问题。可以使用以下几个命令设置您的最小和最大 JVM 堆大小:
mqsichangeproperties BROKER1 -e <EG Name> -o ComIbmJVMManager -n keystoreFile
-v /home/brkr/BROKER1.jks
mqsichangeproperties BROKER1 -e <EG Name> -o ComIbmJVMManager -n keystoreType
-v JKS
mqsichangeproperties BROKER1 -e <EG Name> -o ComIbmJVMManager -n keystorePass
-v brokerKeystore::password
mqsichangeproperties BROKER1 -e <EG Name> -o ComIbmJVMManager -n truststoreFile
-v /home/brkr/BROKER1.jks
|
在此命令中,密钥库文件的类型与 ComIbmJVMManager 对象有关联。
mqsichangeproperties BROKER1 -e <EG Name> -o ComIbmJVMManager -n truststoreType -v JKS |
在查询新请求时,会将密钥库密码与代理的 ComIbmJVMManager 对象相关联,这样就可以将它保存在其存储库中,将它用于身份验证之目的:
mqsichangeproperties BROKER1 -e <EG Name> -o ComIbmJVMManager -n truststorePass
-v brokerTruststore::password
|
在此场景中,CA 提供的已签名证书是不正确的。这种情况解决起来有点棘手,但您可以使用上述命令密切关注其输出。
我们更新了代理证书,并能够在同一台服务器上显示证书的细节信息(带有正确的开始日期和终结日期)。为了再次确认这些信息,我们
会尝试在相应的 Message Broker 服务器上使用 URL https://<hostname of UNIX server:><port>,该 URL 正确显示了带有开始日期和终结日期的更新后的证书。但应用程序无法连接到 Message Broker 并收到证书验证错误。通常,会导入 .der 格式的证书作为证书更新的一部分。我们确定 .der 证书并没有包含链式证书,因为 CA 团队没有提供它们。这使我们开始思考链式证书是否被遗漏了?我们显示了完整的证书列表并比较了环境。那些链式证书是什么呢?它们是识别 CA 的证书。
/var/mqsi/ssl/BROKER1>keytool -list -v -alias broker1 -keystore BROKER1.jks
-storepass <password>
Alias name: broker1
Creation date: Dec 9, 2011
Entry type: keyEntry
Certificate chain length: 3
Certificate[1]:
Owner: CN=servername, OU=ZONE1, O=IBM, L=CN, C=IN
Issuer: CN=IBM_PKI_SubCA2, O=IBM, C=IN
Serial number: 3142a
Valid from: 11/7/11 8:43 AM until: 12/11/12 8:43 AM
Certificate fingerprints:
MD5: 93:7F:6D:07:72:AA:47:0D:0A:BB:1C:9D:1B:3F:68:F8
SHA1: D2:7E:1B:99:46:DB:88:24:4E:AE:35:B1:DF:D6:40:58:20:91:D1:18
Certificate[2]:
Owner: CN=IBM_PKI_SubCA2, O=IBM, C=IN
Issuer: CN=IBM_PKI_CA, O=IBM, C=IN
Serial number: 2
Valid from: 5/14/03 4:04 AM until: 5/14/13 4:04 AM
Certificate fingerprints:
MD5: BE:F7:0A:42:D7:C7:A8:40:B6:31:B1:93:E1:1B:6D:D6
SHA1: 77:E1:05:21:74:3E:65:6A:11:DB:3D:BD:D2:34:99:7F:45:93:F8:5A
Certificate[3]:
Owner: CN=IBM_PKI_CA, O=IBM, C=IN
Issuer: CN=IBM_PKI_CA, O=IBM, C=IN
Serial number: 0
Valid from: 5/31/02 3:34 AM until: 5/31/32 3:34 AM
Certificate fingerprints:
MD5: 8E:E6:5E:54:97:0E:DA:E9:12:65:7C:E1:C3:8A:5B:C6
SHA1: B4:C2:C5:17:91:3D:2F:32:10:AB:2D:5A:99:5A:08:5C:10:4F:3E:2B
|
本文描述了在 WebSphere Message Broker V6 和 V7 中实现 SSL 通信的标准机制。还描述了客户环境中由于 CA 提供的证书不正确而导致的常见问题。
作者非常感谢以下人员提供的包括意见和反馈:
- Hermann Huebler:解决方案专家和 SME, Application Integration and Middleware, IBM India
- Muthukumar Manoharan:支持专家,WebSphere MQ and WebSphere Message Broker Support, IBM India
- Vivek Grover:团队领导,WebSphere Message Broker and WebSphere Business Events Level-2 Support, IBM US
学习
- WebSphere Message Broker 资源
- WebSphere Message Broker V8 信息中心
一个针对所有 WebSphere Message Broker V8 文档的网络门户,其中包含关于安装、配置和使用 WebSphere Message Broker 环境的一些概念、任务和参考信息。 - WebSphere Message Broker 开发人员资源页面
一些技术资源,可帮助您使用 WebSphere Message Broker 实现连接性、通用数据转换以及不同服务、应用程序和平台的企业级集成,从而增强您的 SOA。 - WebSphere Message Broker 产品页面
产品说明、产品新闻、培训信息和支持信息等。 - 下载 WebSphere Message Broker 的免费试用版
WebSphere Message Broker 是一个为实现异构环境中的通用连接性和转换而构建的 ESB。它在整个扩展企业范围内外为人们、应用程序和设备实时提供了关于业务事件的信息和数据。 - WebSphere Message Broker 文档库
WebSphere Message Broker 规范和手册。 - WebSphere Message Broker 论坛
您可以在此处获得技术问题的答案,并与其他 WebSphere Message Broker 用户分享您的专业经验。 - WebSphere Message Broker 支持页面
一个支持问题及其解决方案的可搜索数据库,包含下载、修复程序和问题跟踪。 - WebSphere Message Broker V8 开发培训
在此 IBM 培训教程中,您将了解 WebSphere Message Broker 开发和运行时环境的组件。该教程还将介绍消息流问题确定,向您展示如何构造使用 ESQL、Java 和 PHP 来转换消息的消息流。 - Youtube 教程:在一个 WebSphere Message Broker V8 消息流中集成 Microsoft .NET 代码
这个 5 分钟的 youtube 教程将向您展示使用 WebSphere Message Broker V8 构建包含 Microsoft .NET 代码的消息流是多么简单。Microsoft Visual Studio 用于构建用 C# 编写的 .NET 代码,然后使用 Message Broker 和一个 HTTP RESTful 界面将它集成到消息流中。
- WebSphere Message Broker V8 信息中心
- WebSphere 资源
- developerWorks WebSphere 开发人员资源
面向使用 WebSphere 产品的开发人员的技术信息和资源。developerWorks WebSphere 提供产品下载、how-to 信息、支持资源以及一个免费技术库,该技术库包含 2000 多篇技术文章、教程、最佳实践和 IBM 红皮书和在线产品手册。 - developerWorks WebSphere 应用程序集成开发人员资源
帮助您构建 WebSphere 应用程序集成和业务集成解决方案的 how-to 文章、下载、教程、培训、产品信息和其他资源。 - developerWorks WebSphere 业务流程管理开发人员资源
帮助您建模、组装、部署和管理业务流程的 WebSphere BPM how-to 文章、下载、教程、培训、产品信息和其他资源。 - 最受欢迎的 Sphere 试用版下载
免费下载关键 WebSphere 产品试用版。 - WebSphere 论坛
这是一个特定于产品的论坛,您可以在此处获得技术问题的答案,并与其他 WebSphere 用户分享您的专业经验。 - WebSphere 按需演示
下载、观看和学习 WebSphere 产品和 WebSphere 相关技术的用途,帮助您的企业响应快速变化且日益复杂的业务环境。 - developerWorks WebSphere 每周时事通讯
developerWorks 新闻简讯提供了您感兴趣的主题的最新文章和信息。除 WebSphere 之外,还可以选择 Java、Linux、Open source、Rational、SOA、Web 服务和其他主题。立即订阅并设计您的定制邮件。 - 来自 IBM Press 的 WebSphere 相关图书
通过 Barnes & Noble 实现便捷的在线订购。 - WebSphere 相关活动
世界各地针对 WebSphere 开发人员的会议、商贸展览、网络广播和其他活动。
- developerWorks WebSphere 开发人员资源
- developerWorks 资源
- IBM 软件产品的试用版下载
免费下载精选的 IBM® DB2®、Lotus®、Rational®、Tivoli® 和 WebSphere® 产品的试用版。 - developerWorks 博客
加入 developerWorks 用户和作者、IBM 编辑和开发人员的谈话。 - developerWorks 云计算资源
访问 IBM 或 Amazon EC2 云,在沙盒中测试 IBM 云计算产品,观看云计算产品和服务的演示,阅读有关云计算的文章并访问其他云资源。 - developerWorks 技术加油站
IBM 专家的免费技术讲座会议可以帮助您加快学习速度,帮助您在最困难的软件项目中获得成功。会议包括时长 1 小时的网络广播,以及在世界各个城市举办的半天和全天的实时会议。 - developerWorks 播客
收听针对软件创新者的有趣访谈和讨论。 - IBM Education Assistant
一个多媒体培训模块集合,帮助您更好地了解 IBM 软件产品,更有效地使用它们满足您的业务需求。
- IBM 软件产品的试用版下载
获得产品和技术
- IBM developerWorks 工具包:下载关键 WebSphere 最新的产品工具包。
讨论
- 加入 developerWorks 中文社区,developerWorks 社区是一个面向全球 IT 专业人员,可以提供博客、书签、wiki、群组、联系、共享和协作等社区功能的专业社交网络社区。
- 加入 IBM 软件下载与技术交流群组,参与在线交流。
Gautam K. Bhat 于 2007 年加入 IBM,是一名 IBM 认证的 IT 专家和消息传递、集成和中间件方面的全球问题专家。他在印度的 Middleware Center of Excellence (CoE) for IBM Global Technology Services 负责培训和辅导,以实现策略外包。Gautam 还是一名面向美洲客户的全球集成架构师。他荣获的专业证书包括 Sun Certified Business Component Developer、Sun Certified Java Programmer、Sun Certified Web Component Developer、Service Oriented Architecture Associate WebSphere Message Broker Administrator 和 WebSphere MQ Administrator。