2015-05-03 96 views
3

我想檢查MQ管理器中所有權限和訪問級別的隊列和通道,並檢查是否存在具有管理訪問權限的客戶機隊列或通道。爲了做到這一點,我使用了./dmpmqaut命令,併成功拋棄了所有對象的權限。但是,這裏有兩個問題:檢查Linux中的MQ權限和MCAUSER

1-我的Q-manager中有很多對象,其實體爲mqm,它們的權限設置爲:almqi dlt chg dsp clr。這是正常的嗎?我的意思是我所知道的是客戶不應該有mqm實體名稱,並且權限在這裏不受限制。我對嗎?

2-我想檢查所有通道和隊列MCAUSER就像我在Windows上的MQ-Explorer中可以看到的一樣。有什麼方法可以在Linux機器上檢查它嗎?

回答

4

無論何時創建MQ對象,創建該對象的用戶(或非Windows分佈式平臺中的該用戶的主組)都被授予該對象的所有權利。實際上,這通常意味着當您執行身份驗證轉儲時,mqm組在每個對象上都可見。在windows上,除了mqm,這通常是[email protected]

在Linux上,你可以做...
echo "dis chl(*) mcauser | runmqsc [qmgrname]
......在命令行看到MCAUSER是在渠道是什麼。您還可以使用MQ Explorer來查看它。

所有入站通道的定義的MCAUSER應該是阻止所有訪問的通道。我曾經推薦nobody,但由於這在某些系統上可能是有效的ID,我現在推薦*nobody。請注意,「入站通道」是指類型爲RCVR,RQSTRCLUSRCVRSVRCONN的那些通道。所有「我」的意思是指名爲SYSTEM.AUTO.*SYSTEM.DEF.*和您自己定義的任何頻道。

確保在連接請求通過身份驗證時,退出或CHLAUTH規則將MCAUSER映射到預期值。在7.1以上的任何版本的MQ上都可以使用CHLAUTH規則。該映射確保只有經過身份驗證的用戶或合作伙伴QMgr才能連接。

如果授權(setmqautSET AUTHREC命令)而沒有也限定CHLAUTH規則或設置安全出口限定,效果更糟安全,而不是更好。原因是合法用戶出現對其連接有限制,但惡意用戶將能夠輕鬆欺騙管理用戶標識。

有關此主題的更多信息,請參見http://t-rob./net/links的基本MQ安全硬化幻燈片。

+0

非常感謝您的簡要回答! – A23149577