[AIX、Linux、Windows]

使用線上憑證狀態通訊協定 (OCSP)

IBM® MQ 決定要使用的「線上憑證狀態通訊協定 (OCSP)」回應者,並處理收到的回應。 您可能需要執行一些步驟,才能讓 OCSP 回應端成為有存取權的。

鑑別資訊物件包含在檢查 TLS 憑證是否撤銷時所使用的鑑別資訊。
附註: 此資訊僅適用於 IBM MQ for AIX®, Linux®, and Windows 系統。 下表顯示不同平台的 IBM MQ TLS 鑑別資訊支援:
表 1. IBM MQ TLS 如何在不同平台上支援鑑別資訊
平台 支援
[AIX、Linux、Windows]IBM MQ for AIX, Linux, and Windows IBM MQ TLS 支援使用 OCSP ,或使用 LDAP 伺服器上的 CRL 及 ARL ,來檢查已撤銷的憑證, OCSP 是偏好的方法。 IBM MQ classes for Java 無法在用戶端通道定義表檔案中使用 OCSP 資訊。 不過,您可以依照 已撤銷的憑證和 OCSP中的說明來配置 OCSP。
[z/OS]IBM MQ for z/OS® IBM MQ TLS 僅支援使用 LDAP 伺服器上的 CRL 及 ARL 來檢查已撤銷的憑證。 IBM MQ for z/OS 系統無法使用 OCSP。
[IBM i]IBM MQ for IBM i IBM MQ TLS 僅支援使用 LDAP 伺服器上的 CRL 及 ARL 來檢查已撤銷的憑證。 IBM MQ for IBM i 系統無法使用 OCSP。
若要使用 OCSP 檢查數位憑證的撤銷狀態,IBM MQ 會以兩種方式之一來決定要聯絡的 OCSP 回應者:
  • 使用要檢查之憑證中的 AuthorityInfoAccess (AIA) 憑證延伸。
  • 使用鑑別資訊物件中指定的 URL,或用戶端應用程式指定的 URL。

鑑別資訊物件或用戶端應用程式指定的 URL,其優先權高於 AIA 憑證延伸中的 URL。

OCSP 回應端的 URL 可能會位於防火牆後面;倘若如此,請重新配置防火牆,以便可以存取 OCSP 回應端,或設定 OCSP Proxy 伺服器。 在 SSL 段落中使用 SSLHTTPProxyName 變數,指定 Proxy 伺服器的名稱。 在用戶端系統上,您也可以使用環境變數 MQSSLPROXY 來指定 Proxy 伺服器的名稱。

如果您不在意 TLS 憑證是否已撤銷,可能是因為您是在測試環境中執行,則您可以在 SSL 段落中,將 OCSPCheckExtensions 設為 NO。 如果設定此變數,則會忽略任何 AIA 憑證延伸。 但是在正式作業環境中,無法接受此解決方案,在此種作業環境中,您可能並不希望讓提出撤銷憑證的使用者進行存取。

呼叫存取 OCSP 回應端,會傳回下列三種結果之一:
良好
憑證有效。
已撤銷
憑證已撤銷。
不明
產生此結果的原因,可能是下列三種之一:
  • IBM MQ 無法存取 OCSP 回應者。
  • OCSP 回應者已傳送回應,但 IBM MQ 無法驗證回應的數位簽章。
  • OCSP 回應端已傳送回應,指出沒有憑證的撤銷資料。

依預設,IBM MQ 會在收到不明 OCSP 回應的情況下拒絕連線,並會發出錯誤訊息。 您可以設定 OCSPAuthentication 屬性來變更這個行為。 這會保留在 AIX and Linux 系統之 qm.ini 檔案的 SSL 段落、WebSphere® 登錄或用戶端配置檔的 SSL 段落中。 可使用 IBM MQ Explorer 在適當的平台上對它進行設定。

OCSP 結果不明

如果 IBM MQ 收到不明的 OCSP 結果,則其行為視 OCSPAuthentication 屬性的設定而定。 對於佇列管理程式,此屬性保留在 AIX and Linux 系統之 qm.ini 檔案的 SSL 段落或 Windows 登錄中,並且可以使用 IBM MQ Explorer 進行設定。 若為用戶端,這個屬性存放在用戶端配置檔的 SSL 段落中。

如果收到不明的結果,且 OCSPAuthentication 設為 REQUIRED(預設值),則 IBM MQ 會拒絕連線並發出類型為 AMQ9716 的錯誤訊息。 如果已啟用佇列管理程式 SSL 事件訊息,則會產生類型 MQRC_CHANNEL_SSL_ERROR 且 ReasonQualifier 設為 MQRQ_SSL_HANDSHAKE_ERROR 的 SSL 事件訊息。

如果收到不明的結果,且 OCSPAuthentication 設為 OPTIONAL,則 IBM MQ 容許 SSL 通道啟動,且不會產生警告或 SSL 事件訊息。

如果收到不明的結果,且 OCSPAuthentication 設為 WARN,則會啟動 SSL 通道,但 IBM MQ 會在錯誤日誌中發出類型為 AMQ9717 的警告訊息。 如果已啟用佇列管理程式 SSL 事件訊息,則會產生類型 MQRC_CHANNEL_SSL_WARNING 且 ReasonQualifier 設為 MQRQ_SSL_UNKNOWN_REVOCATION 的 SSL 事件訊息。

OCSP 回應的數位簽章

OCSP 回應端可以利用下列三種方法來簽署其回應。 您的回應端會通知您要使用哪一種方法。
  • OCSP 回應可以使用 CA 憑證以數位方式進行簽署,該憑證即發出所要檢查之憑證的相同 CA 憑證。 在此情況下,您不需要設定任何其他憑證;您建立 SSL 連線所採取的步驟,即足以驗證 OCSP 回應。
  • OCSP 回應可以使用另一個憑證以數位方式進行簽署,該憑證由發出所要檢查之憑證的相同 CA 進行簽署。 在此情況下,簽署憑證會隨 OCSP 回應一起傳送。 從 OCSP 回應端傳出的憑證,必須將「延伸金鑰使用延伸」設為 id-kp-OCSPSigning,才會信任它有此用途。 因為 OCSP 回應會隨簽署它的憑證一起傳送(且該憑證是由 SSL 連線已經信任的 CA 所簽署),所以不需要任何其他憑證設定。
  • OCSP 回應可以使用另一個憑證以數位方式進行簽署,該憑證與所要檢查之憑證沒有直接關聯。 在此情況下,「OCSP 回應」會以 OCSP 回應端本身所發出的憑證進行簽署。 您必須將 OCSP 回應端憑證的副本,新增至執行 OCSP 檢查的用戶端或佇列管理程式之金鑰資料庫。 請參閱 將 CA 憑證 (或自簽憑證的 CA 部分) 新增至金鑰儲存庫 新增 CA 憑證時,預設會將它新增為授信主要憑證,此為這個環境定義的必要設定。 如果未新增此憑證,則 IBM MQ 無法驗證 OCSP 回應上的數位簽章,且 OCSP 檢查會導致 不明 結果,這可能會導致 IBM MQ 關閉通道,視 OCSPAuthentication 的值而定。