Sun Java System Message Queue 3.7 UR1 管理指南

步驟 5. 配置 HTTPS 連線

用戶端應用程式必須使用已適當配置的連線工廠受管理物件,以建立與代理程式的 HTTPS 連線。

然而,用戶端必須能夠存取 Java Secure Socket Extension (JSSE) 所提供的 SSL 程式庫,而且必須具有根憑證。SSL 程式庫隨附於 JDK 1.4。如果您使用較舊的 JDK 版本,請參閱配置 JSSE,否則請繼續執行匯入超級使用者憑證

解決這些問題後,就可以繼續配置 HTTPS 連線。

配置 JSSE

Procedure配置 JSSE

  1. 將 JSSE .jar 檔案複製到 JRE_HOME/lib/ext 目錄。


    jsse.jar, jnet.jar, jcert.jar
  2. 以靜態方式增加 JSSE 安全性提供者:將


    security.provider.n=com.sun.net.ssl.internal.ssl.Provider

    增加至 JRE_HOME/lib/security/java.security 檔案 (其中 n 為安全性提供者套裝軟體的下一個可用優先權號碼)。

  3. 如果未使用 JDK1.4,則您需要使用可啟動用戶端應用程式之指令的 -D 選項,來設定以下 JSSE 特性:


    java.protocol.handler.pkgs=com.sun.net.ssl.internal.www.protocol

匯入超級使用者憑證

如果 CA (簽署 Web 伺服器憑證的單位) 的根憑證依預設不在信任資料庫中,或者您使用的是專用 Web 伺服器/應用程式伺服器憑證,則必須將此憑證增加至信任資料庫。如果是此情況,請遵循以下說明,否則請移至配置連線工廠

假設此憑證儲存在 certFile 中,且 trustStoreFile 為您的金鑰庫,請執行以下指令:

JRE_HOME/bin/keytool -import -trustcacerts
 -alias aliasForCertificate -file certFile

-keystore trustStoreFile

對以下問題回答 YESTrust this certificate?

您還需要使用可啟動用戶端應用程式之指令的 -D 選項,來指定以下 JSSE 特性:

javax.net.ssl.trustStore=trustStoreFile
javax.net.ssl.trustStorePassword=trustStorePasswd

配置連線工廠

若要啟用 HTTPS 支援,您必須將連線工廠的 imqAddressList 屬性設定為 HTTPS 通道 Servlet URL。HTTPS 通道 Servlet URL 的一般語法如下:

https://hostName:portNumber

/contextRoot/tunnel

其中 hostName:portNumber 為託管 HTTPS 通道 Servlet 之 Web 伺服器名稱和連接埠;contextRoot 為在 Web 伺服器上部署通道 Servlet 時的路徑設定。

如需連線工廠屬性的一般資訊與 imqAddressList 屬性的特定資訊,請參閱「Message Queue Developer's Guide for Java Clients」。

您可以透過以下方法之一設定連線工廠屬性:

使用單一 Servlet 存取多重代理程式

若要執行多個代理程式,您無需配置多個 Web 伺服器和 Servlet 實例。您可以讓同時執行的代理程式,共用單一 Web 伺服器和 HTTPS 通道 Servlet 實例。如果多個代理程式實例共用一個通道 Servlet,您必須配置 imqAddressList 連線工廠屬性,配置內容如下:

https://hostName:portNumber

/contextRoot/tunnel?ServerName=
bkrHostName:instanceName

其中 bkrHostName 為代理程式實例主機名稱;instanceName 為用戶端所要存取的特定代理程式實例名稱。

若要檢查您為 bkrhostName instanceName 輸入的字串是否正確,請從瀏覽器存取 Servlet URL,並產生 HTTPS 通道 Servlet 的狀態報告。此報告將列出 Servlet 所存取的所有代理程式:


HTTPS tunnel servlet ready.
Servlet Start Time : Thu May 30 01:08:18 PDT 2002
Accepting secured connections from brokers on port : 7674
Total available brokers = 2
Broker List :
   jpgserv:broker2
   cochin:broker1

使用 HTTP 代理

如果您要使用 HTTP 代理伺服器存取 HTTPS 通道 Servlet:

您可以使用可啟動用戶端應用程式之指令的 -D 選項來設定這些特性。