2010-12-15 20 views
6

IBM Websphere Application ServerからIBM Websphere MQ Serverに接続しようとしています。MQJMS2013セキュリティ認証が無効です

私は、次のエラーを取得しています:

MQJMS2013: invalid security authentication supplied for MQQueueManager 

私は理解して何が、これはMQマネージャに接続している間で無効なため、セキュリティ証明書である、です。

私はMQ管理者パスワードを提供するさまざまな組み合わせを試みました。

  1. MQ接続ファクトリへのJ2C認証を提供します。
  2. キューにMQ管理者のユーザー名とパスワードを入力します。
  3. 空のユーザー名を入力してください。
  4. 上記の3つの組み合わせ。

ポストの一部で述べたようにまた、私はのQueueConnectionFactoryためなど「クライアント」「をバインド」としてトランスポートタイプを試してみました。

お勧めします。

答えて

1

最後に、組み合わせを適用して2日後に機能しました。

(将来的にも、おそらく自分自身をして)他のを助けるために、以下の問題でした:

私たちは、IBMのWebSphere MQサーバーとIBM WebSphere Application Serverを構成しました。キュー接続ファクトリー、キュー、リスナー・ポートを作成しました。 例外的な例外が繰り返し発生していました。 アプリケーションサーバーを起動すると、サーバーを起動しているユーザーはMQにアクセスできる必要があります。すなわち、ユーザはグループMQMの一部でなければならない。追加するだけで、グループをユーザに追加した後、MQサーバは再起動後に権限をリフレッシュするため、MQサーバを再起動することを忘れないでください。

これが役に立ちます。

+1

バインディングまたはクライアントモード?最高(バインディング・モード)では、WMQを管理し、OSコマンドをmqmユーザーIDとして実行するアプリケーション・サーバーの許可を与えました。これは簡単なアプリケーションでは問題ありませんが、ほとんどのショップが決して行かないDBAの管理者権限をアプリケーションに与えることと同等です。彼らがなぜWMQでそれをするのかは、私にとって謎です。最悪の場合(クライアントバインディング)には、匿名のリモートユーザーに管理者権限を与えたばかりです。基本的にQMgrへのIPルートを持つ*誰でも*管理してOSコマンドを実行できます。それはあなたが意図したものでしたか? http://bit.ly/17oKEc –

+1

を参照してください。ちなみに、私の回答でリンクしているツールのいずれかを使用して、2日ではなく2分でソートしました。だから、他の人を助けるために(そしてあなた自身も将来的に)、これらのツールの1つまたは両方を今すぐインストールして、次回はあなたの車輪を回転させないようにしてください。また、WMQを確保することに関心がある場合は、mqmグループにアプリケーションを張り付けずに低特権のIDとsetmqautコマンドを使用し、すべての受信チャネルを低特権のMCAUSERでロックダウンしてください!あなたはアプリがメッセージを送信できるという意味で "仕事"をしましたが、ほとんど決して正しい答えではありません。 –

+0

+1あなたを見つけました!残念ながら、私はMQサーバーと構成の専門家ではありません。すべてが危機的なサービス業界で働くだけで、私たちは物事を働かせる必要があります。あなたが言及したように、あなたが言及したセキュリティアスペクトを理解するのは一般的に、今の私の環境にとってあまり重要ではありません!再度、感謝します! –

2

1つの問題は、MQJMS2013がQMgrと関係がないことです。

これが本当にWMQ認証例外であるかどうかを判断する方法の1つは、QMgrで認証イベントを有効にしてエラーを再現することです。 WMQ認証の問題の場合、イベントメッセージはSYSTEM.ADMIN.QMGR.EVENTキューに格納されます。これには、ユーザーのID、呼び出しが失敗したオブジェクト、失敗したAPI呼び出し、および呼び出しで使用されたすべてのオプションが含まれます。 SupportPac MO71を使用すると、イベントメッセージがフォーマットされます。 WMQ Explorerを使用している場合は、SupportPac MS0Pをインストールしてイベントメッセージをフォーマットできます。

イベントメッセージが表示されない場合、接続はWMQに達していません!その場合、アカウント、グループ、setmqaut、その他のWMQ固有の設定を行うことは何も役に立ちません。私はenabling tracingを提案します。

バインディングモードでは、のIDは、JVMが実行するIDと一致する必要があります。。クライアントモードで診断するもう1つの方法は、チャネルのMCAUSERを既知の良好な値に設定することです。チャネルのMCAUSERは、アプリサーバーによって渡されたすべてのIDを上書きし、常に低特権のアカウントに設定する必要があります。診断の場合は、TEMPORARILYを 'mqm'に設定し、問題がWMQ認証になるように接続が機能するかどうかを確認します。

+0

この情報は非常に有用です。 SYSTEM.ADMIN.QMGR.EVENTキューにメッセージが見つかりました。しかし、メッセージの詳細は「MQGETが理由コード2080で終​​了しました。」です。メッセージを削除してもう一度やり直そうとしています! –

+1

2080はMQRC_TRUNCATED_MSG_FAILEDです。つまり、おそらくamqsgetを使用している可能性があります。上記のツールを使用すると、メッセージ全体が取得され、人間が判読可能なテキスト形式になります(イベントメッセージはPCFです)。クイックダーティな方法でメッセージを取得したい場合は、amqsbcgを使用して16進ダンプを与えてから、Cヘッダーファイルと16進計算器を使用してデコードします。 –

関連する問題