Websphere MQ 7.5 をインストールし、キューに接続する Java クライアントを作成しました。このタスクを実行するために、チャネルに基づくカスタムのサーバーへの接続チャネルを作成しましたSYSTEM.DEF.SVRCONN
。
まず、管理者権限を持つすべてのユーザーと、すべてのチャネルのすべての許可されたユーザーをブロックするために、次のようなコマンド (runmqsc TEST_MANAGER) を入力しましたSET CHLAUTH(*) TYPE(BLOCKUSER) USERLIST('nobody', *MQADMIN)
。MQ エクスプローラー (TEST_MANAGER -> Channels -> Channel Identification Records) にこの制限が表示されるようになりました。
その後、テスト ユーザー (Java クライアント) にアクセスを提供するために、次のようなコマンドを入力しました。
SET CHLAUTH(TEST_CHANNEL) TYPE(ADDRESSMAP) ADDRESS('*') MCAUSER('TestUser') .
最後に、ユーザー名が TestUser である Spring の UserCredentialsConnectionFactoryAdapter にユーザー名とパスワードのペアを設定しました。
問題は、2035
MQRC_NOT_AUTHORIZED
例外で接続できないことです。「nobody」/*MQADMIN ブロック ルールを削除すると、すべて正常に機能します (TestUser クライアント ルールのルールのみが表示されます)。