無論何時創建MQ對象,創建該對象的用戶(或非Windows分佈式平臺中的該用戶的主組)都被授予該對象的所有權利。實際上,這通常意味着當您執行身份驗證轉儲時,mqm組在每個對象上都可見。在windows上,除了mqm,這通常是[email protected]
。
在Linux上,你可以做...
echo "dis chl(*) mcauser | runmqsc [qmgrname]
......在命令行看到MCAUSER是在渠道是什麼。您還可以使用MQ Explorer來查看它。
所有入站通道的定義的MCAUSER應該是阻止所有訪問的通道。我曾經推薦nobody
,但由於這在某些系統上可能是有效的ID,我現在推薦*nobody
。請注意,「入站通道」是指類型爲RCVR
,RQSTR
,CLUSRCVR
和SVRCONN
的那些通道。所有「我」的意思是指名爲SYSTEM.AUTO.*
,SYSTEM.DEF.*
和您自己定義的任何頻道。
確保在連接請求通過身份驗證時,退出或CHLAUTH
規則將MCAUSER映射到預期值。在7.1以上的任何版本的MQ上都可以使用CHLAUTH
規則。該映射確保只有經過身份驗證的用戶或合作伙伴QMgr才能連接。
如果授權(setmqaut
或SET AUTHREC
命令)而沒有也限定CHLAUTH
規則或設置安全出口限定,效果更糟安全,而不是更好。原因是合法用戶出現對其連接有限制,但惡意用戶將能夠輕鬆欺騙管理用戶標識。
有關此主題的更多信息,請參見http://t-rob./net/links的基本MQ安全硬化幻燈片。
非常感謝您的簡要回答! – A23149577