2017-02-21 19 views
2

私はIBM WebSphere MQを初めて利用しています。私はdockerコンテナ内で実行しています。ユーザー 'sampleuser'と 'root'は、コンビニエーター内の 'mqm'グループの一部です。私はMQから 'root'ユーザーとして、また 'sampleuser'としてホストにアクセスできました(私も 'sampleuser'をホストに作成しました)。IBM WebSphere MQへの匿名アクセスを提供

匿名認証を有効にして、クライアントのユーザーIDに関係なく、MQにアクセスできるようにします。私はMCAUSER('sampleuser')が私のためにそれをするだろうが。しかし、それは動作しません。 eclipse IBMエクスプローラーからAMQ4036(許可されていない)エラーが発生します。ご意見をお聞かせください。

ALTER QMGR PSNPRES(SAFE) 
ALTER QMGR PSMODE (ENABLED) 
DEFINE CHANNEL(SYSTEM.ADMIN.SVRCONN) CHLTYPE(SVRCONN) MCAUSER('sampleuser') REPLACE 

アップデート#1 私は特権ユーザを許可するためのコードを更新しました。しかし、まだ失敗します。

ALTER QMGR PSNPRES(SAFE) 
ALTER QMGR PSMODE (ENABLED) 

SET CHLAUTH(*) TYPE(BLOCKUSER) USERLIST('*NOACCESS') 

DEFINE CHANNEL(SYSTEM.ADMIN.SVRCONN) CHLTYPE(SVRCONN) MCAUSER('sampleuser') REPLACE 

ここにログがあります。私は最終的にそれがうまく行わProvide anonymous access to IBM WebSphere MQにJohnMCの答えとrefernceに基づいて

EXPLANATION: 
The user ID 'sampleuser' and its password were checked because the user ID is 
privileged and the queue manager connection authority (CONNAUTH) configuration 
refers to an authentication information (AUTHINFO) object named 
'SYSTEM.DEFAULT.AUTHINFO.IDPWOS' with CHCKCLNT(REQDADM). 

This message accompanies a previous error to clarify the reason for the user ID 
and password check. 
ACTION: 
Refer to the previous error for more information. 

Ensure that a password is specified by the client application and that the 
password is correct for the user ID. The authentication configuration of the 
queue manager connection determines the user ID repository. For example, the 
local operating system user database or an LDAP server. 

To avoid the authentication check, you can either use an unprivileged user ID 
or amend the authentication configuration of the queue manager. You can amend 
the CHCKCLNT attribute in the CHLAUTH record, but you should generally not 
allow unauthenticated remote access. 

更新#2 ..:)

ALTER QMGR PSNPRES(SAFE) 
ALTER QMGR PSMODE (ENABLED) 
ALTER QMGR CHLAUTH(DISABLED) 
SET CHLAUTH(*) TYPE(BLOCKUSER) USERLIST('*NOACCESS') 
DEFINE CHANNEL(SYSTEM.ADMIN.SVRCONN) CHLTYPE(SVRCONN) MCAUSER('sampleuser') REPLACE 
ALTER AUTHINFO(SYSTEM.DEFAULT.AUTHINFO.IDPWOS) AUTHTYPE(IDPWOS) CHCKCLNT(OPTIONAL) 
REFRESH SECURITY TYPE(CONNAUTH) 
+0

キューマネージャのエラーログを調べて、失敗の原因を調べることをお勧めします。 –

+0

キュー・マネージャーのエラー・ログを見ると、「Channel auth blocked you」、「unknown user」、「user does not correct authority」のいずれかで、失敗の理由が正確に示されます。 "キューマネージャーが1つを期待するように設定されていると、ユーザーはパスワードを入力しませんでした"などのようにいくつかの理由があるので、エラーログはすべてあなたを助ける重要なものです。 –

+0

私はログを追加しました。 – Muthukumar

答えて

4

私はあなたがMQのサポートされるバージョンを使用していると仮定します(7.1または後で)。

MQ 7.1以降では、デフォルトで新しいキュー・マネージャーにいくつかのCHLAUTHルールが付属し、MQ管理者権限を持つユーザーからのSVRCONNチャネルへの接続が無効になります。この場合、チャネルのMCAUSERにユーザsampleuserを配置しました。 sampleuserはmqmグループのメンバーであるため、デフォルトでは許可されません。

接続が許可されている場合は、ネットワークを介してMQリスナー・ポートに接続できるユーザーは、キュー・マネージャの管理、キューの定義、キューの削除、権限の追加などを許可します。

Unable to connect to queue manager in WebSphere MQ 7.1」セキュリティを無効にしないでこの作業を行う方法の詳細については、T.Robによってこの回答を見てください。

は、私はまた、「C# MQ Connect get Error 2035 but Java MQ Connect works well


更新#1

ログを使用すると、接続認証エラーを取得していることを示しているいくつかの類似した情報を持つ別のポストを持っています。 MQ 8.0以降では、キュー管理者は、sampleuserがこのカテゴリに属する​​mqmグループの一部であるため、MQ管理ユーザーに有効なパスワードを指定するように構成されています。

キュー・マネージャに接続するときに、ユーザー名とパスワードを送信するようにMQ Explorerを構成できます。

  1. は、右のキュー・マネージャー名
  2. 選択接続の詳細
  3. を選択し[プロパティ]をクリックします...
  4. 選択ユーザーID
  5. あなたは、「パスワードの入力を求める」として、それを残す場合は、オープンたびMQ Explorerをあなたにお聞きします
  6. ユーザーIDフィールドに入力
  7. 「ユーザ識別を有効にする」の横にあるボックスをチェックしますキュー・マネージャーへの接続を試みるときのパスワード。 [保存されたパスワードを使用する]を選択してパスワードを入力するオプションがあります。

私はあなたがこれを行うことはお勧めしませんが、あなたはアウトは、有効なパスワードを提供し、セキュリティを無効にして、誰もが自分のキューマネージャへのMQ管理者として接続することを許可したい場合は、以下でこれを無効にすることができますコマンド。

ALTER AUTHINFO(SYSTEM.DEFAULT.AUTHINFO.IDPWOS) AUTHTYPE(IDPWOS) CHCKCLNT(OPTIONAL) 
REFRESH SECURITY TYPE(CONNAUTH) 
+0

ありがとうございます。私はそれに応じてコードを変更して、無許可の匿名ユーザーを許可しようとしました。しかし、まだ失敗します。何かご意見は。?私はログで質問を更新しました。 – Muthukumar

関連する問題