方案:MQIPT用於在MQ客戶端和MQ服務器版本8可以MQIPT被配置爲驗證由MQ客戶端設置的憑證用於特定連接
之間是否有可能以驗證與一起發送的證書MQIPT的通道連接。我檢查了文檔,似乎無法完成,除非爲它編寫了某種安全退出。
只是想得到這個意見,至於如何儘可能實現。
謝謝。
方案:MQIPT用於在MQ客戶端和MQ服務器版本8可以MQIPT被配置爲驗證由MQ客戶端設置的憑證用於特定連接
之間是否有可能以驗證與一起發送的證書MQIPT的通道連接。我檢查了文檔,似乎無法完成,除非爲它編寫了某種安全退出。
只是想得到這個意見,至於如何儘可能實現。
謝謝。
MQIPT com.ibm.mq.ipt.exit.SecurityExit
和com.ibm.mq.ipt.exit.CertificateExit
類不公開用戶通道的用戶名和密碼信息。以下是IBM關於這兩類出口的文檔。
公共SecurityExitResponse驗證(IPTTrace)
的以下屬性:
- 監聽端口
The com.ibm.mq.ipt.exit.SecurityExit class在帶有以下信息的IBM 9.0知識中心記錄
- 目的地
- desti國家端口
- 超時
- 客戶端IP地址
- 客戶端端口地址
- 頻道名稱
- 隊列管理器名稱
validate方法將由MQIPT當它接收一個 連接請求被稱爲驗證。如果啓用SSLProxyMode屬性 ,則通道名稱和隊列管理器 名稱將不可用,因爲此功能僅用於隧道SSL/TLS數據,因此通常從初始數據流獲取的數據將爲 不可讀。
The com.ibm.mq.ipt.exit.CertificateExit class記錄在IBM v9中。0知識中心與以下信息:
用於獲得屬性支持的方法:
公衆詮釋getListenerPort()檢索路線偵聽器端口 - 由ListenerPort 屬性所定義
public String getDestination()
檢索t他的目的地地址 - 由目的地 財產
公衆詮釋getDestinationPort()
檢索目的地監聽端口地址定義 - 由 DestinationPort財產
公共字符串getClientIPAddress定義()
檢索發出連接請求的客戶端的IP地址
個公衆詮釋getClientPortAddress()
檢索使連接 請求
公共布爾用於確定如果所述退出是被isSSLClient()
由客戶機使用的端口地址稱爲SSL/TLS客戶端或 SSL/TLS服務器。如果返回true,則退出位於連接的客戶端端 ,驗證從 服務器獲得的證書。如果返回false,則退出位於 連接的服務器端,驗證客戶端發送的證書。對於作爲SSL/TLS服務器和SSL/TLS客戶端的路由,解密和重新加密通信的路由是有效的,其中 爲 。在這種情況下,儘管 有一個退出類,但該類的一些實例將被調用爲客戶端,並且一些作爲服務器調用。你可以使用isSSLClient來 確定給定實例的情況。
公衆詮釋getConnThreadID()
用於檢索工作線程正在處理 連接請求時,它可以是用於調試的ID。
公共字符串getChannelName()
檢索在連接 請求中使用的IBM®MQ頻道名稱。僅當傳入請求未使用時纔可用 SSL/TLS和MQIPT充當SSL/TLS客戶端。
公共字符串getQMName()
檢索在連接 請求中使用的IBM MQ隊列管理器的名稱。僅在客戶端請求未使用時纔可用 SSL/TLS和MQIPT充當SSL/TLS客戶端。
公共布爾getTimedout()
由出口用於確定如果超時已過期。
公共IPTCertificate getCertificate()
檢索需要驗證的SSL/TLS證書。
公共字符串getExitData()
檢索出口數據,由SSLExitData屬性所定義的。
公共字符串getExitName()
檢索出口名稱,由SSLExitName屬性所定義的。
如果您在談論MQIPT上的用戶名密碼驗證,那麼您的評估是正確的,但不能這樣做。您可以讓客戶端使用證書,並使MQIPT與基於證書DN和簽署者DN的證書相匹配。 – JoshMc
謝謝。我正在使用您指定的證書配置。 –
@JoshMc,你知道我們是否可以在MQIPT的安全出口讀取用戶/密碼。我的發現:MQIPT使用SecurityExit/CertificateExit類來啓動驗證過程,僅允許提供少量連接信息,例如頻道名稱,QM名稱,客戶端IP,端口等。但是,可以獲取任何可用於讀取用戶/密碼詳細信息的內容 –