2011-04-28 104 views

回答

1

這是一個有趣的問題。在V6及更早版本中,如果WAS配置面板上的用戶ID字段保留爲空白,則WAS將使用該值(NULL或空白)作爲其在連接上呈現給WMQ的ID。當WMQ收到缺少用戶ID的連接請求時,它使用與WMQ頻道關聯的ID進行連接 - 這始終是管理性的,因此始終有效。

自V7起,WMQ已更改爲嘗試更難以找到要使用連接請求發送的用戶標識。對於Java/JMS程序,如果沒有提供其他ID,WMQ客戶端將在連接請求中顯示JVM的ID。就你而言,應用程序服務器現在提供了一個ID,而在它未提供ID之前,所提供的ID未授權給WebSphere MQ。

發生這種情況意味着您的隊列管理器被配置爲接受匿名管理連接。這裏要做的第一件事是鎖定所有未使用的入站通道(名爲SYSTEM。*的RCVR,RQSTR,CLUSRCVR和SVRCONN)。接下來,確保用於管理訪問的任何通道(例如SYSTEM.ADMIN.SVRCONN)使用退出和/或SSL對連接進行身份驗證。如果使用SSL,請確保SSLPEER也用於限制可連接的證書。

最後,一旦管理員訪問被鎖定,取出應該用於WAS的ID,相應地授權它的組,然後將該ID置於通道的MCAUSER屬性中。這將阻止應用程序以管理員身份連接到頻道。如果您想確保沒有人能模仿該應用,請設置SSL和/或退出,這與您爲管理渠道所做的相同。

+0

Thnks - 我會去試試看。 – mqrus 2011-04-28 17:13:36

+0

讓我知道它是怎麼回事。如果這對您有用,請不要忘記投票和/或接受答案。如果沒有,更新並讓我知道你還面臨什麼困難。 – 2011-04-28 17:52:33

+0

這工作,謝謝! mq管理員將mqm放在mcauser中。我還不能投票,但我接受了答案。 – mqrus 2011-04-28 18:20:18

相關問題